draft-ietf-dhc-relay-server-security-01.txt   draft-ietf-dhc-relay-server-security-02.txt 
Network Working Group B. Volz Network Working Group B. Volz
Internet-Draft Cisco Systems Internet-Draft Cisco Systems
Updates: 1542, 3315 (if approved) Y. Pal Intended status: Standards Track Y. Pal
Intended status: Standards Track Cisco Systems, Inc. Expires: June 18, 2017 Cisco Systems, Inc.
Expires: April 20, 2017 October 17, 2016 December 15, 2016
Security of Messages Exchanged Between Servers and Relay Agents Security of Messages Exchanged Between Servers and Relay Agents
draft-ietf-dhc-relay-server-security-01.txt draft-ietf-dhc-relay-server-security-02.txt
Abstract Abstract
The Dynamic Host Configuration Protocol for IPv4 (DHCPv4) has no The Dynamic Host Configuration Protocol for IPv4 (DHCPv4) has no
guidance for how to secure messages exchanged between servers and guidance for how to secure messages exchanged between servers and
relay agents. The Dynamic Host Configuration Protocol for IPv6 relay agents. The Dynamic Host Configuration Protocol for IPv6
(DHCPv6) states that IPsec should be used to secure messages (DHCPv6) states that IPsec should be used to secure messages
exchanged between servers and relay agents, but does not recommend exchanged between servers and relay agents, but does not require
encryption. And, with recent concerns about pervasive monitoring it encryption. And, with recent concerns about pervasive monitoring and
is appropriate to provide recommendations for DHCPv4 and also improve other attacks, it is appropriate to require securing relay to relay
the recommendations for DHCPv6. This document updates RFC1542 and and relay to server communication for DHCPv6 and relay to server
RFC3315. communication for DHCPv4.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on April 20, 2017. This Internet-Draft will expire on June 18, 2017.
Copyright Notice Copyright Notice
Copyright (c) 2016 IETF Trust and the persons identified as the Copyright (c) 2016 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 25 skipping to change at page 2, line 25
Without obtaining an adequate license from the person(s) controlling Without obtaining an adequate license from the person(s) controlling
the copyright in such materials, this document may not be modified the copyright in such materials, this document may not be modified
outside the IETF Standards Process, and derivative works of it may outside the IETF Standards Process, and derivative works of it may
not be created outside the IETF Standards Process, except to format not be created outside the IETF Standards Process, except to format
it for publication as an RFC or to translate it into languages other it for publication as an RFC or to translate it into languages other
than English. than English.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Requirements Language and Terminology . . . . . . . . . . . . 3
3. Security of Messages Exchanged Between Servers and Relay 3. Security of Messages Exchanged Between Servers and Relay
Agents . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Agents . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
4. Security Considerations . . . . . . . . . . . . . . . . . . . 5 4. Security Considerations . . . . . . . . . . . . . . . . . . . 4
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5
6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 5 6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 5
7. References . . . . . . . . . . . . . . . . . . . . . . . . . 6 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 5
7.1. Normative References . . . . . . . . . . . . . . . . . . 6 7.1. Normative References . . . . . . . . . . . . . . . . . . 5
7.2. Informative References . . . . . . . . . . . . . . . . . 6 7.2. Informative References . . . . . . . . . . . . . . . . . 6
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 7 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 7
1. Introduction 1. Introduction
The Dynamic Host Configuration Protocol for IPv4 (DHCPv4) [RFC2131] The Dynamic Host Configuration Protocol for IPv4 (DHCPv4) [RFC2131]
and [RFC1542] has no guidance for how to secure messages exchanged and [RFC1542] has no guidance for how to secure messages exchanged
between servers and relay agents. The Dynamic Host Configuration between servers and relay agents. The Dynamic Host Configuration
Protocol for IPv6 (DHCPv6) [RFC3315] states that IPsec should be used Protocol for IPv6 (DHCPv6) [RFC3315] states that IPsec should be used
to secure messages exchanged between servers and relay agents, but to secure messages exchanged between servers and relay agents, but
does not recommend encryption. And, with recent concerns about does not recommend encryption. And, with recent concerns about
pervasive monitoring [RFC7258], it is appropriate to provide pervasive monitoring [RFC7258], it is appropriate to require use of
recommendations for DHCPv4 and also improve the recommendations for IPsec with encryption for relay to server communication for DHCPv4
DHCPv6. and require use of IPsec with encryption for relay to relay and relay
to server communication for DHCPv6.
2. Terminology 2. Requirements Language and Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
"OPTIONAL" in this document are to be interpreted as described in document are to be interpreted as described in [RFC2119] when they
[RFC2119]. appear in ALL CAPS. When these words are not in ALL CAPS (such as
"should" or "Should"), they have their usual English meanings, and
are not to be interpreted as [RFC2119] key words.
This document uses terminology from [RFC1542], [RFC2131], and This document uses terminology from [RFC1542], [RFC2131], and
[RFC3315]. [RFC3315].
3. Security of Messages Exchanged Between Servers and Relay Agents 3. Security of Messages Exchanged Between Servers and Relay Agents
The following text replaces the text in RFC3315 section 21.1 and also The following text replaces the text in RFC3315 section 21.1 and also
applies to DHCPv4 (RFC1542). This revised text essentially adds applies to DHCPv4 (RFC1542) for relay to server communication. This
encryption as relay agents may forward unencrypted client messages as revised text REQUIRES IPsec encryption of relay to relay and relay to
well as include additional sensitive information, such as vendor- server communications as relay agents may forward unencrypted client
specific information (for example, [CableLabs-DHCP]) and [RFC7839]. messages as well as include additional sensitive information, such as
While IPsec is not mandated for relay to relay, relay to server, and vendor-specific information (for example, [CableLabs-DHCP]) and
server to relay communication, it is highly recommended unless some [RFC7839]. By using IPsec with encryption, the potentially sensitive
other security mechanisms are already in place (such as VPN tunnels) communication between relays and servers is protected from pervasive
that protect this potentially sensitive traffic from pervasive
monitoring and other attacks. monitoring and other attacks.
Relay agents and servers that exchange messages securely use the Relay agents and servers MUST exchange messages securely using the
IPsec mechanisms for IPv6 [RFC4301]. If a client message is relayed IPsec mechanisms described in [RFC4301]. If a client message is
through multiple relay agents, each of the relay agents must have relayed through multiple relay agents, each of the relay agents MUST
established independent, pairwise trust relationships. That is, if have an established independent, pairwise trust relationships. That
messages from client C will be relayed by relay agent A to relay is, if messages from client C will be relayed by relay agent A to
agent B and then to the server, relay agents A and B must be relay agent B and then to the server, relay agents A and B MUST be
configured to use IPsec for the messages they exchange, and relay configured to use IPsec for the messages they exchange, and relay
agent B and the server must be configured to use IPsec for the agent B and the server MUST be configured to use IPsec for the
messages they exchange. messages they exchange.
Selectors Relay agents are manually configured with the Selectors Relay agents are manually configured with the
addresses of the relay agent or server to addresses of the relay agent or server to
which DHCP messages are to be forwarded. which DHCP messages are to be forwarded.
Each relay agent and server that will be Each relay agent and server that will be
using IPsec for securing DHCP messages must using IPsec for securing DHCP messages MUST
also be configured with a list of the relay also be configured with a list of the relay
agents to which messages will be returned. agents to which messages will be returned.
The selectors for the relay agents and The selectors for the relay agents and
servers will be the pairs of addresses servers will be the pairs of addresses
defining relay agents and servers and the defining relay agents and servers and the
direction of DHCP message exchange on DHCPv4 direction of DHCP message exchange on DHCPv4
UDP port 67 or DHCPv6 UDP port 547. UDP port 67 or DHCPv6 UDP port 547.
Mode Relay agents and servers MUST use IPsec in Mode Relay agents and servers MUST use IPsec in
transport mode and Encapsulating Security transport mode and Encapsulating Security
Payload (ESP). Payload (ESP).
Encryption and authentication algorithms Encryption and authentication algorithms
This document recommends combined mode This document REQUIRES combined mode
algorithms for ESP authenticated encryption, algorithms for ESP authenticated encryption,
ESP encryption algorithms, and ESP ESP encryption algorithms, and ESP
authentication algorithms as per section 2.1, authentication algorithms as per section 2.1,
2.2, and 2.3 of [RFC7321] respectively. 2.2, and 2.3 of [RFC7321] respectively.
Encryption is recommended as relay agents may Encryption is required as relay agents may
forward unencrypted client messages as well forward unencrypted client messages as well
as include additional sensitive information, as include additional sensitive information,
such as vendor-specific information (for such as vendor-specific information (for
example, [CableLabs-DHCP]) and [RFC7839]. example, [CableLabs-DHCP]) and [RFC7839].
Key management Because the relay agents and servers are used Key management Because both relay agents and servers tend to
within an organization, public key schemes be managed by a single organizational entity,
are not necessary. Because the relay agents public key schemes MAY be optional. Manually
and servers must be manually configured, configured key management MAY suffice, but
manually configured key management may does not provide defense against replayed
suffice, but does not provide defense against messages. Accordingly, IKEv2 [RFC7296] with
replayed messages. Accordingly, IKE preshared secrets SHOULD be supported. IKEv2
[RFC2409] / IKE2 [RFC7296] with preshared with public keys MAY be supported.
secrets SHOULD be supported. IKE/IKEv2 with Additional information on manual vs automated
public keys MAY be supported. Additional key management and when one should be used
information on manual vs automated key over the other can be found in [RFC4107].
management and when one should be used over
the other can be found in [RFC4107].
Security policy DHCP messages between relay agents and Security policy DHCP messages between relay agents and
servers should only be accepted from DHCP servers MUST only be accepted from DHCP peers
peers as identified in the local as identified in the local configuration.
configuration.
Authentication Shared keys, indexed to the source IP address Authentication Shared keys, indexed to the source IP address
of the received DHCP message, are adequate in of the received DHCP message, are adequate in
this application. this application.
Availability Appropriate IPsec implementations are likely
to be available for servers and for relay
agents in more full featured devices used in
enterprise and core ISP networks. IPsec is
less likely to be available for relay agents
in low end devices primarily used in the home
or small office markets.
4. Security Considerations 4. Security Considerations
As this document addresses securing messages exchanged between relay As this document only mandates securing messages exchanged between
agents and servers, the message exchanges between clients and the relay agents and servers, the message exchanges between clients and
first hop relay agent or server are not secured. Clients may follow the first hop relay agent or server are not secured. Clients may
the recommendations in [RFC7844] to minimize what information they follow the recommendations in [RFC7844] to minimize what information
expose or make use of [I-D.ietf-dhc-sedhcpv6] to secure communication they expose or make use of [I-D.ietf-dhc-sedhcpv6] to secure
between the client and server. communication between the client and server.
As mentioned in [RFC4552] section 14, the following are known As mentioned in [RFC4552] section 14, the following are known
limitations of the usage of manual keys: limitations of the usage of manual keys:
o As the sequence numbers cannot be negotiated, replay protection o As the sequence numbers cannot be negotiated, replay protection
cannot be provided. This leaves DHCP insecure against all the cannot be provided. This leaves DHCP insecure against all the
attacks that can be performed by replaying DHCP packets. attacks that can be performed by replaying DHCP packets.
o Manual keys are usually long lived (changing them often is a o Manual keys are usually long lived (changing them often is a
tedious task). This gives an attacker enough time to discover the tedious task). This gives an attacker enough time to discover the
keys. keys.
It should be noted if the recommendations in this document are It should be noted if the requirements in this document are followed,
followed, while the DHCP traffic on the wire between relays and while the DHCP traffic on the wire between relays and servers is
servers is encrypted, the unencrypted data may still be available encrypted, the unencrypted data may still be available through other
through other attacks on the DHCP servers, relays, and related attacks on the DHCP servers, relays, and related systems. Securing
systems. Securing these systems and the data in databases and logs these systems and the data in databases and logs also needs to be
also needs to be considered - on the systems themselves and if considered - on the systems themselves and if transferred over a
transferred over a network (i.e., to network attached storage, for network (i.e., to network attached storage, for backups, or to
backups, or to operational support systems). operational support systems).
Use of IPsec as described herein is also applicable to Lightweight Use of IPsec as described herein is also applicable to Lightweight
DHCPv6 Relay Agents [RFC6221], as they have a link-local address DHCPv6 Relay Agents [RFC6221], as they have a link-local address
which can be used to secure communication with their next hop which can be used to secure communication with their next hop
relay(s). relay(s).
5. IANA Considerations 5. IANA Considerations
This document has no requests of the fantastic IANA team. This document has no requests of the fantastic IANA team.
6. Acknowledgments 6. Acknowledgments
The motivation for this document was several IESG discusses on recent The motivation for this document was several IESG discusses on recent
DHCP relay agent options. DHCP relay agent options.
Thanks to Kim Kinnear and Jinmei Tatuya for reviewing drafts and Thanks to Kim Kinnear, Jinmei Tatuya, and Tomek Mrugalski for
helping to improve the document. And, thanks to the authors of reviewing drafts and helping to improve the document. And, thanks to
[RFC3315] for the original Section 21.1 text. the authors of [RFC3315] for the original Section 21.1 text.
7. References 7. References
7.1. Normative References 7.1. Normative References
[RFC1542] Wimer, W., "Clarifications and Extensions for the [RFC1542] Wimer, W., "Clarifications and Extensions for the
Bootstrap Protocol", RFC 1542, DOI 10.17487/RFC1542, Bootstrap Protocol", RFC 1542, DOI 10.17487/RFC1542,
October 1993, <http://www.rfc-editor.org/info/rfc1542>. October 1993, <http://www.rfc-editor.org/info/rfc1542>.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
skipping to change at page 6, line 46 skipping to change at page 6, line 33
7.2. Informative References 7.2. Informative References
[CableLabs-DHCP] [CableLabs-DHCP]
"CableLabs' DHCP Options Registry", "CableLabs' DHCP Options Registry",
<http://www.cablelabs.com/specification/ <http://www.cablelabs.com/specification/
cablelabs-dhcp-options-registry-2/>. cablelabs-dhcp-options-registry-2/>.
[I-D.ietf-dhc-sedhcpv6] [I-D.ietf-dhc-sedhcpv6]
Jiang, S., Li, L., Cui, Y., Jinmei, T., Lemon, T., and D. Jiang, S., Li, L., Cui, Y., Jinmei, T., Lemon, T., and D.
Zhang, "Secure DHCPv6", draft-ietf-dhc-sedhcpv6-15 (work Zhang, "Secure DHCPv6", draft-ietf-dhc-sedhcpv6-18 (work
in progress), October 2016. in progress), December 2016.
[RFC2409] Harkins, D. and D. Carrel, "The Internet Key Exchange
(IKE)", RFC 2409, DOI 10.17487/RFC2409, November 1998,
<http://www.rfc-editor.org/info/rfc2409>.
[RFC4107] Bellovin, S. and R. Housley, "Guidelines for Cryptographic [RFC4107] Bellovin, S. and R. Housley, "Guidelines for Cryptographic
Key Management", BCP 107, RFC 4107, DOI 10.17487/RFC4107, Key Management", BCP 107, RFC 4107, DOI 10.17487/RFC4107,
June 2005, <http://www.rfc-editor.org/info/rfc4107>. June 2005, <http://www.rfc-editor.org/info/rfc4107>.
[RFC4552] Gupta, M. and N. Melam, "Authentication/Confidentiality [RFC4552] Gupta, M. and N. Melam, "Authentication/Confidentiality
for OSPFv3", RFC 4552, DOI 10.17487/RFC4552, June 2006, for OSPFv3", RFC 4552, DOI 10.17487/RFC4552, June 2006,
<http://www.rfc-editor.org/info/rfc4552>. <http://www.rfc-editor.org/info/rfc4552>.
[RFC6221] Miles, D., Ed., Ooghe, S., Dec, W., Krishnan, S., and A. [RFC6221] Miles, D., Ed., Ooghe, S., Dec, W., Krishnan, S., and A.
 End of changes. 23 change blocks. 
86 lines changed or deleted 73 lines changed or added

This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/