ABFAB Working GroupInternet Engineering Task Force (IETF) S. WinterInternet-DraftRequest for Comments: 7057 RESTENA Updates: 3748(if approved)J. SaloweyIntended status:Category: Standards Track CiscoExpires: February 20, 2014 August 19,ISSN: 2070-1721 December 2013 Update to theEAPExtensible Authentication Protocol (EAP) Applicability Statement forABFAB draft-ietf-abfab-eapapplicability-06Application Bridging for Federated Access Beyond Web (ABFAB) Abstract This document updates the Extensible Authentication Protocol (EAP) applicability statement fromRFC3748RFC 3748 to reflect recent usage of the EAP protocol in the Application Bridging for Federated Access Beyond web (ABFAB) architecture. Status of This Memo ThisInternet-Draftissubmitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documentsan Internet Standards Track document. This document is a product of the Internet Engineering Task Force (IETF).Note that other groups may also distribute working documents as Internet-Drafts. The listIt represents the consensus ofcurrent Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents validthe IETF community. It has received public review and has been approved fora maximumpublication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 5741. Information about the current status ofsix monthsthis document, any errata, and how to provide feedback on it may beupdated, replaced, or obsoleted by other documentsobtained atany 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 February 20, 2014.http://www.rfc-editor.org/info/rfc7057. Copyright Notice Copyright (c) 2013 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. Table of Contents 1. Introduction. . . . . . . . . . . . . . . . . . . . . . . . 2....................................................2 1.1. Requirements Language. . . . . . . . . . . . . . . . . . 2......................................2 2. Uses of EAP for Application-Layer Access. . . . . . . . . . 2........................2 2.1. Retransmission. . . . . . . . . . . . . . . . . . . . . 4.............................................4 2.2.Re-Authentication . . . . . . . . . . . . . . . . . . . . 4Re-authentication ..........................................5 3. Revised EAPapplicability statement . . . . . . . . . . . . . 5Applicability Statement .............................5 4. Security Considerations. . . . . . . . . . . . . . . . . . . 6.........................................6 5.IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 6.Acknowledgements. . . . . . . . . . . . . . . . . . . . . . 6 7.................................................6 6. References. . . . . . . . . . . . . . . . . . . . . . . . . 6 7.1.......................................................6 6.1. Normative References. . . . . . . . . . . . . . . . . . 6 7.2. Informational.......................................6 6.2. Informative References. . . . . . . . . . . . . . . . 6.....................................6 1. Introduction The EAP applicability statement in [RFC3748] defines the scope of the Extensible Authentication Protocol to be "for use in network access authentication, where IP layer connectivity may not beavailable.",available", and states that "Use of EAP for other purposes, such as bulk data transport, is NOTRECOMMENDED.".RECOMMENDED". While some of the reasons for the recommendation against usage of EAP for bulk data transportisare still valid, some of the other provisions in the applicability statement have turned out to be too narrow. Section 2 describes the example where EAP is used to authenticateapplication layerapplication-layer access. Section 3 provides new text to updatethe paragraph 1.3. "Applicability"Section 1.3., "Applicability", in [RFC3748]. 1.1. Requirements Language In this document, several words are used to signify the requirements of the specification. The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described inRFC 2119. [RFC2119][RFC2119]. 2. Uses of EAP for Application-Layer Access Ongoing work in the IETF specifies the use of EAP overGSSAPIGeneric Security Service Application Program Interface (GSS-API) for generic application layer access[I-D.ietf-abfab-gss-eap].[RFC7055]. In the past, using EAP in this context has met resistance due to the lack of channel bindings [RFC6677]. Without channel bindings, a peer cannot verify if an authenticator is authorized to provide an advertised service.HoweverHowever, as additional services use EAP for authentication, the distinction of which service is being contacted becomes more important. Application services might have different properties. Consider an environment with multipleprintersprinters, some of which provide a confidential service to output documents to a controlled location. If a peer sent a document to the wrongserviceservice, then potentially sensitive information might be printed in an uncontrolled location and be disclosed. In addition, it might be more likely that a low- value service is compromised than somehigh valuehigh-value service. If the high-value service could be impersonated by a low-value service then the security of the overall system would be limited by the security of thelower valuelower-value service. This distinction is present in any environment where peers' security depends on which service they reach.HoweverHowever, it is particularly acute in a federated environment where multiple organizations are involved. It is very likely that these organizations will have different security policies and practices. It is very likely that the goals of these organizations will not entirely be aligned. In manysituationssituations, one organization could gain value by being able to impersonate another. In this environment, authenticating the EAP server is insufficient: the peer must also validate that the contacted host is authorized to provide the requested service. In environments where EAP is used for purposes other than network access authentication: o All EAP servers and all application access EAP peers MUST support channel bindings. All network access EAP peers SHOULD support channel bindings. o Channel binding MUST be used for all application authentication. The EAP server MUSTeitherrequire that either the correct EAP lower- layer attribute or another attribute indicating the purpose of the authentication be present in the channel binding data for application authentication. o Channel binding SHOULD be used for all network access authentication, and when channel binding data is present, the EAP server MUST require that it contain the correct EAP lower-layer attribute to explicitly identify the reason for authentication. o Any new usage of EAP MUST use channel bindings including the EAP lower-layer attribute to prevent confusion with network access usage. Operators need to carefully consider the security implications before relaxing these requirements. One potentially serious attack exists when channel binding is not required and EAP authentication is introduced into an existing service other than network access. A device can be created that impersonates a Network Access Service (NAS) to peers, but actually proxies the authentication to the new application service that accepts EAP authentications. This may decrease the security of this service even for users who previously used non-EAP means of authentication to the service. It is REQUIRED for the application layer to prove that both the EAPPeerpeer and EAPAuthenticatorauthenticator possess the EAP Master Session Key (MSK). Failing to validate the possession of the EAP MSK can allow an attacker to insert himself into the conversation and impersonate the peer or authenticator. In addition, the application should define channel binding attributes that are sufficient to validate that the application service is being correctly represented to the peer. 2.1. Retransmission In EAP, the authenticator is responsible for retransmission. Bydefaultdefault, EAP assumes that the lower layer (the application in this context) is unreliable. The authenticator can send a packet whenever its retransmission timer triggers. In this mode, applications need to be able to receive and process EAP messages at any time during the authentication conversation. Alternatively, EAP permits a lower layer to set the retransmission timer to infinite. When this happens, the lower layer becomes responsible for reliable delivery of EAP messages. Applications that use a lock-step or client-driven authentication protocol might benefit from this approach. In addition to retransmissionbehaviorbehavior, applications need to deal with discarded EAP messages. For example, whenever some EAP methods receive erroneous input, these methods discard the input rather than generating an error response. If the erroneous input was generated by an attacker, legitimate input can sometimes be received after the erroneous input. Applications MUST handle discarded EAP messages, although the specific way in which discarded messages will be handled depends on the characteristics of the application. Options include failing the authentication at the application level, requesting an EAP retransmit and waiting for additional EAP input. Applications designers that incorporate EAP into their application need to determine how retransmission and message discards are handled. 2.2.Re-AuthenticationRe-authentication EAP lower layers MAY provide a mechanism for re-authentication to happen within an existing session [RFC3748]. Re-authentication permits security associations to be updated without establishing a new session. For network access, this can be important because interrupting network access can disrupt connections and media. Some applications might not need re-authentication support. Forexampleexample, if sessions are relatively short-lived or if sessions can be replaced without significant disruption, re-authentication might not provide value. Protocols likeHypertextHyperText Transfer Protocol (HTTP) [RFC2616] and Simple Mail Transport Protocol (SMTP) [RFC5321] are examples of protocols where establishing a new connection to update security associations is likely to be sufficient. Re-authentication is likely to be valuable if sessions or connections are long-lived or if there is a significant cost to disrupting them. Another factor may make re-authentication important. Some protocols only permit one party in a protocol (forexampleexample, the client) to establish a new connection. If another party in the protocol needs the security associationrefreshedrefreshed, then re-authentication can provide a mechanism to do so. Application designers need to determine whether re-authentication support is needed and which parties can initiate it. 3. Revised EAPapplicability statementApplicability Statement The following text isaddedappended to the EAP applicability statement in [RFC3748]. In cases where EAP is used for application authentication, support for EAPChannel Bindingschannel bindings is REQUIRED on the EAPPeerpeer and EAPServerserver to validate that the host is authorized to provide the services requested. In addition, the application MUST define channel binding attributes that are sufficient to validate that the application service is being correctly represented to the peer. The protocol carrying EAP MUST prove possession of the EAP MSK between the EAPPeerpeer and EAPAuthenticator.authenticator. In the context of EAP for application access the application is providing the EAPLower Layer.lower layer. Applications protocols vary so their specific behavior and transport characteristics needs to be considered when determining their retransmission and re-authentication behavior. Circumstances might require that applications need to perform conversion of identities from an application specific character set to UTF-8 or another character set required by a particular EAP method. See also [RADEXT-NAI], Section 2.6, for information about normalization of identifiers. 4. Security Considerations In addition to the requirements discussed in the main sections of thedocumentdocument, applications should take into account how server authentication is achieved. Some deployments may allow for weak server authentication that is then validated with an additional existing exchange that provides mutual authentication. In order to fully mitigate the risk of NAS impersonation when these mechanisms are used, it is RECOMMENDED that mutual channel bindings be used to bind the authentications together as described in[I-D.ietf-emu-crypto-bind].[RFC7029]. When doing channel binding it is REQUIRED that the authenticator is not able to modify the channel binding data passed between the peer to the authenticator as part of the authentication process. 5.IANA Considerations This document has no actions for IANA. 6.Acknowledgements Large amounts of helpful text and insightful thoughts were contributed by Sam Hartman, Painless Security. David Black contributed to the text clarifying channel bindings usage.7.6. References7.1.6.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC3748] Aboba, B., Blunk, L., Vollbrecht, J., Carlson, J., and H. Levkowetz, "Extensible Authentication Protocol (EAP)", RFC 3748, June 2004. [RFC6677] Hartman, S., Clancy, T., and K. Hoeper, "Channel-Binding Support for Extensible Authentication Protocol (EAP) Methods", RFC 6677, July 2012.7.2. Informational6.2. Informative References[I-D.ietf-emu-crypto-bind] Hartman, S., Wasserman, M., and D. Zhang, "EAP Mutual Cryptographic Binding", draft-ietf-emu-crypto-bind-04 (work[RADEXT-NAI] DeKok, A., "The Network Access Identifier", Work inprogress), JulyProgress, November 2013.[I-D.ietf-abfab-gss-eap] Hartman, S. and J. Howlett, "A GSS-API Mechanism for the Extensible Authentication Protocol", draft-ietf-abfab-gss- eap-09 (work in progress), August 2012.[RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999. [RFC5321] Klensin, J., "Simple Mail Transfer Protocol", RFC 5321, October 2008. [RFC7029] Hartman, S., Wasserman, M., and D. Zhang, "Extensible Authentication Protocol (EAP) Mutual Cryptographic Binding", RFC 7029, October 2013. [RFC7055] Hartman, S., Ed. and J. Howlett, "A GSS-API Mechanism for the Extensible Authentication Protocol", RFC 7055, December 2013. Authors' Addresses Stefan Winter Fondation RESTENA 6, rue Richard Coudenhove-Kalergi Luxembourg 1359 LUXEMBOURG Phone: +352 424409 1 Fax: +352 422473 EMail: stefan.winter@restena.lu URI: http://www.restena.lu. Joseph Salowey Cisco Systems 2901 3rd Ave Seattle, Washington 98121 USA EMail: jsalowey@cisco.com