--- 1/draft-ietf-dime-e2e-sec-req-03.txt 2016-01-13 13:15:07.381678492 -0800 +++ 2/draft-ietf-dime-e2e-sec-req-04.txt 2016-01-13 13:15:07.409679176 -0800 @@ -1,50 +1,50 @@ DIME H. Tschofenig Internet-Draft ARM Limited Intended status: Informational J. Korhonen, Ed. -Expires: December 19, 2015 Broadcom Corporation +Expires: July 16, 2016 Broadcom Corporation G. Zorn Network Zen K. Pillay Oracle Communications - June 17, 2015 + January 13, 2016 Diameter AVP Level Security End-to-End Security: Scenarios and Requirements - draft-ietf-dime-e2e-sec-req-03.txt + draft-ietf-dime-e2e-sec-req-04.txt Abstract This specification discusses requirements for providing Diameter - security at the level of individual Attribute Value Pairs. + security at the level of individual Attribute-Value Pairs. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." - This Internet-Draft will expire on December 19, 2015. + This Internet-Draft will expire on July 16, 2016. Copyright Notice - Copyright (c) 2015 IETF Trust and the persons identified as the + Copyright (c) 2016 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 (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as @@ -55,33 +55,38 @@ 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 3. Security Threats . . . . . . . . . . . . . . . . . . . . . . 3 4. Scenarios for Diameter AVP-Level Protection . . . . . . . . . 5 5. Requirements . . . . . . . . . . . . . . . . . . . . . . . . 7 6. Security Considerations . . . . . . . . . . . . . . . . . . . 8 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 8 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 9.1. Normative References . . . . . . . . . . . . . . . . . . 8 - 9.2. Informative References . . . . . . . . . . . . . . . . . 8 + 9.2. Informative References . . . . . . . . . . . . . . . . . 9 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 1. Introduction - The Diameter Base specification [2] offers security protection - between neighboring Diameter peers and mandates that either TLS (for - TCP), DTLS (for SCTP), or IPsec is used. These security protocols - offer a wide range of security properties, including entity - authentication, data-origin authentication, integrity, - confidentiality protection and replay protection. They also support - a large number of cryptographic algorithms, algorithm negotiation, - and different types of credentials. + The Diameter base protocol specification [2] offers security + protection between neighboring Diameter peers and mandates that peer + connections must be protected by TLS (for TCP), DTLS (for SCTP) or + alternative security mechanisms independent of Diameter (e.g., IPsec) + is used. These security protocols offer a wide range of security + properties, including entity authentication, data-origin + authentication, integrity, confidentiality protection and replay + protection. They also support a large number of cryptographic + algorithms, algorithm negotiation, and different types of + credentials. It should be understood that TLS/DTLS/IPsec in Diameter + context does not provide end-to-end security unless the Diameter + nodes are direct peers i.e., neighboring Diameter nodes. The current + Diameter security is realized hop-by-hop. The need to also offer additional security protection of AVPs between non-neighboring Diameter nodes was recognized very early in the work on Diameter. This led to work on Diameter security using the Cryptographic Message Syntax (CMS) [3]. Due to lack of deployment interest at that time (and the complexity of the developed solution) the specification was, however, never completed. In the meanwhile Diameter had received a lot of deployment interest from the cellular operator community and because of the @@ -105,25 +110,26 @@ specification [2]. In the figures below we use the symbols 'AVP' and '{AVP}k'. AVP refers to an unprotected AVP and {AVP}k refers to an AVP that experiences security protection (using key "k") without further distinguishing between integrity and confidentiality protection. 3. Security Threats The following description aims to illustrate various security threats - that raise the need for protecting Diameter Attribute Value Pairs - (AVPs). Figure 1 illustrates an example Diameter topology where a - Diameter clients want to interact with the example.com home domain. - To interconnect the two visited networks a AAA interconnection - provider, labeled as AAA Broker, is used. + that raise the need for protecting Diameter Attribute-Value Pairs + (AVPs). Figure 1 illustrates an example of Diameter based roaming + architecture in which Diameter clients within the visited networks + need to interact with Diameter servers in the home domain. AAA + domains are interconnected using a Diameter-based AAA interconnection + network labeled as AAA Broker. +oooooooooooooooooo+ +====================+ | Example.net | | | | | | | +--------+ +--------+ +--------+ +--------+ |Diameter| |Diameter+--------+Diameter| |Diameter| |Client 1+------+Proxy A1| +------+Proxy B +--------+Proxy C |----+ +--------+ +--------+ | +--------+ +--------+ | | | | | | | | Visited Domain 1 | | | AAA Broker | | @@ -144,71 +150,75 @@ | | | Visited Domain 2 | +oooooooooooooooooo+ Figure 1: Example Diameter Deployment. Eavesdropping: Some Diameter applications carry information that is only intended for consumption by end points, either by the Diameter client or by the Diameter server but not by intermediaries. As an example, consider the Diameter EAP - application [4] that allows keying material for the protection of - air interface between the end device and the network access server - to be carried from the Diameter server to the Diameter client - (using the EAP-Master-Session-Key AVP). The content of the EAP- - Master-Session-Key AVP would benefit from protection against - eavesdropping by intermediaries. Other AVPs might also carry - sensitive personal data that, when collected by intermediaries, - allow for traffic analysis. + application [4] that allows the transport of keying material + between the Diameter server to the Diameter client (using the EAP- + Master-Session-Key AVP) for the protection of air interface + between the end device and the network access server. The content + of the EAP-Master-Session-Key AVP should benefit from protection + against eavesdropping by intermediaries. Other AVPs, for example + those listed in Section 13.3 of [2], might also carry sensitive + personal data that, when collected by intermediaries, allow for + traffic analysis. In context of the deployment shown in Figure 1 the adversary could, for example, be in the AAA broker network. - Injection and Manipulation: The Diameter base specification mandates - security protection between neighboring nodes but Diameter agents - may be compromised or misconfigured and inject/manipulate AVPs. - To detect such actions additional security protection needs to be - applied at the Diameter layer. + Injection and Manipulation: The Diameter base protocol specification + mandates security protection between neighboring nodes but + Diameter agents may be compromised or misconfigured and inject/ + manipulate AVPs. To detect such actions additional security + protection needs to be applied at the Diameter layer. Nodes that could launch such an attack are any Diameter agents along the end-to-end communication path. Impersonation: Imagine a case where a Diameter message from Example.net contains information claiming to be from Example.org. This would either require strict verification at the edge of the AAA broker network or cryptographic assurance at the Diameter layer to prevent a successful impersonation attack. Any Diameter realm could launch such an attack aiming for financial benefits or to disrupt service availability. 4. Scenarios for Diameter AVP-Level Protection This scenario outlines a number of cases for deploying security protection of individual Diameter AVPs. In the first scenario, shown in Figure 2, end-to-end security protection is provided between the Diameter client and the Diameter - server. Diameter AVPs exchanged between these two Diameter nodes are - protected. + server with any number of intermediate Diameter agents. Diameter + AVPs exchanged between these two Diameter nodes may be protected end- + to-end (notation '{AVP}k') or unprotected (notation 'AVP'). +--------+ +--------+ |Diameter| AVP, {AVP}k |Diameter| |Client +-----------------........... -------------------+Server | +--------+ +--------+ Figure 2: End-to-End Diameter AVP Security Protection. In the second scenario, shown in Figure 3, a Diameter proxy acts on behalf of the Diameter client with regard to security protection. It applies security protection to outgoing Diameter AVPs and verifies - incoming AVPs. + incoming AVPs. Typically, the proxy enforcing the security + protection belongs to the same domain as the Diameter client/server + without end-to-end security features. +--------+ +--------+ +--------+ |Diameter| AVP |Diameter| AVP, {AVP}k |Diameter| |Client +-----+Proxy A +---------- .......... -----------+Server | +--------+ +--------+ +--------+ Figure 3: Middle-to-End Diameter AVP Security Protection. In the third scenario shown in Figure 4 a Diameter proxy acts on behalf of the Diameter server. @@ -219,22 +229,22 @@ +--------+ +--------+ +--------+ Figure 4: End-to-Middle Diameter AVP Security Protection. The fourth and the final scenario (see Figure 5) is a combination of the end-to-middle and the middle-to-end scenario shown in Figure 4 and in Figure 3. From a deployment point of view this scenario is easier to accomplish for two reasons: First, Diameter clients and Diameter servers remain unmodified. This ensures that no modifications are needed to the installed Diameter infrastructure. - Second, key management is also simplified since fewer number of key - pairs need to be negotiated and provisioned. + Second, key management is also simplified since fewer number of keys + need to be negotiated and provisioned. +--------+ +--------+ +--------+ +--------+ |Diameter| AVP |Diameter| AVP, {AVP}k |Diameter| AVP |Diameter| |Client +-----+Proxy A +-- .......... ----+Proxy D +-----+Server | +--------+ +--------+ +--------+ +--------+ Figure 5: Middle-to-Middle Diameter AVP Security Protection. Various security threats are mitigated by selectively applying security protection for individual Diameter AVPs. Without protection @@ -245,113 +255,120 @@ Modification of certain Diameter AVPs may not necessarily be the act of malicious behavior but could also be the result of misconfiguration. An over-aggressively configured firewalling Diameter proxy may also remove certain AVPs. In most cases data origin authentication and integrity protection of AVPs will provide the most benefits for existing deployments with minimal overhead and (potentially) operating in a full-backwards compatible manner. 5. Requirements - Requirement #1: Solutions MUST support an extensible set of + Requirement #1: The solution MUST support an extensible set of cryptographic algorithms. Motivation: Solutions MUST be able to evolve to adapt to evolving cryptographic algorithms and security requirements. This may include the provision of a modular mechanism to allow cryptographic algorithms to be updated without substantial disruption to deployed implementations. - Requirement #2: Solutions MUST support confidentiality, integrity, - and data-origin authentication. Solutions for integrity - protection MUST work in a backwards-compatible way with existing - Diameter applications. + Requirement #2: The solution MUST support confidentiality, + integrity, and data-origin authentication. Solutions for + integrity protection MUST work in a backwards-compatible way with + existing Diameter applications. - Requirement #3: Solutions MUST support replay protection. All + Requirement #3: The solution MUST support replay protection. All Diameter nodes have access to network time and thus can synchronize their clocks. - Requirement #4: Solutions MUST support the ability to delegate + Requirement #4: The solution MUST support the ability to delegate security functionality to another entity Motivation: As described in Section 4 the ability to let a Diameter proxy to perform security services on behalf of all clients within the same administrative domain is important for incremental deployability. The same applies to the other communication side where a load balancer terminates security services for the servers it interfaces. - Requirement #5: Solutions MUST be able to selectively apply their + Requirement #5: The solution MUST be able to selectively apply their cryptographic protection to certain Diameter AVPs. Motivation: Some Diameter applications assume that certain AVPs are added, removed, or modified by intermediaries. As such, it MUST be possible to apply security protection selectively. Furthermore, there are AVPs that MUST NOT be confidentiality protected but MAY still be integrity protected such as those required for Diameter message routing. - Requirement #6: Solutions MUST recommend a mandatory-to-implement + Requirement #6: The solution MUST define a mandatory-to-implement cryptographic algorithm. Motivation: For interoperability purposes it is beneficial to have a mandatory-to-implement cryptographic algorithm specified (unless profiles for specific usage environments specify otherwise). - Requirement #7: Solutions MUST support symmetric keys and asymmetric - keys. + Requirement #7: The solution MUST support symmetric keys and + asymmetric keys. Motivation: Symmetric and asymmetric cryptographic algorithms provide different security services. Asymmetric algorithms, for example, allow non-repudiation services to be offered. Requirement #8: A solution for dynamic key management MUST be - included in the overall solution framework. However, it is - assumed that no "new" key management protocol needs to be - developed; instead existing ones are re-used, if at all possible. - Rekeying could be triggered by (a) management actions and (b) - expiring keying material. + included in the overall solution framework. + + However, it is assumed that no "new" key management protocol + needs to be developed; instead existing ones are re-used, if at + all possible. Rekeying could be triggered by (a) management + actions and (b) expiring keying material. 6. Security Considerations This entire document focused on the discussion of new functionality for securing Diameter AVPs selectively between non-neighboring nodes. 7. IANA Considerations This document does not require actions by IANA. 8. Acknowledgments - We would like to thank Guenther Horn, Martin Dolly, Steve Donovan and - Tom Taylor for their review comments. + We would like to thank Guenther Horn, Martin Dolly, Steve Donovan, + Lionel Morand and Tom Taylor (rest in peace Tom) for their review + comments. 9. References 9.1. Normative References [1] Bradner, S., "Key words for use in RFCs to Indicate - Requirement Levels", BCP 14, RFC 2119, March 1997. + Requirement Levels", BCP 14, RFC 2119, + DOI 10.17487/RFC2119, March 1997, + . - [2] Fajardo, V., Arkko, J., Loughney, J., and G. Zorn, - "Diameter Base Protocol", RFC 6733, October 2012. + [2] Fajardo, V., Ed., Arkko, J., Loughney, J., and G. Zorn, + Ed., "Diameter Base Protocol", RFC 6733, + DOI 10.17487/RFC6733, October 2012, + . 9.2. Informative References [3] Calhoun, P., Farrell, S., and W. Bulley, "Diameter CMS Security Application", draft-ietf-aaa-diameter-cms-sec-04 (work in progress), March 2002. - [4] Eronen, P., Hiller, T., and G. Zorn, "Diameter Extensible - Authentication Protocol (EAP) Application", RFC 4072, - August 2005. + [4] Eronen, P., Ed., Hiller, T., and G. Zorn, "Diameter + Extensible Authentication Protocol (EAP) Application", + RFC 4072, DOI 10.17487/RFC4072, August 2005, + . Authors' Addresses Hannes Tschofenig ARM Limited Austria Email: Hannes.tschofenig@gmx.net URI: http://www.tschofenig.priv.at