Network Working Group                                     H. Cruickshank
Request for Comments: 5458                          University of Surrey
Category: Informational                                        P. Pillai
                                                 University of Bradford
                                                          M. Noisternig
                                                 University of Salzburg
                                                             S. Iyengar
                                                                 Logica
                                                             March 2009


                      Security Requirements for
     the Unidirectional Lightweight Encapsulation (ULE) Protocol

Status of This Memo

  This memo provides information for the Internet community.  It does
  not specify an Internet standard of any kind.  Distribution of this
  memo is unlimited.

Copyright Notice

  Copyright (c) 2009 IETF Trust and the persons identified as the
  document authors.  All rights reserved.

  This document is subject to BCP 78 and the IETF Trust's Legal
  Provisions Relating to IETF Documents in effect on the date of
  publication of this document (http://trustee.ietf.org/license-info).
  Please review these documents carefully, as they describe your rights
  and restrictions with respect to this document.

Abstract

  The MPEG-2 standard defined by ISO 13818-1 supports a range of
  transmission methods for a variety of services.  This document
  provides a threat analysis and derives the security requirements when
  using the Transport Stream, TS, to support an Internet network-layer
  using Unidirectional Lightweight Encapsulation (ULE) defined in RFC
  4326.  The document also provides the motivation for link-layer
  security for a ULE Stream.  A ULE Stream may be used to send IPv4
  packets, IPv6 packets, and other Protocol Data Units (PDUs) to an
  arbitrarily large number of Receivers supporting unicast and/or
  multicast transmission.

  The analysis also describes applicability to the Generic Stream
  Encapsulation (GSE) defined by the Digital Video Broadcasting (DVB)
  Project.




Cruickshank, et al.          Informational                      [Page 1]

RFC 5458             Security Requirements for ULE            March 2009


Table of Contents

  1. Introduction ....................................................3
  2. Requirements Notation ...........................................4
  3. Threat Analysis .................................................7
     3.1. System Components ..........................................7
     3.2. Threats ....................................................9
     3.3. Threat Cases ..............................................10
  4. Security Requirements for IP over MPEG-2 TS ....................11
  5. Design Recommendations for ULE Security Extension Header .......14
  6. Compatibility with Generic Stream Encapsulation ................15
  7. Summary ........................................................15
  8. Security Considerations ........................................15
  9. Acknowledgments ................................................16
  10. References ....................................................16
     10.1. Normative References .....................................16
     10.2. Informative References ...................................17
  Appendix A. ULE Security Framework ................................19
     A.1. Building Block ............................................19
     A.2. Interface Definition ......................................22
  Appendix B. Motivation for ULE Link-Layer Security ................23
     B.1. Security at the IP Layer (Using IPsec) ....................23
     B.2. Link Security below the Encapsulation Layer ...............24
     B.3. Link Security as a Part of the Encapsulation Layer ........25



























Cruickshank, et al.          Informational                      [Page 2]

RFC 5458             Security Requirements for ULE            March 2009


1.  Introduction

  The MPEG-2 Transport Stream (TS) has been widely accepted not only
  for providing digital TV services, but also as a subnetwork
  technology for building IP networks.  RFC 4326 [RFC4326] describes
  the Unidirectional Lightweight Encapsulation (ULE) mechanism for the
  transport of IPv4 and IPv6 Datagrams and other network protocol
  packets directly over the ISO MPEG-2 Transport Stream as TS Private
  Data.  ULE specifies a base encapsulation format and supports an
  Extension Header format that allows it to carry additional header
  information to assist in network/Receiver processing.  The
  encapsulation satisfies the design and architectural requirement for
  a lightweight encapsulation defined in RFC 4259 [RFC4259].

  Section 3.1 of RFC 4259 presents several topological scenarios for
  MPEG-2 Transmission Networks.  A summary of these scenarios is
  presented below:

  A. Broadcast TV and Radio Delivery.  This is not within the scope of
     this document.

  B. Broadcast Networks used as an ISP.  This resembles scenario A, but
     includes IP services to access the public Internet.

  C. Unidirectional Star IP Scenario.  This provides a data network
     delivering a common bit stream to typically medium-sized groups of
     Receivers.

  D. Datacast Overlay.  This employs MPEG-2 physical and link layers to
     provide additional connectivity such as unidirectional multicast
     to supplement an existing IP-based Internet service.

  E. Point-to-Point Links.  This connectivity may be provided using a
     pair of transmit and receive interfaces.

  F. Two-Way IP Networks.

  RFC 4259 states that ULE must be robust to errors and security
  threats.  Security must also consider both unidirectional (A, B, C,
  and D) as well as bidirectional (E and F) links for the scenarios
  mentioned above.

  An initial analysis of the security requirements in MPEG-2
  transmission networks is presented in the "Security Considerations"
  section of RFC 4259.  For example, when such networks are not using a
  wireline network, the normal security issues relating to the use of
  wireless links for transport of Internet traffic should be considered
  [RFC3819].



Cruickshank, et al.          Informational                      [Page 3]

RFC 5458             Security Requirements for ULE            March 2009


  The security considerations of RFC 4259 recommend that any new
  encapsulation defined by the IETF should allow Transport Stream
  encryption and should also support optional link-layer authentication
  of the Subnetwork Data Unit (SNDU) payload.  In ULE [RFC4326], it is
  suggested that this may be provided in a flexible way using Extension
  Headers.  This requires the definition of a mandatory Extension
  Header, but has the advantage that it decouples specification of the
  security functions from the encapsulation functions.

  This document extends the above analysis and derives in detail the
  security requirements for ULE in MPEG-2 transmission networks.

  A security framework for deployment of secure ULE networks describing
  the different building blocks and the interface definitions is
  presented in Appendix A.

2.  Requirements Notation

  The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
  "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
  document are to be interpreted as described in RFC 2119 [RFC2119].

  Other terms used in this document are defined below:

  ATSC: Advanced Television Systems Committee.  A framework and a set
  of associated standards for the transmission of video, audio, and
  data using the ISO MPEG-2 Standard.

  DVB: Digital Video Broadcast.  A framework and set of associated
  standards published by the European Telecommunications Standards
  Institute (ETSI) for the transmission of video, audio, and data using
  the ISO MPEG-2 Standard [ISO-MPEG2].

  Encapsulator: A network device that receives Protocol Data Units
  (PDUs) and formats these into Payload Units (known here as SNDUs) for
  output as a stream of TS Packets.

  GCKS: Group Controller and Key Server.  A server that authenticates
  and provides the policy and keying material to members of a secure
  group.

  LLC: Logical Link Control [ISO-8802], [IEEE-802].  A link-layer
  protocol defined by the IEEE 802 standard, which follows the Ethernet
  Medium Access Control Header.

  MAC: Message Authentication Code.





Cruickshank, et al.          Informational                      [Page 4]

RFC 5458             Security Requirements for ULE            March 2009


  MPE: Multiprotocol Encapsulation [ETSI-DAT].  A scheme that
  encapsulates PDUs, forming a Digital Storage Media Command and
  Control (DSM-CC) Table Section.  Each Section is sent in a series of
  TS Packets using a single TS Logical Channel.

  MPEG-2: A set of standards specified by the Motion Picture Experts
  Group (MPEG) and standardised by the International Standards
  Organisation (ISO/IEC 13818-1) [ISO-MPEG2], and ITU-T (in H.222
  [ITU-H222]).

  NPA: Network Point of Attachment.  In this document, refers to a
  6-byte destination address (resembling an IEEE Medium Access Control
  address) within the MPEG-2 transmission network that is used to
  identify individual Receivers or groups of Receivers.

  PDU: Protocol Data Unit.  Examples of a PDU include Ethernet frames,
  IPv4 or IPv6 Datagrams, and other network packets.

  PID: Packet Identifier [ISO-MPEG2].  A 13-bit field carried in the
  header of TS Packets.  This is used to identify the TS Logical
  Channel to which a TS Packet belongs [ISO-MPEG2].  The TS Packets
  forming the parts of a Table Section, Packetised Elementary Stream
  (PES), or other Payload Unit must all carry the same PID value.  The
  all-zeros PID 0x0000 as well as other PID values are reserved for
  specific PSI/SI Tables [ISO-MPEG2].  The all-ones PID value 0x1FFF
  indicates a Null TS Packet introduced to maintain a constant bit rate
  of a TS Multiplex.  There is no required relationship between the PID
  values used for TS Logical Channels transmitted using different TS
  Multiplexes.

  Receiver: Equipment that processes the signal from a TS Multiplex and
  performs filtering and forwarding of encapsulated PDUs to the
  network-layer service (or bridging module when operating at the link
  layer).

  SI Table: Service Information Table [ISO-MPEG2].  In this document,
  this term describes a table that is defined by another standards body
  to convey information about the services carried in a TS Multiplex.
  A Table may consist of one or more Table Sections; however, all
  sections of a particular SI Table must be carried over a single TS
  Logical Channel [ISO-MPEG2].

  SNDU: SubNetwork Data Unit.  An encapsulated PDU sent as an MPEG-2
  Payload Unit.

  TS: Transport Stream [ISO-MPEG2].  A method of transmission at the
  MPEG-2 layer using TS Packets; it represents Layer 2 of the ISO/OSI
  reference model.  See also TS Logical Channel and TS Multiplex.



Cruickshank, et al.          Informational                      [Page 5]

RFC 5458             Security Requirements for ULE            March 2009


  TS Multiplex: In this document, this term defines a set of MPEG-2 TS
  Logical Channels sent over a single lower-layer connection.  This may
  be a common physical link (i.e., a transmission at a specified symbol
  rate, Forward Error Correction (FEC) setting, and transmission
  frequency) or an encapsulation provided by another protocol layer
  (e.g., Ethernet, or RTP over IP).  The same TS Logical Channel may be
  repeated over more than one TS Multiplex (possibly associated with a
  different PID value) [RFC4259]; for example, to redistribute the same
  multicast content to two terrestrial TV transmission cells.

  TS Packet: A fixed-length 188-byte unit of data sent over a TS
  Multiplex [ISO-MPEG2].  Each TS Packet carries a 4-byte header, plus
  optional overhead including an Adaptation Field, encryption details,
  and time stamp information to synchronise a set of related TS Logical
  Channels.

  ULE Stream: An MPEG-2 TS Logical Channel that carries only ULE
  encapsulated PDUs.  ULE Streams may be identified by definition of a
  stream_type in SI/PSI [ISO-MPEG2].
































Cruickshank, et al.          Informational                      [Page 6]

RFC 5458             Security Requirements for ULE            March 2009


3.  Threat Analysis

3.1.  System Components

    +------------+                                  +------------+
    |  IP        |                                  |  IP        |
    |  End Host  |                                  |  End Host  |
    +-----+------+                                  +------------+
          |                                                ^
          +------------>+---------------+                  |
                        +  ULE          |                  |
          +-------------+  Encapsulator |                  |
  SI-Data |             +------+--------+                  |
  +-------+-------+            |MPEG-2 TS Logical Channel  |
  |  MPEG-2       |            |                           |
  |  SI Tables    |            |                           |
  +-------+-------+   ->+------+--------+                  |
          |          -->|  MPEG-2       |                . . .
          +------------>+  Multiplexer  |                  |
  MPEG-2 TS             +------+--------+                  |
  Logical Channel              |MPEG-2 TS Mux              |
                               |                           |
             Other    ->+------+--------+                  |
             MPEG-2  -->+  MPEG-2       |                  |
             TS     --->+  Multiplexer  |                  |
                   ---->+------+--------+                  |
                               |MPEG-2 TS Mux              |
                               |                           |
                        +------+--------+           +------+-----+
                        |Physical Layer |           |  MPEG-2    |
                        |Modulator      +---------->+  Receiver  |
                        +---------------+  MPEG-2   +------------+
                                           TS Mux

    Figure 1: An example configuration for a unidirectional service
         for IP transport over MPEG-2 (adapted from [RFC4259])

  As shown in Figure 1 above (from Section 3.3 of [RFC4259]), there are
  several entities within the MPEG-2 transmission network architecture.
  These include:

  o ULE Encapsulation Gateways (the ULE Encapsulator)

  o SI-Table signalling generator (input to the multiplexer)

  o Receivers (the endpoints for ULE Streams)

  o TS multiplexers (including re-multiplexers)



Cruickshank, et al.          Informational                      [Page 7]

RFC 5458             Security Requirements for ULE            March 2009


  o Modulators

  The TS Packets are carried to the Receiver over a physical layer that
  usually includes Forward Error Correction (FEC) coding that
  interleaves the bytes of several consecutive, but unrelated, TS
  Packets.  FEC-coding and synchronisation processing makes injection
  of single TS Packets very difficult.  Replacement of a sequence of
  packets is also difficult, but possible (see Section 3.2).

  A Receiver in an MPEG-2 TS transmission network needs to identify a
  TS Logical Channel (or MPEG-2 Elementary Stream) to reassemble the
  fragments of PDUs sent by an L2 source [RFC4259].  In an MPEG-2 TS,
  this association is made via the Packet Identifier, PID [ISO-MPEG2].
  At the sender, each source associates a locally unique set of PID
  values with each stream it originates.  However, there is no required
  relationship between the PID value used at the sender and that
  received at the Receiver.  Network devices may re-number the PID
  values associated with one or more TS Logical Channels (e.g., ULE
  Streams) to prevent clashes at a multiplexer between input streams
  with the same PID carried on different input multiplexes (updating
  entries in the PMT [ISO-MPEG2], and other SI tables that reference
  the PID value).  A device may also modify and/or insert new SI data
  into the control plane (also sent as TS Packets identified by their
  PID value).  However, there is only one valid source of data for each
  MPEG-2 Elementary Stream, bound to a PID value.  (This observation
  could simplify the requirement for authentication of the source of a
  ULE Stream.)

  In an MPEG-2 network, a set of signalling messages [RFC4947] may need
  to be broadcast (e.g., by an Encapsulation Gateway or other device)
  to form the L2 control plane.  Examples of signalling messages
  include the Program Association Table (PAT), Program Map Table (PMT),
  and Network Information Table (NIT).  In existing MPEG-2 transmission
  networks, these messages are broadcast in the clear (no encryption or
  integrity checks).  The integrity as well as authenticity of these
  messages is important for correct working of the ULE network, i.e.,
  supporting its security objectives in the area of availability, in
  addition to confidentiality and integrity.  One method recently
  proposed [RFC5163] encapsulates these messages using ULE.  In such
  cases all the security requirements of this document apply in
  securing these signalling messages.

  ULE Stream security only concerns the security between the ULE
  Encapsulation Gateway (ULE Encapsulator) and the Receiver.  In many
  deployment scenarios the user of a ULE Stream has to secure
  communications beyond the link since other network links are utilised
  in addition to the ULE link.  Therefore, if authentication of the
  endpoints, i.e., the IP Sources, is required, or users are concerned



Cruickshank, et al.          Informational                      [Page 8]

RFC 5458             Security Requirements for ULE            March 2009


  about loss of confidentiality, integrity, or authenticity of their
  communication data, they will have to employ end-to-end network
  security mechanisms, e.g., IPsec or Transport Layer Security (TLS).
  Governmental users may be forced by regulations to employ specific
  approved implementations of those mechanisms.  Hence, for such cases,
  the requirements for confidentiality and integrity of the user data
  will be met by the end-to-end security mechanism and the ULE security
  measures would focus on providing traffic flow confidentiality either
  for user data that has already been encrypted or for users who choose
  not to implement end-to-end security mechanisms.

  ULE links may also be used for communications where the two IP
  endpoints are not under central control (e.g., when browsing a public
  web site).  In these cases, it may be impossible to enforce any end-
  to-end security mechanisms.  Yet, a common objective is that users
  may make the same security assumptions as for wired links [RFC3819].
  ULE security could achieve this by protecting the vulnerable (in
  terms of passive attacks) ULE Stream.

  In contrast to the above, a ULE Stream can be used to link networks
  such as branch offices to a central office.  ULE link-layer security
  could be the sole provider of confidentiality and integrity.  In this
  scenario, users requiring high assurance of security (e.g.,
  government use) will need to employ approved cryptographic equipment
  (e.g., at the network layer).  An implementation of ULE Link Security
  equipment could also be certified for use by specific user
  communities.

3.2.  Threats

  The simplest type of network threat is a passive threat.  This
  includes eavesdropping or monitoring of transmissions, with a goal to
  obtain information that is being transmitted.  In broadcast networks
  (especially those utilising widely available low-cost physical layer
  interfaces, such as DVB), the passive threats are the major threats.
  One example is an intruder monitoring the MPEG-2 transmission
  broadcast and then extracting the data carried within the link.
  Another example is an intruder trying to determine the identity of
  the communicating parties and the volume of their traffic by sniffing
  (L2) addresses.  This is a well-known issue in the security field;
  however, it is more of a problem in the case of broadcast networks
  such as MPEG-2 transmission networks because of the easy availability
  of Receiver hardware and the wide geographical span of the networks.








Cruickshank, et al.          Informational                      [Page 9]

RFC 5458             Security Requirements for ULE            March 2009


  Active threats (or attacks) are, in general, more difficult to
  implement successfully than passive threats, and usually require more
  sophisticated resources and may require access to the transmitter.
  Within the context of MPEG-2 transmission networks, examples of
  active attacks are:

  o Masquerading: An entity pretends to be a different entity.  This
    includes masquerading other users and subnetwork control plane
    messages.

  o Modification of messages in an unauthorised manner.

  o Replay attacks: When an intruder sends some old (authentic)
    messages to the Receiver.  In the case of a broadcast link, access
    to previous broadcast data is easy.

  o Denial-of-Service (DoS) attacks: When an entity fails to perform
    its proper function or acts in a way that prevents other entities
    from performing their proper functions.

  The active threats mentioned above are major security concerns for
  the Internet community [BELLOVIN].  Masquerading and modification of
  IP packets are comparatively easy in an Internet environment, whereas
  such attacks are in fact much harder for MPEG-2 broadcast links.
  This could, for instance, motivate the mandatory use of sequence
  numbers in IPsec, but not for synchronous links.  This is further
  reflected in the security requirements for Case 2 and 3 in Section 4
  below.

  As explained in Section 3.1, the PID associated with an Elementary
  Stream can be modified (e.g., in some systems by reception of an
  updated SI table, or in other systems until the next
  announcement/discovery data is received).  An attacker that is able
  to modify the content of the received multiplex (e.g., replay data
  and/or control information) could inject data locally into the
  received stream with an arbitrary PID value.

3.3.  Threat Cases

  Analysing the topological scenarios for MPEG-2 Transmission Networks
  in Section 1, the security threats can be abstracted into three
  cases:

  o Case 1: Monitoring (passive threat).  Here the intruder monitors
    the ULE broadcasts to gain information about the ULE data and/or
    tracking the communicating parties identities (by monitoring the
    destination NPA address).  In this scenario, measures must be taken
    to protect the ULE payload data and the identity of ULE Receivers.



Cruickshank, et al.          Informational                     [Page 10]

RFC 5458             Security Requirements for ULE            March 2009


  o Case 2: Locally conducting active attacks on the MPEG-TS multiplex.
    Here an intruder is assumed to be sufficiently sophisticated to
    override the original transmission from the ULE Encapsulation
    Gateway and deliver a modified version of the MPEG-TS transmission
    to a single ULE Receiver or a small group of Receivers (e.g., in a
    single company site).  The MPEG-2 transmission network operator
    might not be aware of such attacks.  Measures must be taken to
    ensure ULE data integrity and authenticity and preventing replay of
    old messages.

  o Case 3: Globally conducting active attacks on the MPEG-TS
    multiplex.  This assumes a sophisticated intruder able to override
    the whole MPEG-2 transmission multiplex.  The requirements are
    similar to case 2.  The MPEG-2 transmission network operator can
    usually identify such attacks and provide corrective action to
    restore the original transmission.

  For both Cases 2 and 3, there can be two sub-cases:

  o Insider attacks, i.e., active attacks from adversaries within the
    network with knowledge of the secret material.

  o Outsider attacks, i.e., active attacks from adversaries without
    knowledge of the secret material.

  In terms of priority, Case 1 is considered the major threat in MPEG-2
  transmission systems.  Case 2 is considered a lesser threat,
  appropriate to specific network configurations, especially when
  vulnerable to insider attacks.  Case 3 is less likely to be found in
  an operational network, and is expected to be noticed by the MPEG-2
  transmission operator.  It will require restoration of the original
  transmission.  The assumption being that physical access to the
  network components (multiplexers, etc.) and/or connecting physical
  media is secure.  Therefore, Case 3 is not considered further in this
  document.

4.  Security Requirements for IP over MPEG-2 TS

  From the threat analysis in Section 3, the following security
  requirements can be derived:

  Req 1. Data confidentiality MUST be provided by a link that supports
     ULE Stream Security to prevent passive attacks and reduce the risk
     of active threats.







Cruickshank, et al.          Informational                     [Page 11]

RFC 5458             Security Requirements for ULE            March 2009


  Req 2. Protection of L2 NPA address is OPTIONAL.  In broadcast
     networks, this protection can be used to prevent an intruder
     tracking the identity of ULE Receivers and the volume of their
     traffic.

  Req 3. Integrity protection and source authentication of ULE Stream
     data are OPTIONAL.  These can be used to prevent the active
     attacks described in Section 3.2.

  Req 4. Protection against replay attacks is OPTIONAL.  This is used
     to counter the active attacks described in Section 3.2.

  Req 5. L2 ULE Source and Receiver authentication is OPTIONAL.  This
     can be performed during the initial key exchange and
     authentication phase, before the ULE Receiver can join a secure
     session with the ULE Encapsulator (ULE source).  This could be
     either unidirectional or bidirectional authentication based on the
     underlying key management protocol.

  Other general requirements for all threat cases for link-layer
  security are:

  GReq (a) ULE key management functions MUST be decoupled from ULE
     security services such as encryption and source authentication.
     This allows the independent development of both systems.

  GReq (b) Support SHOULD be provided for automated as well as manual
     insertion of keys and policy into the relevant databases.

  GReq (c) Algorithm agility MUST be supported.  It should be possible
     to update the crypto algorithms and hashes when they become
     obsolete without affecting the overall security of the system.

  GReq (d) The security extension header MUST be compatible with other
     ULE extension headers.  The method must allow other extension
     headers (either mandatory or optional) to be used in combination
     with a security extension.  It is RECOMMENDED that these are
     placed after the security extension header.  This permits full
     protection for all headers.  It also avoids situations where the
     SNDU has to be discarded on processing the security extension
     header, while preceding headers have already been evaluated.  One
     exception is the Timestamp extension that SHOULD precede the
     security extension header [RFC5163].  In this case, the timestamp
     will be unaffected by security services such as data
     confidentiality and can be decoded without the need for key
     material.





Cruickshank, et al.          Informational                     [Page 12]

RFC 5458             Security Requirements for ULE            March 2009


  Examining the threat cases in Section 3.3, the security requirements
  for each case can be summarised as:

  o Case 1: Data confidentiality (Req 1) MUST be provided to prevent
    monitoring of the ULE data (such as user information and IP
    addresses).  Protection of NPA addresses (Req 2) MAY be provided to
    prevent tracking ULE Receivers and their communications.

  o Case 2: In addition to Case 1 requirements, new measures MAY be
    implemented such as authentication schemes using Message
    Authentication Codes, digital signatures, or Timed Efficient Stream
    Loss-Tolerant Authentication (TESLA) [RFC4082] in order to provide
    integrity protection and source authentication (Reqs 3 and 5).  In
    addition, sequence numbers (Req 4) MAY be used to protect against
    replay attacks.  In terms of outsider attacks, group authentication
    using Message Authentication Codes can provide the required level
    of security (Reqs 3 and 5).  This will significantly reduce the
    ability of intruders to successfully inject their own data into the
    MPEG-TS stream.  However, scenario 2 threats apply only in specific
    service cases, and therefore authentication and protection against
    replay attacks are OPTIONAL.  Such measures incur additional
    transmission as well as processing overheads.  Moreover, intrusion
    detection systems may also be needed by the MPEG-2 network
    operator.  These should best be coupled with perimeter security
    policy to monitor common DoS attacks.

  o Case 3: As stated in Section 3.3, the requirements here are similar
    to Case 2, but since the MPEG-2 transmission network operator can
    usually identify such attacks, the constraints on intrusion
    detections are less than in Case 2.

  Table 1 below shows the threats that are applicable to ULE networks,
  and the relevant security mechanisms to mitigate those threats.


















Cruickshank, et al.          Informational                     [Page 13]

RFC 5458             Security Requirements for ULE            March 2009


                                  Security Mechanism
                   -----------------------------------------------
                  |Data    |Data   |Source |Data   |Intru  |Iden  |
                  |Privacy |fresh  |Authent|Integ  |sion   |tity  |
                  |        |ness   |ication|rity   |Dete   |Prote |
                  |        |       |       |       |ction  |ction |
    Threat        |        |       |       |       |       |      |
   ---------------|--------|-------|-------|-------|-------|------|
  | Monitoring    |   X    |   -   |   -   |   -   |   -   |  X   |
  |---------------------------------------------------------------|
  | Masquerading  |   X    |   -   |   X   |   X   |   -   |  X   |
  |---------------------------------------------------------------|
  | Replay Attacks|   -    |   X   |   X   |   X   |   X   |  -   |
  |---------------------------------------------------------------|
  | DoS Attacks   |   -    |   X   |   X   |   X   |   X   |  -   |
  |---------------------------------------------------------------|
  | Modification  |   -    |   -   |   X   |   X   |   X   |  -   |
  | of Messages   |        |       |       |       |       |      |
   ---------------------------------------------------------------

        Table 1: Security techniques to mitigate network threats
                            in ULE Networks

5.  Design Recommendations for ULE Security Extension Header

  Table 1 may assist in selecting fields within a ULE Security
  Extension Header framework.

  Security services may be grouped into profiles based on security
  requirements, e.g., a base profile (with payload encryption and
  identity protection) and a second profile that extends this to also
  provide source authentication and protection against replay attacks.
  Although the use of specific security techniques is optional, it is
  RECOMMENDED that receiver devices should implement all the techniques
  in Reqs 2-5 of Section 4 to ensure interoperability of all profiles.

  A modular design of ULE security may allow it to use and benefit from
  existing key management protocols, such as the Group Secure
  Association Key Management Protocol (GSAKMP) [RFC4535] and the Group
  Domain of Interpretation (GDOI) [RFC3547] defined by the IETF
  Multicast Security (MSEC) working group.  This does not preclude the
  use of other key management methods in scenarios where this is more
  appropriate.








Cruickshank, et al.          Informational                     [Page 14]

RFC 5458             Security Requirements for ULE            March 2009


  IPsec [RFC4301] and TLS [RFC5246] also provide a proven security
  architecture defining key exchange mechanisms and the ability to use
  a range of cryptographic algorithms.  ULE security can make use of
  these established mechanisms and algorithms.  See Appendix A for more
  details.

6.  Compatibility with Generic Stream Encapsulation

  RFC 5163 [RFC5163] describes three new Extension Headers that may be
  used with Unidirectional Link Encapsulation, ULE, [RFC4326] and the
  Generic Stream Encapsulation (GSE) that has been designed for the
  Generic Mode (also known as the Generic Stream (GS)), offered by
  second-generation DVB physical layers [GSE].

  The security threats and requirements presented in this document are
  applicable to ULE and GSE encapsulations.

7.  Summary

  This document analyses a set of threats and security requirements.
  It defines the requirements for ULE security and states the
  motivation for link security as a part of the Encapsulation layer.

  ULE security must provide link-layer encryption and ULE Receiver
  identity protection.  The framework must support the optional ability
  to provide for link-layer authentication and integrity assurance, as
  well as protection against insertion of old (duplicated) data into
  the ULE Stream (i.e., replay protection).  This set of features is
  optional to reduce encapsulation overhead when not required.

  ULE Stream security between a ULE Encapsulation Gateway and the
  corresponding Receiver(s) is considered an additional security
  mechanism to IPsec, TLS, and application layer end-to-end security,
  and not as a replacement.  It allows a network operator to provide
  similar functions to that of IPsec, but in addition provides MPEG-2
  transmission link confidentiality and protection of ULE Receiver
  identity (NPA address).

  Appendix A describes a set of building blocks that may be used to
  realise a framework that provides ULE security functions.

8.  Security Considerations

  Link-layer (L2) encryption of IP traffic is commonly used in
  broadcast/radio links to supplement end-to-end security (e.g.,
  provided by TLS [RFC5246], SSH [RFC4251], IPsec [RFC4301]).





Cruickshank, et al.          Informational                     [Page 15]

RFC 5458             Security Requirements for ULE            March 2009


  A common objective is to provide the same level of privacy as wired
  links.  It is recommended that an ISP or user provide end-to-end
  security services based on well-known mechanisms such as IPsec or
  TLS.

  This document provides a threat analysis and derives the security
  requirements to provide link encryption and optional link-layer
  integrity/authentication of the SNDU payload.

  There are some security issues that were raised in RFC 4326 [RFC4326]
  that are not addressed in this document (i.e., are out of scope),
  e.g.:

  o The security issue with un-initialised stuffing bytes.  In ULE,
    these bytes are set to 0xFF (normal practice in MPEG-2).

  o Integrity issues related to the removal of the LAN FCS in a bridged
    networking environment.  The removal of bridged frames exposes the
    traffic to potentially undetected corruption while being processed
    by the Encapsulator and/or Receiver.

  o There is a potential security issue when a Receiver receives a PDU
    with two Length fields.  The Receiver would need to validate the
    actual length and the Length field and ensure that inconsistent
    values are not propagated by the network.

9.  Acknowledgments

  The authors acknowledge the help and advice from Gorry Fairhurst
  (University of Aberdeen).  The authors also acknowledge contributions
  from Laurence Duquerroy and Stephane Coombes (ESA), and Yim Fun Hu
  (University of Bradford).

10.  References

10.1.  Normative References

  [ISO-MPEG2] "Information technology -- generic coding of moving
              pictures and associated audio information systems, Part
              I", ISO 13818-1, International Standards Organisation
              (ISO), 2000.

  [RFC2119]   Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.







Cruickshank, et al.          Informational                     [Page 16]

RFC 5458             Security Requirements for ULE            March 2009


  [RFC4326]   Fairhurst, G. and B. Collini-Nocker, "Unidirectional
              Lightweight Encapsulation (ULE) for Transmission of IP
              Datagrams over an MPEG-2 Transport Stream (TS)", RFC
              4326, December 2005.

10.2.  Informative References

  [BELLOVIN]  S. Bellovin, "Security Problems in the TCP/IP Protocol
              Suite", Computer Communications Review 2:19, pp. 32-48,
              April 1989.  http://www.cs.columbia.edu/~smb/

  [ETSI-DAT]  EN 301 192, "Digital Video Broadcasting (DVB); DVB
              Specifications for Data Broadcasting", European
              Telecommunications Standards Institute (ETSI).

  [GSE]       TS 102 606, "Digital Video Broadcasting (DVB); Generic
              Stream Encapsulation (GSE) Protocol, "European
              Telecommunication Standards, Institute (ETSI), 2007.

  [IEEE-802]  "Local and metropolitan area networks-Specific
              requirements Part 2: Logical Link Control", IEEE 802.2,
              IEEE Computer Society, (also ISO/IEC 8802-2), 1998.

  [ISO-8802]  ISO/IEC 8802.2, "Logical Link Control", International
              Standards Organisation (ISO), 1998.

  [ITU-H222]  H.222.0, "Information technology, Generic coding of
              moving pictures and associated audio information
              Systems", International Telecommunication Union, (ITU-T),
              1995.

  [RFC3135]   Border, J., Kojo, M., Griner, J., Montenegro, G., and Z.
              Shelby, "Performance Enhancing Proxies Intended to
              Mitigate Link-Related Degradations", RFC 3135, June 2001.

  [RFC3547]   Baugher, M., Weis, B., Hardjono, T., and H. Harney, "The
              Group Domain of Interpretation", RFC 3547, July 2003.

  [RFC3715]   Aboba, B. and W. Dixon, "IPsec-Network Address
              Translation (NAT) Compatibility Requirements", RFC 3715,
              March 2004.

  [RFC3819]   Karn, P., Ed., Bormann, C., Fairhurst, G., Grossman, D.,
              Ludwig, R., Mahdavi, J., Montenegro, G., Touch, J., and
              L. Wood, "Advice for Internet Subnetwork Designers", BCP
              89, RFC 3819, July 2004.





Cruickshank, et al.          Informational                     [Page 17]

RFC 5458             Security Requirements for ULE            March 2009


  [RFC4082]   Perrig, A., Song, D., Canetti, R., Tygar, J., and B.
              Briscoe, "Timed Efficient Stream Loss-Tolerant
              Authentication (TESLA): Multicast Source Authentication
              Transform Introduction", RFC 4082, June 2005.

  [RFC4251]   Ylonen, T. and C. Lonvick, Ed., "The Secure Shell (SSH)
              Protocol Architecture", RFC 4251, January 2006.

  [RFC4259]   Montpetit, M.-J., Fairhurst, G., Clausen, H., Collini-
              Nocker, B., and H. Linder, "A Framework for Transmission
              of IP Datagrams over MPEG-2 Networks", RFC 4259, November
              2005.

  [RFC4301]   Kent, S. and K. Seo, "Security Architecture for the
              Internet Protocol", RFC 4301, December 2005.

  [RFC4535]   Harney, H., Meth, U., Colegrove, A., and G. Gross,
              "GSAKMP: Group Secure Association Key Management
              Protocol", RFC 4535, June 2006.

  [RFC4947]   Fairhurst, G. and M. Montpetit, "Address Resolution
              Mechanisms for IP Datagrams over MPEG-2 Networks", RFC
              4947, July 2007.

  [RFC5163]   Fairhurst, G. and B. Collini-Nocker, "Extension Formats
              for Unidirectional Lightweight Encapsulation (ULE) and
              the Generic Stream Encapsulation (GSE)", RFC 5163, April
              2008.

  [RFC5246]   Dierks, T. and E. Rescorla, "The Transport Layer Security
              (TLS) Protocol Version 1.2", RFC 5246, August 2008.

  [RFC5374]   Weis, B., Gross, G., and D. Ignjatic, "Multicast
              Extensions to the Security Architecture for the Internet
              Protocol", RFC 5374, November 2008.
















Cruickshank, et al.          Informational                     [Page 18]

RFC 5458             Security Requirements for ULE            March 2009


Appendix A.  ULE Security Framework

  This section describes a security framework for the deployment of
  secure ULE networks.

A.1.  Building Blocks

  This ULE Security framework describes the following building blocks
  as shown in Figure 2 below:

  o The Key Management Block

  o The ULE Security Extension Header Block

  o The ULE Databases Block

  Within the Key Management Block, the communication between the Group
  Member entity and the Group Server entity happens in the control
  plane.  The ULE Security Header Block applies security to the ULE
  SNDU and this happens in the ULE data plane.  The ULE Security
  Databases Block acts as the interface between the Key Management
  Block (control plane) and the ULE Security Header Block (ULE data
  plane) as shown in Figure 2.  The Security Databases Block exists in
  both the group member and server sides.  However, it has been omitted
  from Figure 2 just for clarity.


























Cruickshank, et al.          Informational                     [Page 19]

RFC 5458             Security Requirements for ULE            March 2009


                                                             -----
   +------+----------+           +----------------+           / \
   | Key Management  |/---------\| Key Management |            |
   |  Group Member   |\---------/|  Group Server  |            |
   |     Block       |           |     Block      |        Control
   +------+----------+           +----------------+          Plane
          | |                                                  |
          | |                                                  |
          | |                                                 \ /
   ----------- Key management <-> ULE Security databases     -----
          | |
          \ /
   +------+----------+
   |      ULE        |
   |   SAD / SPD     |
   |    Databases    |
   |      Block      |
   +------+-+--------+
          / \
          | |
  ----------- ULE Security databases <-> ULE Security Header ----
          | |                                                 / \
          | |                                                  |
          | |                                                  |
   +------+-+--------+                                    ULE Data
   |   ULE Security  |                                       Plane
   | Extension Header|                                         |
   |     Block       |                                         |
   +-----------------+                                        \ /
                                                             -----

             Figure 2: Secure ULE Framework Building Blocks

A.1.1.  Key Management Block

  A key management framework is required to provide security at the ULE
  level using extension headers.  This key management framework is
  responsible for user authentication, access control, and Security
  Association negotiation (which include the negotiations of the
  security algorithms to be used and the generation of the different
  session keys as well as policy material).  The key management
  framework can be either automated or manual.  Hence, this key
  management client entity (shown as the Key Management Group Member
  Block in Figure 2) will be present in all ULE Receivers as well as at
  the ULE Encapsulators.  The ULE Encapsulator could also be the Key
  Management Group Server Entity (shown as the Key Management Group
  Server Block in Figure 2).




Cruickshank, et al.          Informational                     [Page 20]

RFC 5458             Security Requirements for ULE            March 2009


  This happens when the ULE Encapsulator also acts as the Key
  Management Group Server.  Deployment may use either automated key
  management protocols (e.g., GSAKMP [RFC4535]) or manual insertion of
  keying material.

A.1.2.  ULE Security Databases Block

  There needs to be two databases, i.e., similar to the IPsec
  databases.

  o ULE-SAD: ULE Security Association Database contains all the
    Security Associations that are currently established with different
    ULE peers.

  o ULE-SPD: ULE Security Policy Database contains the policies as
    described by the system manager.  These policies describe the
    security services that must be enforced.

  While traditionally link-layer security has operated using simple
  policy mechanisms, it is envisaged that ULE security should provide
  flexibility comparable to IPsec.  The above design is based on the
  two databases defined for IPsec [RFC4301].  These databases could be
  used to implement either simple policies (as in traditional link
  security services) or more complex policies (as in IPsec).

  The exact details of the header patterns that the SPD and SAD will
  have to support for all use cases will be described in a separate
  document.  This document only highlights the need for such interfaces
  between the ULE data plane and the Key Management control plane.

A.1.3.  ULE Extension Header Block

  A new security extension header for the ULE protocol is required to
  provide the security features of data confidentiality, identity
  protection, data integrity, data authentication, and mechanisms to
  prevent replay attacks.  Security keying material will be used for
  the different security algorithms (for encryption/decryption, MAC
  generation, etc.), which are used to meet the security requirements,
  described in detail in Section 4 of this document.

  This block will use the keying material and policy information from
  the ULE Security Database Block on the ULE payload to generate the
  secure ULE Extension Header or to decipher the secure ULE extension
  header to get the ULE payload.  An example overview of the ULE
  Security extension header format along with the ULE header and
  payload is shown in Figure 3 below.





Cruickshank, et al.          Informational                     [Page 21]

RFC 5458             Security Requirements for ULE            March 2009


  +-------+------+-------------------------------+------+
  | ULE   |SEC   |     Protocol Data Unit        |      |
  |Header |Header|                               |CRC-32|
  +-------+------+-------------------------------+------+

           Figure 3: ULE Security Extension Header Placement

A.2.  Interface Definition

  Two new interfaces have to be defined between the blocks as shown in
  Figure 2 above.  These interfaces are:

  o Key Management Block <-> ULE Security Databases Block

  o ULE Security Databases Block <-> ULE Security Header Block

  While the first interface is used by the Key Management Block to
  insert keys, security associations, and policies into the ULE
  Database Block, the second interface is used by the ULE Security
  Extension Header Block to get the keys and policy material for
  generation of the security extension header.

A.2.1.  Key Management <-> ULE Security Databases

  This interface is between the Key Management Block of a group member
  (GM client) and the ULE Security Database Block (shown in Figure 2).
  The Key Management GM entity will communicate with the GCKS and then
  get the relevant security information (keys, cipher mode, security
  service, ULE_Security_ID, and other relevant keying material as well
  as policy) and insert this data into the ULE Security Database Block.
  The Key Management could be either automated (e.g., GSAKMP [RFC4535]
  or GDOI [RFC3547]), or security information could be manually
  inserted using this interface.

  Examples of interface functions are:

  o Insert_record_database (char * Database, char * record, char *
    Unique_ID);

  o Update_record_database (char * Database, char * record, char *
    Unique_ID);

  o Delete_record_database (char * Database, char * Unique_ID);

  The definitions of the variables are as follows:

  o Database - This is a pointer to the ULE Security databases




Cruickshank, et al.          Informational                     [Page 22]

RFC 5458             Security Requirements for ULE            March 2009


  o record - This is the rows of security attributes to be entered or
    modified in the above databases

  o Unique_ID - This is the primary key to look up records (rows of
    security attributes) in the above databases

A.2.2.  ULE Security Databases <-> ULE Security Header

  This interface is between the ULE Security Database and the ULE
  Security Extension Header Block as shown in Figure 2.  When sending
  traffic, the ULE encapsulator uses the Destination Address, the PID,
  and possibly other information such as L3 source and destination
  addresses to locate the relevant security record within the ULE
  Security Database.  It then uses the data in the record to create the
  ULE security extension header.  For received traffic, the ULE
  decapsulator on receiving the ULE SNDU will use the Destination
  Address, the PID, and a ULE Security ID inserted by the ULE
  encapsulator into the security extension to retrieve the relevant
  record from the Security Database.  It then uses this information to
  decrypt the ULE extension header.  For both cases (either send or
  receive traffic) only one interface is needed since the main
  difference between the sender and receiver is the direction of the
  flow of traffic.  An example of such an interface is as follows:

  o Get_record_database (char * Database, char * record, char *
    Unique_ID);

Appendix B.  Motivation for ULE Link-Layer Security

  Examination of the threat analysis and security requirements in
  Sections 3 and 4 has shown that there is a need to provide security
  in MPEG-2 transmission networks employing ULE.  This section compares
  the placement of security functionalities in different layers.

B.1.  Security at the IP Layer (Using IPsec)

  The security architecture for the Internet Protocol [RFC4301]
  describes security services for traffic at the IP layer.  This
  architecture primarily defines services for the Internet Protocol
  (IP) unicast packets, as well as manually configured IP multicast
  packets.

  It is possible to use IPsec to secure ULE Streams.  The major
  advantage of IPsec is its wide implementation in IP routers and
  hosts.  IPsec in transport mode can be used for end-to-end security
  transparently over MPEG-2 transmission links with little impact.





Cruickshank, et al.          Informational                     [Page 23]

RFC 5458             Security Requirements for ULE            March 2009


  In the context of MPEG-2 transmission links, if IPsec is used to
  secure a ULE Stream, then the ULE Encapsulator and Receivers are
  equivalent to the security gateways in IPsec terminology.  A security
  gateway implementation of IPsec uses tunnel mode.  Such usage has the
  following disadvantages:

  o There is an extra transmission overhead associated with using IPsec
    in tunnel mode, i.e., the extra IP header (IPv4 or IPv6).

  o There is a need to protect the identity (NPA address) of ULE
    Receivers over the ULE broadcast medium; IPsec is not suitable for
    providing this service.  In addition, the interfaces of these
    devices do not necessarily have IP addresses (they can be L2
    devices).

  o Multicast is considered a major service over ULE links.  The
    current IPsec specifications [RFC4301] only define a pairwise
    tunnel between two IPsec devices with manual keying.  Work is in
    progress in defining the extra detail needed for multicast and to
    use the tunnel mode with address preservation to allow efficient
    multicasting.  For further details refer to [RFC5374].

B.2.  Link Security below the Encapsulation Layer

  Link layer security can be provided at the MPEG-2 TS layer (below
  ULE).  MPEG-2 TS encryption encrypts all TS Packets sent with a
  specific PID value.  However, an MPEG-2 TS may typically multiplex
  several IP flows, belonging to different users, using a common PID.
  Therefore, all multiplexed traffic will share the same security keys.

  This has the following advantages:

  o The bit stream sent on the broadcast network does not expose any L2
    or L3 headers, specifically all addresses, type fields, and length
    fields are encrypted prior to transmission.

  o This method does not preclude the use of IPsec, TLS, or any other
    form of higher-layer security.

  However it has the following disadvantages:

  o When a PID is shared between several users, each ULE Receiver needs
    to decrypt all MPEG-2 TS Packets with a matching PID, possibly
    including those that are not required to be forwarded.  Therefore,
    it does not have the flexibility to separately secure individual IP
    flows.





Cruickshank, et al.          Informational                     [Page 24]

RFC 5458             Security Requirements for ULE            March 2009


  o When a PID is shared between several users, the ULE Receivers will
    have access to private traffic destined to other ULE Receivers,
    since they share a common PID and key.

  o IETF-based key management that is very flexible and secure is not
    used in existing MPEG-2 based systems.  Existing access control
    mechanisms in such systems have limited flexibility in terms of
    controlling the use of keying and rekeying.  Therefore, if the key
    is compromised, this will impact several ULE Receivers.

  Currently, there are few deployed L2 security systems for MPEG-2
  transmission networks.  Conditional access for digital TV
  broadcasting is one example.  However, this approach is optimised for
  TV services and is not well-suited to IP packet transmission.  Some
  other systems are specified in standards such as MPE [ETSI-DAT], but
  there are currently no known implementations and these methods are
  not applicable to GSE.

B.3.  Link Security as a Part of the Encapsulation Layer

  Examining the threat analysis in Section 3 has shown that protection
  of ULE Stream from eavesdropping and ULE Receiver identity are major
  requirements.

  There are several advantages in using ULE link-layer security:

  o The protection of the complete ULE Protocol Data Unit (PDU)
    including IP addresses.  The protection can be applied either per
    IP flow or per Receiver NPA address.

  o Ability to protect the identity of the Receiver within the MPEG-2
    transmission network at the IP layer and also at L2.

  o Efficient protection of IP multicast over ULE links.

  o Transparency to the use of Network Address Translation (NATs)
    [RFC3715] and TCP Performance Enhancing Proxies (PEP) [RFC3135],
    which require the ability to inspect and modify the packets sent
    over the ULE link.

  This method does not preclude the use of IPsec at L3 (or TLS
  [RFC5246] at L4).  IPsec and TLS provide strong authentication of the
  endpoints in the communication.








Cruickshank, et al.          Informational                     [Page 25]

RFC 5458             Security Requirements for ULE            March 2009


  L3 end-to-end security would partially deny the advantage listed
  above (use of PEP, compression, etc.), since those techniques could
  only be applied to TCP packets bearing a TCP-encapsulated IPsec
  packet exchange, but not the TCP packets of the original
  applications, which in particular inhibits compression.

  End-to-end security (IPsec, TLS, etc.) may be used independently to
  provide strong authentication of the endpoints in the communication.
  This authentication is desirable in many scenarios to ensure that the
  correct information is being exchanged between the trusted parties,
  whereas Layer 2 methods cannot provide this guarantee.

Authors' Addresses

  Haitham Cruickshank
  Centre for Communications System Research (CCSR)
  University of Surrey
  Guildford, Surrey, GU2 7XH
  UK
  EMail: [email protected]

  Prashant Pillai
  Mobile and Satellite Communications Research Centre (MSCRC)
  School of Engineering, Design and Technology
  University of Bradford
  Richmond Road, Bradford BD7 1DP
  UK
  EMail: [email protected]

  Michael Noisternig
  Multimedia Comm. Group, Dpt. of Computer Sciences
  University of Salzburg
  Jakob-Haringer-Str. 2
  5020 Salzburg
  Austria
  EMail: [email protected]

  Sunil Iyengar
  Space & Defence
  Logica
  Springfield Drive
  Leatherhead
  Surrey KT22 7LP
  UK
  EMail: [email protected]






Cruickshank, et al.          Informational                     [Page 26]