Internet DRAFT - draft-aravind-radext-endtoend-attribute-security
draft-aravind-radext-endtoend-attribute-security
RADIUS EXTensions Working Group Aravind Prasad Sridharan
INTERNET-DRAFT Sanal Kumar Kariyezhath Sivaraman
Intended Status: Standards Track DELL
Expires: February 19, 2018 August 18, 2017
RADIUS End-to-end Attribute Security
draft-aravind-radext-endtoend-attribute-security-00
Abstract
This document proposes a method to provide end to end security to
Attributes in RADIUS Messages.
Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as
Internet-Drafts.
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."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/1id-abstracts.html
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html
Copyright and License Notice
Copyright (c) 2017 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
Aravind, et al. Expires February 19, 2018 [Page 1]
INTERNET DRAFT RADIUS Attribute Security August 18, 2017
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
1.1 Terminology . . . . . . . . . . . . . . . . . . . . . . . . 2
2 Problem Scenario . . . . . . . . . . . . . . . . . . . . . . . 2
3 Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.1 Security Attribute . . . . . . . . . . . . . . . . . . . . 4
3.2 Overall Message Flow: . . . . . . . . . . . . . . . . . . . 4
3.3 Scenarios when NAS is used as transit . . . . . . . . . . . 6
4 Advantages . . . . . . . . . . . . . . . . . . . . . . . . . . 6
5 Security Considerations . . . . . . . . . . . . . . . . . . . . 7
6 IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 7
7 References . . . . . . . . . . . . . . . . . . . . . . . . . . 7
7.1 Normative References . . . . . . . . . . . . . . . . . . . 7
7.2 Informative References . . . . . . . . . . . . . . . . . . 7
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 8
1 Introduction
In a typical scenario, there could be multiple RADIUS proxies between
NAS and RADIUS server. RADIUS ensures hop to hop security by using
pre-shared secret between hops. End to end connection between NAS and
RADIUS server is through the set of transitive links involving
proxies. RADIUS over TLS can be deployed to have the security between
hop to hop only. Incase of Roaming scenarios, the NAS, proxies and
home server will typically be managed by different administrative
entities. Proxies have complete access to messages exchanged between
NAS and RADIUS Server.
1.1 Terminology
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].
2 Problem Scenario
No end to end security in RADIUS. Security Mechanism like Radius over
TLS provides only Hop to Hop security.
Aravind, et al. Expires February 19, 2018 [Page 2]
INTERNET DRAFT RADIUS Attribute Security August 18, 2017
As the proxy has the right to modify the message, that introduces
following security threats [RFC2607].
Message editing
Attribute editing
Theft of password
Theft and modification of accounting data
Replay attacks
Connection hijacking
Fraudulent accounting.
Both NAS and RADIUS Server are not aware of the changes made in the
message by the proxies and assumed to be in trusted relationship with
proxies in Proxy chaining scenarios. This can cause havoc in roaming
environments.
3 Solution
Introduce a new Security Attribute TLV as a container that will hold
the set of sensitive attributes as sub TLVs. The sensitive attributes
may be any of the to-be-protected RADIUS attributes like Framed-
Protocol, Service-Type and so on. This Security attribute TLV will
be protected using already existing EAP-TLS mechanism. This is to
leverage all the advantages EAP-TLS already provides in terms of
security.
Initially, EAP -TLS exchange will happen between the RADIUS Client
and Server and after the EAP-TLS handshake, the symmetric key will be
exchanged. This key is used to protect the sensitive RADIUS
attributes from the attack from in-between Proxies. With this, the
end-to-end RADIUS attribute security is achieved.
The set of sensitive attributes to be protected can be configured at
the NAS and RADIUS Server. The attribute sets at both ends can be
different. This attribute will be encrypted using the symmetric key
that is agreed between both Client and Server in EAP-TLS.
After receiving TLS finished message from the Server, this attribute
will be sent along with EAP Response to Server. The Server can be
configured to expect the Security Attribute TLV for specific set of
users and incase of its absence, it can drop the RADIUS Message. The
Server will send back EAP Success/Failure along with sensitive
attributes placed as sub TLVs inside the Attribute TLV encrypted
using the symmetric key.
Aravind, et al. Expires February 19, 2018 [Page 3]
INTERNET DRAFT RADIUS Attribute Security August 18, 2017
3.1 Security Attribute
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Sub-Attribute(s)...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type
TBD
Length
1
Sub-Attributes
This can includes all the to-be-protected RADIUS attributes.
3.2 Overall Message Flow:
In the case where the EAP-TLS mutual authentication is successful,
the conversation will appear as follows:
Client Server
------ ------
EAP-Response/
Identity (MyID) ->
<- EAP-Request/
EAP-Type=EAP-TLS
(TLS Start)
EAP-Response/
EAP-Type=EAP-TLS
(TLS client_hello)->
<- EAP-Request/
EAP-Type=EAP-TLS
(TLS server_hello,
TLS certificate,
[TLS server_key_exchange,]
TLS certificate_request,
TLS server_hello_done)
EAP-Response/
EAP-Type=EAP-TLS
Aravind, et al. Expires February 19, 2018 [Page 4]
INTERNET DRAFT RADIUS Attribute Security August 18, 2017
(TLS certificate,
TLS client_key_exchange,
TLS certificate_verify,
TLS change_cipher_spec,
TLS finished) ->
<- EAP-Request/
EAP-Type=EAP-TLS
(TLS change_cipher_spec,
TLS finished)
EAP-Response/
EAP-Type=EAP-TLS,
Security Attribute TLV ->
<- EAP-Success,
Security Attribute TLV
In the case where the server authenticates to the peer successfully,
but the peer fails to authenticate to the server, the conversation
will appear as follows:
Client Server
------ ------
EAP-Response/
Identity (MyID) ->
<- EAP-Request/
EAP-Type=EAP-TLS
(TLS Start)
EAP-Response/
EAP-Type=EAP-TLS
(TLS client_hello)->
<- EAP-Request/
EAP-Type=EAP-TLS
(TLS server_hello,
TLS certificate,
[TLS server_key_exchange,]
TLS certificate_request,
TLS server_hello_done)
EAP-Response/
EAP-Type=EAP-TLS
(TLS certificate,
TLS client_key_exchange,
TLS certificate_verify,
TLS change_cipher_spec,
TLS finished) ->
<- EAP-Request/
EAP-Type=EAP-TLS
Aravind, et al. Expires February 19, 2018 [Page 5]
INTERNET DRAFT RADIUS Attribute Security August 18, 2017
(TLS change_cipher_spec,
TLS finished)
EAP-Response/
EAP-Type=EAP-TLS ->
<- EAP-Request
EAP-Type=EAP-TLS
(TLS Alert message)
EAP-Response/
EAP-Type=EAP-TLS,
Security Attribute TLV ->
<- EAP-Failure,
Security Attribute TLV
3.3 Scenarios when NAS is used as transit
Incase of a typical 802.1x scenario, the message exchange will happen
between the Supplicant/Client and RADIUS server using the NAS/RADIUS
Client as transit. In such cases, when the EAP Response is received
from Supplicant, the EAP TLS Handshake will happen between NAS and
RADIUS Server. Then, the EAP attribute is encapsulated within the
Attribute TLV and encrypted and sent to Server. From then on, when
the received Response from Server has Attribute TLV which in turn
contains EAP message, the NAS will forward the EAP back to
Client/Supplicant. Hence, the property of NAS being pass-through
device remains and no additional modifications are required.
4 Advantages
Rogue Proxy cannot decrypt the protected Security Attribute contents.
Hence, security in Roaming scenarios is assured.
Concept of un-modifiable or protected attributes is introduced. With
this, it is possible to exchange sensitive attributes safely between
NAS/RADIUS Client and RADIUS Server.
Even if any Rogue proxy removes the Security Attribute, RADIUS server
or NAS can potentially drop the message as the Security Attribute is
expected in the message with respect to configuration.
Both NAS and RADIUS Server can safely assume the trust relationships
with proxies.
Since, end-to-end security is accomplished along with EAP-TLS in this
mechanism, all merits of EAP-TLS like Mutual authentication,
Integrity protection, Replay protection, Confidentiality, Dictionary
attack protection and Fragmentation are provided by default.
Aravind, et al. Expires February 19, 2018 [Page 6]
INTERNET DRAFT RADIUS Attribute Security August 18, 2017
5 Security Considerations
This document does not introduce any new security concerns to RADIUS
or any other specifications referenced in this document
6 IANA Considerations
This document requests IANA to allocate the new type code value to
the proposed Security Attribute and add it to the list of existing
RADIUS Attributes.
7 References
7.1 Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2865] Rigney, C., Willens, S., Rubens, A., and W. Simpson,
"Remote Authentication Dial In User Service (RADIUS)", RFC
2865, June 2000.
[RFC3575] Aboba, B., "IANA Considerations for RADIUS (Remote
Authentication Dial In User Service)", RFC 3575,
July 2003.
[RFC6158] DeKok, A. and G. Weber, "RADIUS Design Guidelines",
BCP 158, RFC 6158, March 2011.
[RFC6929] DeKok, A. and A. Lior, "Remote Authentication Dial In User
Service (RADIUS) Protocol Extensions", RFC 6929,
April 2013.
7.2 Informative References
[RFC5216] Simon D., Aboba B., Hurst S., "The EAP-TLS Authentication
Protocol", RFC5216, March 2008.
[RFC2607] Abobam B., Vollbrecht J., "Proxy Chaining and Policy
Implementation in Roaming", RFC2607, June 1999.
[RFC6613] DeKok, A., "RADIUS over TCP", May 2012.
[RFC2868] Zorn, G., Leifer, D., Rubens A., Shriver, J.,
Holdrege, M., Goyret, I, "RADIUS Attributes for Tunnel
Protocol Support", June 2000
Aravind, et al. Expires February 19, 2018 [Page 7]
INTERNET DRAFT RADIUS Attribute Security August 18, 2017
[RFC6929] DeKok, A. and Lior , A., "Remote Authentication Dial-In
User Service RADIUS) Protocol Extensions", April 2013.
[RFC5080] Nelson, D. and DeKok. A., "Common Remote Authentication
Dial In User Service (RADIUS) Implementation Issues and
Suggested Fixes"
[RFC2867] Zorn, G., Aboba, B. and Mitton, D., "RADIUS Accounting
Modifications for Tunnel Protocol Support", June 2000.
[RFC5997] DeKok. A., "Use of Status-Server Packets in the
Remote Authentication Dial In User Service (RADIUS)
Protocol", August 2010.
Authors' Addresses
Aravind Prasad Sridharan
DELL
Olympia Technology Park
Guindy, Chennai 600032
India
Phone: +91 9884612715
Email: aravind.sridharan@dell.com
Sanal Kumar Kariyezhath Sivaraman
DELL
Olympia Technology Park
Guindy, Chennai 600032
India
Phone: +91 9600081365
Email: Sanal_Kumar_Sivarama@dell.com
Aravind, et al. Expires February 19, 2018 [Page 8]