DIME | H. Tschofenig |
Internet-Draft | ARM Limited |
Intended status: Informational | J. Korhonen, Ed. |
Expires: December 10, 2016 | Broadcom Limited |
G. Zorn | |
Network Zen | |
K. Pillay | |
Internet Solutions | |
June 8, 2016 |
AVP Level Security for Non-neighboring Diameter Nodes: Scenarios and Requirements
draft-ietf-dime-e2e-sec-req-05.txt
This specification specifies requirements for providing Diameter security at the level of individual Attribute-Value Pairs.
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 10, 2016.
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 described in the Simplified BSD License.
The Diameter base protocol specification [2] defines security protection between neighboring Diameter peers. The Diameter mandates that peer connections must be protected by TLS (for TCP) [6], DTLS (for SCTP) [7] or using security mechanisms that are independent of Diameter such as IPsec [5]. 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 Attribute Value Pairs (AVP) 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 sophistication of those deployments the need for protecting Diameter AVPs between non-neighboring nodes re-surfaced. Since early 2000 (when the work on [3] was discontinued) the Internet community had seen advances in cryptographic algorithms (for example, authenticated encryption algorithms) and new security building blocks were developed.
This document specifies requirements for developing a solution to protect Diameter AVPs between non-neighboring Diameter nodes.
The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'MAY', and 'OPTIONAL' in this documents are to be interpreted as described in RFC 2119 [1].
This document re-uses terminology from the Diameter base specification [2].
In the figures below Attribute Value Pair (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.
The following terms are also used in this document:
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 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 | | (NAS) +------+ | +------+ +--------+ |----+ +--------+ +--------+ | +--------+ +--------+ | | | | | | | | Visited Domain 1 | | | AAA Broker Network | | +oooooooooooooooooo+ | +====================+ | | | | | | | | +\\\\\\\\\\\\\\\\\\\\+ | | +--------+ Example.com | | | |Diameter| | | +oooooooooooooooooo+ | |Server X+--+ +--------+ | | Example.org | | +--------+ | |Diameter| | | | | +--------+ +---------+Proxy D |-+ +--------+ +--------+ | |Diameter| | +--------+ |Diameter| |Diameter| | |Server Y+--+ | |Client 2+------+Proxy A2+-+ +--------+ Home Domain | | (NAS) | | | +////////////////////+ +--------+ +--------+ | | | Visited Domain 2 | +oooooooooooooooooo+
Figure 1: Example Diameter Deployment.
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 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. 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.
+--------+ +--------+ +--------+ |Diameter| AVP, {AVP}k |Diameter| AVP |Diameter| |Client +-----------------........... ----+Proxy D +-----+Server | +--------+ +--------+ +--------+
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, except for the security enabled proxies obviously. Second, the key management is also simplified since fewer number of keys need to be negotiated and provisioned. The assumption here is that the number of security enabled proxies would be significantly less than unprotected Diameter nodes in the installed base.
+--------+ +--------+ +--------+ +--------+ |Diameter| AVP |Diameter| AVP, {AVP}k |Diameter| AVP |Diameter| |Client +-----+Proxy A +-- .......... ----+Proxy D +-----+Server | +--------+ +--------+ +--------+ +--------+
Figure 5: Middle-to-Middle Diameter AVP Security Protection.
This entire document focused on the discussion of new functionality for securing Diameter AVPs selectively between non-neighboring nodes.
Various security threats are mitigated by selectively applying security protection for individual Diameter AVPs. Without protection there is the possibility for password sniffing, confidentiality violation, AVP insertion, deletion or modification. Additionally, applying digital signature offers non-repudiation capabilities; a feature not yet available in today's Diameter deployment. 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.
This document does not require actions by IANA.
We would like to thank Guenther Horn, Martin Dolly, Steve Donovan, Lionel Morand and Tom Taylor (rest in peace Tom) for their review comments.
The authors also thank Qin Wu, Christer Holmberg, Ben Campbell and Radia Perlman who provided additional reviews during the Last Call.
[1] | Bradner, S., "Key words for use in RFCs to Indicate 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, DOI 10.17487/RFC6733, October 2012. |
[3] | Calhoun, P., Farrell, S. and W. Bulley, "Diameter CMS Security Application", Internet-Draft draft-ietf-aaa-diameter-cms-sec-04, March 2002. |
[4] | Eronen, P., Hiller, T. and G. Zorn, "Diameter Extensible Authentication Protocol (EAP) Application", RFC 4072, DOI 10.17487/RFC4072, August 2005. |
[5] | Kent, S. and K. Seo, "Security Architecture for the Internet Protocol", RFC 4301, DOI 10.17487/RFC4301, December 2005. |
[6] | Dierks, T. and E. Rescorla, "The Transport Layer Security (TLS) Protocol Version 1.2", RFC 5246, DOI 10.17487/RFC5246, August 2008. |
[7] | Tuexen, M., Seggelmann, R. and E. Rescorla, "Datagram Transport Layer Security (DTLS) for Stream Control Transmission Protocol (SCTP)", RFC 6083, DOI 10.17487/RFC6083, January 2011. |