draft-ietf-csi-proxy-send-03.txt   draft-ietf-csi-proxy-send-04.txt 
CGA & SEND maintenance Working S. Krishnan CGA & SEND maintenance Working S. Krishnan
Group Ericsson Group Ericsson
Internet-Draft J. Laganier Internet-Draft J. Laganier
Intended status: Standards Track QUALCOMM Inc. Intended status: Experimental QUALCOMM Inc.
Expires: September 23, 2010 M. Bonola Expires: December 2, 2010 M. Bonola
Rome Tor Vergata University Rome Tor Vergata University
A. Garcia-Martinez A. Garcia-Martinez
UC3M UC3M
March 22, 2010 May 31, 2010
Secure Proxy ND Support for SEND Secure Proxy ND Support for SEND
draft-ietf-csi-proxy-send-03 draft-ietf-csi-proxy-send-04
Abstract Abstract
Secure Neighbor Discovery (SEND) specifies a method for securing Secure Neighbor Discovery (SEND) specifies a method for securing
Neighbor Discovery (ND) signaling against specific threats. As Neighbor Discovery (ND) signaling against specific threats. As
defined today, SEND assumes that the node sending a ND message is the defined today, SEND assumes that the node sending a ND message is the
owner of the address from which the message is sent, so that it is in owner of the address from which the message is sent, so that it is in
possession of the private key used to generate the digital signature possession of the private key used to generate the digital signature
on the message. This means that the Proxy ND signaling performed by on the message. This means that the Proxy ND signaling performed by
nodes that do not possess knowledge of the address owner's private nodes that do not possess knowledge of the address owner's private
key cannot be secured using SEND. This document extends the current key cannot be secured using SEND. This document extends the current
SEND specification in order to secure Proxy ND operation. SEND specification in order to secure Proxy ND operation.
Status of this Memo Status of this Memo
This Internet-Draft is submitted to IETF 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), its areas, and its working groups. Note that Task Force (IETF). Note that other groups may also distribute
other groups may also distribute working documents as Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts. 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."
The list of current Internet-Drafts can be accessed at This Internet-Draft will expire on December 2, 2010.
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on September 23, 2010.
Copyright Notice Copyright Notice
Copyright (c) 2010 IETF Trust and the persons identified as the Copyright (c) 2010 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
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Requirements notation . . . . . . . . . . . . . . . . . . . . 3 1. Requirements notation . . . . . . . . . . . . . . . . . . . . 3
2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5 3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5
4. Secure Proxy ND Overview . . . . . . . . . . . . . . . . . . . 6 4. Secure Proxy ND Overview . . . . . . . . . . . . . . . . . . . 6
5. Secure Proxy ND Specification . . . . . . . . . . . . . . . . 8 5. Secure Proxy ND Specification . . . . . . . . . . . . . . . . 8
5.1. Proxy Signature Option . . . . . . . . . . . . . . . . . . 8 5.1. Proxy Signature Option . . . . . . . . . . . . . . . . . . 8
5.2. Modified SEND processing rules . . . . . . . . . . . . . . 10 5.2. Modified SEND processing rules . . . . . . . . . . . . . . 10
5.2.1. Processing rules for senders . . . . . . . . . . . . . 10 5.2.1. Processing rules for senders . . . . . . . . . . . . . 10
5.2.2. Processing rules for receivers . . . . . . . . . . . . 11 5.2.2. Processing rules for receivers . . . . . . . . . . . . 11
5.3. Proxying Link-Local Addresses . . . . . . . . . . . . . . 12 5.3. Proxying Link-Local Addresses . . . . . . . . . . . . . . 12
6. Application Scenarios . . . . . . . . . . . . . . . . . . . . 13 6. Application Scenarios . . . . . . . . . . . . . . . . . . . . 13
6.1. Scenario 1: Mobile IPv6 . . . . . . . . . . . . . . . . . 13 6.1. Scenario 1: Mobile IPv6 . . . . . . . . . . . . . . . . . 13
6.2. Scenario 2: Proxy Mobile IPv6 . . . . . . . . . . . . . . 14 6.2. Scenario 2: Proxy Mobile IPv6 . . . . . . . . . . . . . . 14
6.3. Scenario 3: RFC 4389 Neighbor Discovery Proxy . . . . . . 16 6.3. Scenario 3: RFC 4389 Neighbor Discovery Proxy . . . . . . 17
7. Backward Compatibility with RFC3971 nodes and non-SEND 7. Backward Compatibility with RFC3971 nodes and non-SEND
nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
7.1. Backward Compatibility with RFC3971 nodes . . . . . . . . 19 7.1. Backward Compatibility with RFC3971 nodes . . . . . . . . 19
7.2. Backward Compatibility with non-SEND nodes . . . . . . . . 19 7.2. Backward Compatibility with non-SEND nodes . . . . . . . . 19
8. Security Considerations . . . . . . . . . . . . . . . . . . . 22 8. Security Considerations . . . . . . . . . . . . . . . . . . . 22
9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 23 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 23
10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 24 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 24
10.1. Normative References . . . . . . . . . . . . . . . . . . . 24 11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 25
10.2. Informative References . . . . . . . . . . . . . . . . . . 24 11.1. Normative References . . . . . . . . . . . . . . . . . . . 25
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 25 11.2. Informative References . . . . . . . . . . . . . . . . . . 25
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 27
1. Requirements notation 1. Requirements notation
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119]. document are to be interpreted as described in [RFC2119].
2. Introduction 2. Introduction
Secure Neighbor Discovery (SEND) [RFC3971] specifies a method for Secure Neighbor Discovery (SEND) [RFC3971] specifies a method for
securing Neighbor Discovery (ND) signaling [RFC4861] against specific securing Neighbor Discovery (ND) signaling [RFC4861] against specific
threats. As defined today, SEND assumes that the node sending a ND threats [RFC3756]. As defined today, SEND assumes that the node
message is the owner of the address from which the message is sent, sending a ND message is the owner of the address from which the
so that it is in possession of the private key used to generate the message is sent, so that it is in possession of the private key used
digital signature on the message. This means that the Proxy ND to generate the digital signature on the message. This means that
signaling performed by nodes that do not possess knowledge of the the Proxy ND signaling performed by nodes that do not possess
address owner's private key cannot be secured using SEND. knowledge of the address owner's private key cannot be secured using
SEND.
This document extends the current SEND specification with support for This document extends the current SEND specification with support for
Proxy ND. From this point on we refer to such extension as "Secure Proxy ND. From this point on we refer to such extension as "Secure
Proxy ND Support for SEND". Proxy ND Support for SEND".
3. Terminology 3. Terminology
Secure Proxy ND Secure ND Proxy
A node authorized to either modify or generate a SEND message A node authorized to either modify or generate a SEND message
without knowing the private key related to the source address of without knowing the private key related to the source address of
the ICMPv6 ND message. the ICMPv6 ND message.
Proxied IPv6 address Proxied IPv6 address
An IPv6 address that does not belong to the Secure Proxy ND and An IPv6 address that does not belong to the Secure ND Proxy and
for which the Secure Proxy ND is performing advertisements. for which the Secure ND Proxy is performing advertisements.
Non-SEND node Non-SEND node
An IPv6 node that does not implement the SEND [RFC3971] An IPv6 node that does not implement the SEND [RFC3971]
specification but uses only the ND protocol defined in [RFC4861] specification but uses only the ND protocol defined in [RFC4861]
and [RFC4862], without security. and [RFC4862], without security.
RFC3971 node RFC3971 node
An IPv6 node that does not implement the specification defined in An IPv6 node that does not implement the specification defined in
this document for Secure Proxy ND support, but uses only the SEND this document for Secure Proxy ND support, but uses only the SEND
specification as defined in [RFC3971]. specification as defined in [RFC3971].
SPND node SPND node
An IPv6 node that implements the specification defined in this An IPv6 node that receives and validates messages according to the
document for Secure Proxy ND support. specification defined in this document for Secure Proxy ND
support.
4. Secure Proxy ND Overview 4. Secure Proxy ND Overview
The original SEND specification [RFC3971] has implicitly assumed that The original SEND specification [RFC3971] has implicitly assumed that
only the node sending a ND message is the owner of the address from only the node sending a ND message is the owner of the address from
which the message is sent. This assumption does not allow proxying which the message is sent. This assumption does not allow proxying
of ND messages since the advertiser is required to generate a valid of ND messages since the advertiser is required to generate a valid
RSA Signature option, which in turns requires possession of the RSA Signature option, which in turns requires possession of the
public-private key pair that was used to generate a CGA, or that was public-private key pair that was used to generate a CGA, or that was
associated to a router certificate. associated to a router certificate.
skipping to change at page 6, line 30 skipping to change at page 6, line 30
which the purpose for which the certificate is issued has been which the purpose for which the certificate is issued has been
specified explicitly as described in a companion document specified explicitly as described in a companion document
[I-D.ietf-csi-send-cert]. Briefly, a KeyPurposeId value is [I-D.ietf-csi-send-cert]. Briefly, a KeyPurposeId value is
defined for authorizing proxies. The inclusion of the proxy defined for authorizing proxies. The inclusion of the proxy
authorization value allows the certificate owner to perform authorization value allows the certificate owner to perform
proxying of SEND messages for a range of addresses indicated in proxying of SEND messages for a range of addresses indicated in
the same certificate. This certificate can be exchanged through the same certificate. This certificate can be exchanged through
the Authorization Delegation Discovery process defined in the Authorization Delegation Discovery process defined in
[RFC3971]. [RFC3971].
o A new Neighbor Discovery option called Proxy Signature option o A new Neighbor Discovery option called Proxy Signature (PS)
(PSO). This option contains the hash value of the public key of option. This option contains the hash value of the public key of
the proxy, and the digital signature of the SEND message computed the proxy, and the digital signature of the SEND message computed
with the private key of the proxy. The hash of the public key of with the private key of the proxy. The hash of the public key of
the proxy is computed over the public key contained in the Secure the proxy is computed over the public key contained in the Secure
Proxy ND's certificate. When a ND message contains a PSO, it MUST Proxy ND's certificate. When a ND message contains a PS option,
NOT contain CGA and RSA Signature options. This option can be it MUST NOT contain CGA and RSA Signature options. This option
appended to any ND message: NA, NS, RS, RA and Redirect. can be appended to any ND message: NA, NS, RS, RA and Redirect.
o A modification of the SEND processing rules for all ND messages: o A modification of the SEND processing rules for all ND messages:
NA, NS, RS, RA, and Redirect. When any of these messages NA, NS, RS, RA, and Redirect. When any of these messages
containing a valid Proxy Signature option is validated, it is containing a valid Proxy Signature option is validated, it is
considered as secure. considered as secure.
These extensions are applied in the following way: These extensions are applied in the following way:
o A Secure Proxy ND which proxies ND messages on behalf of a node o A Secure ND Proxy which proxies ND messages on behalf of a node
can use the PSO option to protect the proxied messages. This can use the PS option to protect the proxied messages. This
Secure Proxy ND becomes part of the trusted infrastructure just Secure ND Proxy becomes part of the trusted infrastructure just
like a SEND router. like a SEND router.
o In order to allow nodes to successfully validate secured proxied o In order to allow nodes to successfully validate secured proxied
messages, the nodes must be aware of the Secure Proxy ND messages, the nodes must be aware of the Secure Proxy ND
certificate (in the format described in [I-D.ietf-csi-send-cert]) certificate (in the format described in [I-D.ietf-csi-send-cert])
and must apply the modified processing rules specified in this and must apply the modified processing rules specified in this
document. We call these nodes 'SPND nodes'. Note that the rules document. We call these nodes 'SPND nodes'. Note that the rules
for generating ND messages in SPND nodes do not change, so these for generating ND messages in SPND nodes do not change, so these
nodes behave as defined in [RFC3971] for sending ND messages. nodes behave as defined in [RFC3971] for sending ND messages.
o To allow SPND nodes to know the certificate path required to o To allow SPND nodes to know the certificate path required to
validate the public key of the proxy, devices responding to CPS validate the public key of the proxy, devices responding to CPS
(Certification Path Solicitation) messages with CPA (Certification (Certification Path Solicitation) messages with CPA (Certification
Path Advertisements) as defined in Section 6 of SEND specification Path Advertisements) as defined in Section 6 of SEND specification
[RFC3971] must handle the certificate format specified in [RFC3971] are extended to support the certificate format specified
[I-D.ietf-csi-send-cert], and must be configured with the in [I-D.ietf-csi-send-cert], and are configured with the
appropriate certification path. appropriate certification path.
The proposed approach resolves the incompatibilities between the
current SEND specification and the application scenarios described in
Section 6.
5. Secure Proxy ND Specification 5. Secure Proxy ND Specification
A Secure Proxy ND performs all the operations described in the SEND A Secure ND Proxy performs all the operations described in the SEND
specification [RFC3971] with the addition of new processing rules to specification [RFC3971] with the addition of new processing rules to
ensure that the receiving node can differentiate between an ensure that the receiving node can differentiate between an
authorized proxy generating or forwarding a SEND message for a authorized proxy generating or forwarding a SEND message for a
proxied address, and a malicious node doing the same. proxied address, and a malicious node doing the same.
This is accomplished by signing the message with the public key of This is accomplished by signing the message with the public key of
the authorized Secure Proxy ND. The signature of the ND Proxy is the authorized Secure ND Proxy. The signature of the ND Proxy is
included in a new option called Proxy Signature option (PSO). The included in a new option called Proxy Signature (PS) option. The
signature is performed over all the NDP options present in the signature is performed over all the NDP options present in the
message and the PSO is appended as the last option in the message. message and the PS option is appended as the last option in the
message.
5.1. Proxy Signature Option 5.1. Proxy Signature Option
The Proxy Signature option allows public key-based signatures to be The Proxy Signature option allows public key-based signatures to be
attached to NDP messages. The format of the PSO is described in the attached to NDP messages. The format of the PS option is described
following diagram: in the following diagram:
0 1 2 3 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 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 | Reserved | | Type | Length | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| Key Hash | | Key Hash |
| | | |
| | | |
skipping to change at page 8, line 48 skipping to change at page 8, line 49
. . . .
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
. . . .
. Padding . . Padding .
. . . .
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: PSO layout Figure 1: PS option layout
Type Type
TBA TBA
Length Length
The length of the option (including the Type, Length, Reserved, The length of the option (including the Type, Length, Reserved,
Key Hash, Digital Signature, and Padding fields) in units of 8 Key Hash, Digital Signature, and Padding fields) in units of 8
octets. octets.
skipping to change at page 10, line 23 skipping to change at page 10, line 23
Padding Padding
This variable-length field contains padding. The length of the This variable-length field contains padding. The length of the
padding field is determined by the length of the Proxy Signature padding field is determined by the length of the Proxy Signature
Option minus the length of the other fields. Option minus the length of the other fields.
5.2. Modified SEND processing rules 5.2. Modified SEND processing rules
The modifications described in the following section applies when a The modifications described in the following section applies when a
SEND message contains the Proxy Signature option (PSO), i.e. the SEND message contains the PS option, i.e. the message was sent by a
message was sent by a Secure Proxy ND. Secure ND Proxy.
This specification modifies the sender and receiver processing rules This specification modifies the sender and receiver processing rules
for the CGA and RSA options defined in the SEND specification defined in the SEND specification [RFC3971].
[RFC3971].
5.2.1. Processing rules for senders 5.2.1. Processing rules for senders
A ICMPv6 message sent by a Secure Proxy ND for a proxied address MUST A ICMPv6 message sent by a Secure ND Proxy for a proxied address MUST
contain a Proxy Signature option (PSO) and MUST NOT contain CGA and contain a PS option and MUST NOT contain either CGA or RSA Signature
RSA Signature options. options.
A Secure Proxy ND sending a SEND message with the PSO Signature A Secure ND Proxy sending a SEND message with the PS option MUST
option MUST construct the message as follows: construct the message as follows:
1. The SEND message is constructed without the PSO as follows: 1. The SEND message is constructed without the PS option as follows:
A. If the Secure Proxy ND is locally generating the SEND message A. If the Secure ND Proxy is locally generating the SEND message
for a proxied address, the message MUST be constructed as for a proxied address, the message MUST be constructed as
described in Neighbor Discovery for IP version 6 described in Neighbor Discovery for IP version 6
specification [RFC4861]. specification [RFC4861].
B. If the Secure Proxy ND is forwarding a SEND message, first B. If the Secure ND Proxy is forwarding a SEND message, first
the authenticity of the intercepted message MUST be verified the authenticity of the intercepted message MUST be verified
as specified in SEND specification [RFC3971], Section 5. If as specified in SEND specification [RFC3971], Section 5. If
the SEND message is valid, any CGA or RSA option MUST be the SEND message is valid, any CGA or RSA option MUST be
removed from the message. The intercepted message is finally removed from the message. The intercepted message is finally
modified as described in Section 4 of the ND Proxy modified as described in Section 4 of the ND Proxy
specification [RFC4389]. specification [RFC4389].
C. If the Secure Proxy ND is forwarding a SEND message already C. If the Secure ND Proxy is forwarding a SEND message already
containing a PSO, first the authenticity of the intercepted containing a PS option, first the authenticity of the
message is verified as specified in Section 5.2.2 of this intercepted message is verified as specified in Section 5.2.2
specification. If the SEND message is valid, the original of this specification. If the SEND message is valid, the
PSO MUST be removed from the message. The intercepted original PS option MUST be removed from the message. The
message is finally modified as described in Section 4 of the intercepted message is finally modified as described in
ND Proxy specification [RFC4389]. Section 4 of the ND Proxy specification [RFC4389].
2. Timestamp and Nonce options MUST be included according to the 2. Timestamp and Nonce options MUST be included according to the
rules specified in SEND [RFC3971]. The value in the Timestamp rules specified in SEND [RFC3971]. The value in the Timestamp
option MUST be generated by the Proxy. If the proxy is option MUST be generated by the proxy. If the proxy is
forwarding a message, the Nonce value in the proxied message MUST forwarding a message, the Nonce value in the proxied message MUST
be the same as in the forwarded message. be the same as in the forwarded message, otherwise it is
generated by the proxy.
3. The Proxy Signature option MUST be added as the last option in 3. The Proxy Signature option MUST be added as the last option in
the message. the message.
4. The data MUST be signed as explained in Section 5.1. 4. The data MUST be signed as explained in Section 5.1.
5.2.2. Processing rules for receivers 5.2.2. Processing rules for receivers
Any SEND message without a Proxy Signature option MUST be treated as Any SEND message without a Proxy Signature option MUST be treated as
specified in the SEND specification [RFC3971]. specified in the SEND specification [RFC3971].
A SEND message including a Proxy Signature option MUST be processed A SEND message including a Proxy Signature option MUST be processed
as specified below: as specified below:
1. The receiver MUST ignore any RSA and CGA options, as well as any 1. The receiver MUST ignore any RSA and CGA options, as well as any
options that might come after the first PSO. The options are options that might come after the first PS option. The options
ignored for both signature verification and NDP processing are ignored for both signature verification and NDP processing
purposes. purposes.
2. The Key Hash field MUST indicate the use of a known public key. 2. The Key Hash field MUST indicate the use of a known public key.
A valid certification path (see [RFC3971] Section 6.3) between A valid certification path (see [RFC3971] Section 6.3) between
the receiver's trust anchor and the sender's public key MUST be the receiver's trust anchor and the sender's public key MUST be
known. The Secure Proxy ND's X509v3 certificate MUST contain a known. The Secure Proxy ND's X509v3 certificate MUST contain a
extended key usage extension including the KeyPurposeId value for extended key usage extension including the KeyPurposeId value for
the proxy authorization. the proxy authorization.
3. The Digital Signature field MUST have correct encoding. 3. The Digital Signature field MUST have correct encoding.
4. The Digital Signature verification MUST show that the signature 4. The Digital Signature verification MUST show that the signature
has been calculated as specified in Section 5.1. has been calculated as specified in Section 5.1.
5. Timestamp and Nonce options MUST be processed as specified in 5. The Nonce option MUST be processed as specified in [RFC3971]
[RFC3971] Section 5.3.4, except for replacing 'RSA Signature Section 5.3.4, except for replacing 'RSA Signature option' by 'PS
option' by 'PSO option'. option'.
6. Messages with the Override bit [RFC4861] set MUST override an 6. The Timestamp option MUST be processed as specified in [RFC3971]
Section 5.3.4, except for replacing 'RSA Signature option' by 'PS
option'. The receiver SHOULD store the peer-related timing
information specified in [RFC3971] Section 5.3.4.1 and 5.3.4.2
(RDlast, TSlast) separately for each different proxy (which can
be identified by the different Key Hash values of the proxied
message) and separately from the timing information associated to
the IP of node for which the message is proxied. In this way, a
message received for the first time from a proxy (i.e. for which
there is no information stored in the cache) for which the
Timestamp option is checked, SHOULD be checked as messages
received from new peers (as in [RFC3971] section 5.3.4.2).
7. Messages with the Override bit [RFC4861] set MUST override an
existing cache entry regardless if it was created as a result of existing cache entry regardless if it was created as a result of
a RSA Signature option or a PSO option validation. When the a RSA Signature option or a PS option validation. When the
Override bit is not set, the advertisement MUST NOT update a Override bit is not set, the advertisement MUST NOT update a
cached link-layer address created securily by means of RSA cached link-layer address created securily by means of RSA
Signature option or PSO option validation. Signature option or PS option validation.
Messages that do not pass all the above tests MUST be silently Messages that do not pass all the above tests MUST be silently
discarded if the host has been configured to accept only secured ND discarded if the host has been configured to accept only secured ND
messages. messages.
5.3. Proxying Link-Local Addresses 5.3. Proxying Link-Local Addresses
Secure Neighbor Discovery [RFC3971] relies on certificates to prove Secure Neighbor Discovery [RFC3971] relies on certificates to prove
that routers are authorized to announce a certain prefix. However, that routers are authorized to announce a certain prefix. However,
Neighbor Discovery [RFC4861] states that router does not announce the Neighbor Discovery [RFC4861] states that router does not announce the
Link-Local prefix (fe80::/64). Hence, it is not required for a SEND Link-Local prefix (fe80::/64). Hence, it is not required for a SEND
certificate to hold a X.509 extension for IP addresses that certificate to hold a X.509 extension for IP addresses that
authorizes the fe80::/64 prefix. However, some scenarios ([RFC4389], authorizes the fe80::/64 prefix. However, some Secure Proxy ND
[RFC5213]) impose that the Secure ND proxy provides proxying function scenarios ([RFC4389], [RFC5213]) impose providing the proxying
for the Link-Local address of a node. When Secure ND proxy function for the Link-Local address of a node. When Secure ND proxy
functionality for a Link-Local address is required, either a list of functionality for a Link-Local address is required, either a list of
link-local addresses, or the fe80::/64 prefix MUST be explicitly link-local addresses, or the fe80::/64 prefix MUST be explicitly
authorized to be proxied in the corresponding certificate. authorized to be proxied in the corresponding certificate.
6. Application Scenarios 6. Application Scenarios
In this section we describe three different application scenarios for In this section we describe three different application scenarios for
which Secure Proxy ND Support for SEND can be applied. Note that the which Secure Proxy ND support for SEND can be applied. Note that the
particular way in which Secure Proxy ND support is applied (which ND particular way in which Secure Proxy ND support is applied (which ND
messages are proxied, in which directions, how the interaction with messages are proxied, in which directions, how the interaction with
non-SEND hosts and RFC3971 hosts is handled, etc.) largely depends on non-SEND hosts and RFC3971 hosts is handled, etc.) largely depends on
the particular scenario considered. In the first two scenarios the particular scenario considered. In the first two scenarios
presented below, ND messages are synthesized on behalf of off-link presented below, ND messages are synthesized on behalf of off-link
nodes. In the third one, ND message generation is trigged by the nodes. In the third one, ND message generation is trigged by the
reception of ND messages in other interfaces of the proxy. reception of ND messages in other interfaces of the proxy.
6.1. Scenario 1: Mobile IPv6 6.1. Scenario 1: Mobile IPv6
skipping to change at page 13, line 37 skipping to change at page 13, line 37
intercepted by the Home Agent (HA) on that home link, encapsulated intercepted by the Home Agent (HA) on that home link, encapsulated
and tunneled to the MN's registered Care-of Address (CoA). and tunneled to the MN's registered Care-of Address (CoA).
The HA intercepts these packets acting as a ND proxy for this MN. The HA intercepts these packets acting as a ND proxy for this MN.
When a NS is intercepted on the home link, the HA checks if the When a NS is intercepted on the home link, the HA checks if the
Target address within the NS matches with any of the MN's Home Target address within the NS matches with any of the MN's Home
Address in the Binding Cache and if so, it replies with a Neighbor Address in the Binding Cache and if so, it replies with a Neighbor
Advertisement (NA) constructed as described in [RFC4861], containing Advertisement (NA) constructed as described in [RFC4861], containing
its own link layer address (HA_LL) as the Target Link Layer Address its own link layer address (HA_LL) as the Target Link Layer Address
Option (TLLAO). Then a timestamp (generated by the proxy) and nonce Option (TLLAO). Then a timestamp (generated by the proxy) and nonce
(if appropriate, acccording to [RFC3971]), MUST be included. (if appropriate, according to [RFC3971]), MUST be included. Finally,
Finally, a PSO option signing the message MUST be included as the a PS option signing the message MUST be included as the last option
last option of the message. of the message.
Node (N) Home Agent (HA) Mobile Node (MN) Node (N) Home Agent (HA) Mobile Node (MN)
on Home Link on Home Link on Foreign Link on Home Link on Home Link on Foreign Link
| | | | | |
| SRC = N | | | SRC = N | |
| DST = solicited_node(MN) | | | DST = solicited_node(MN) | |
| ICMPv6 NS | | | ICMPv6 NS | |
| TARGET = MN | | | TARGET = MN | |
| SLLAO = N_LL | | | SLLAO = N_LL | |
| [CGA] | | | [CGA] | |
| RSA signature | | | RSA signature | |
|------------------------->| | |------------------------->| |
| | | | | |
| SRC = HA | | | SRC = HA | |
| DST = N | | | DST = N | |
| ICMPv6 NA | | | ICMPv6 NA | |
| TARGET = MN | | | TARGET = MN | |
| TLLAO = HA_LL | | | TLLAO = HA_LL | |
| PSO signature | | | PS signature | |
|<-------------------------| | |<-------------------------| |
| | | | | |
| traffic | | | traffic | |
| dest= MN HoA | | | dest= MN HoA | |
|------------------------->| | |------------------------->| |
| | | | | |
| | tunnelled traffic | | | tunnelled traffic |
| | dest= MN CoA | | | dest= MN CoA |
| |------------------------->| | |------------------------->|
| | | | | |
Figure 2: Proxy ND role of the Home agent in MIPv6 Figure 2: Proxy ND role of the Home agent in MIPv6
A node receiving the NA containing the PSO (e.g.: the CN in the home A node receiving the NA containing the PS option (e.g.: the CN in the
link, or a router) MUST apply the rules defined in Section 5.2.2. home link, or a router) MUST apply the rules defined in
Note that in this case the Override bit of the NA message is used to Section 5.2.2. Note that in this case the Override bit of the NA
control which messages should prevail each case: the message message is used to control which messages should prevail each case:
generated by the proxy once the MN moves from the home network, or the message generated by the proxy once the MN moves from the home
the MN if it comes back to the home link, as defined in the MIPv6 network, or the MN if it comes back to the home link, as defined in
specification [RFC3775] the MIPv6 specification [RFC3775]
6.2. Scenario 2: Proxy Mobile IPv6 6.2. Scenario 2: Proxy Mobile IPv6
Proxy Mobile IPv6 [RFC5213] is a network-based mobility management Proxy Mobile IPv6 [RFC5213] is a network-based mobility management
protocol that provides an IP mobility management support for MNs protocol that provides an IP mobility management support for MNs
without requiring MNs being involved in the mobility related without requiring MNs being involved in the mobility related
signaling. The IP mobility management is totally hidden to the MN in signaling. The IP mobility management is totally hidden to the MN in
a Proxy Mobile IPv6 domain and is performed by two functional a Proxy Mobile IPv6 domain and is performed by two functional
entities: the Local Mobility Anchor (LMA) and the Mobile Access entities: the Local Mobility Anchor (LMA) and the Mobile Access
Gateway (MAG). Gateway (MAG).
skipping to change at page 15, line 44 skipping to change at page 15, line 44
| |<------------- PBA ---| | |<------------- PBA ---|
| | | | | |
| Accept PBA | | Accept PBA |
| | | | | |
| |==== Bi-Dir Tunnel ===| | |==== Bi-Dir Tunnel ===|
| | | | | |
| SRC = MAG4MN | | | SRC = MAG4MN | |
| DST = MN | | | DST = MN | |
| ICMPv6 RA | | | ICMPv6 RA | |
| SLL = MAG_LL | | | SLL = MAG_LL | |
| PSO | | | PS | |
|<---------------------| | |<---------------------| |
| | | | | |
| | | | | |
| | | | | |
Figure 3: Mobile node's handover in PMIPv6 Figure 3: Mobile node's handover in PMIPv6
To avoid potential link-local address collisions between the MAG and To avoid potential link-local address collisions between the MAG and
the MN after a handoff to a new link, the Proxy Mobile IPv6 the MN after a handoff to a new link, the Proxy Mobile IPv6
specification requires the MAG's link-local address configured on the specification requires the MAG's link-local address configured on the
link to which the MN is attached to, to be generated once by the LMA link to which the MN is attached to, to be generated by the LMA when
when the MN first attach to a PMIPv6 domain, and to be provided to the MN first attach to a PMIPv6 domain, and to be provided to the new
the new MN's serving MAG after each handoff. Thus, from the MN's MN's serving MAG after each handoff. Thus, from the MN's point of
point of view, the MAG's link-local address remains constant for the view, the MAG's link-local address remains constant for the duration
duration of that MN's session. of that MN's session.
The approach described above and the current SEND specification are The approach described above and the current SEND specification are
incompatible since sharing the same link-local address on different incompatible since sharing the same link-local address on different
MAGs would require all MAGs of a PMIPv6 domain to construct the CGA MAGs would require all MAGs of a PMIPv6 domain to construct the CGA
and the RSA Signature option with the same public-private key pair, and the RSA Signature option with the same public-private key pair,
which is not acceptable from a security point of view. which is not acceptable from a security point of view.
Using different public-private key pairs on different MAGs would mean Using different public-private key pairs on different MAGs would mean
different MAGs use different CGAs as link-local address. Thus the different MAGs use different CGAs as link-local address. Thus the
serving MAG's link-local address changes after each handoff of the MN serving MAG's link-local address changes after each handoff of the MN
skipping to change at page 16, line 38 skipping to change at page 16, line 38
by means of a certificate associated to the PMIPv6 domain, by means of a certificate associated to the PMIPv6 domain,
authorizing each MAG to proxy securely ND messages. In addition, the authorizing each MAG to proxy securely ND messages. In addition, the
certificate must also authorize the MAG to advertise prefixes. Note certificate must also authorize the MAG to advertise prefixes. Note
that the inclusion of multiple KeyPurposeId values is supported by that the inclusion of multiple KeyPurposeId values is supported by
[I-D.ietf-csi-send-cert]. [I-D.ietf-csi-send-cert].
When a MAG replies to a RS with a RA, the source address MUST be When a MAG replies to a RS with a RA, the source address MUST be
equal to the MAG link-local address associated to the MN in this equal to the MAG link-local address associated to the MN in this
PMIPv6 domain and its own link layer address as Source link-layer PMIPv6 domain and its own link layer address as Source link-layer
address. Then a timestamp (generated by the proxy) and nonce (if address. Then a timestamp (generated by the proxy) and nonce (if
appropriate, acccording to [RFC3971]), MUST be included. Finally, a appropriate, according to [RFC3971]), MUST be included. Finally, a
PSO option signing the message MUST be included as the last option of PS option signing the message MUST be included as the last option of
the message. This procedure is followed for any other ND message the message. This procedure is followed for any other ND message
that could be generated by the MAG to a MN. that could be generated by the MAG to a MN.
A node receiving a message from the MAG containing the PSO MUST apply A node receiving a message from the MAG containing the PS option MUST
the rules defined in Section 5.2.2. apply the rules defined in Section 5.2.2. Note that unsolicited
messages sent by MAG are validated by the host according to timestamp
values specific to the MAG serving the link, not to any other MAG to
which the host has been connected before in other links.
6.3. Scenario 3: RFC 4389 Neighbor Discovery Proxy 6.3. Scenario 3: RFC 4389 Neighbor Discovery Proxy
The description of the problems for deploying SEND in this scenario The description of the problems for deploying SEND in this scenario
can be found in [I-D.ietf-csi-sndp-prob]. can be found in [I-D.ietf-csi-sndp-prob].
Link 1 Link 2 Link 1 Link 2
Host A ND Proxy (P) Host B Host A ND Proxy (P) Host B
| | | | | |
skipping to change at page 18, line 18 skipping to change at page 18, line 25
Address option - SLLAO, or a Target Local Link Address option - Address option - SLLAO, or a Target Local Link Address option -
TLLAO) is substituted with the link-layer address of the outgoing TLLAO) is substituted with the link-layer address of the outgoing
interface. interface.
2. Any CGA or RSA option MUST be removed. 2. Any CGA or RSA option MUST be removed.
3. If a Nonce option existed in the original message, its value MUST 3. If a Nonce option existed in the original message, its value MUST
be preserved in the proxied message. The Timestamp MUST be be preserved in the proxied message. The Timestamp MUST be
generated by the proxy. generated by the proxy.
4. The PSO option MUST be added as the last option in the message, 4. The PS option MUST be added as the last option in the message,
signing all the information contained so far in the message. signing all the information contained so far in the message.
When any other IPv6 unicast packet is received on a proxy interface, When any other IPv6 unicast packet is received on a proxy interface,
if it is not locally destined then it is forwarded unchanged (other if it is not locally destined then it is forwarded unchanged (other
than using a new link-layer header) to the proxy interface for which than using a new link-layer header) to the proxy interface for which
the next hop address appears in the neighbor cache. If no neighbor the next hop address appears in the neighbor cache. If no neighbor
cache entry is present, the ND proxy should queue the packet and cache entry is present, the ND proxy should queue the packet and
initiate a Neighbor Discovery signalling as if the ICMPv6 NS message initiate a Neighbor Discovery signalling as if the ICMPv6 NS message
were locally generated. were locally generated.
In order to deploy this scenario, nodes in proxied segments MUST know In order to deploy this scenario, nodes in proxied segments MUST know
the certificate authorizing proxy operation. To do so it could be the certificate authorizing proxy operation. To do so it could be
required to configure at least one device per each proxied segment required to configure at least one device per each proxied segment
(may be the proxy itself) to propagate the required certification (may be the proxy itself) to propagate the required certification
path to authorize proxy operation by means of a CPS/CPA exchange. path to authorize proxy operation by means of a CPS/CPA exchange.
While more robust mechanisms could be developed for securing the
scenario described in [RFC4389], if hosts have been upgraded to apply
the rules stated in Section 5.2.2, for example to benefit from secure
support for other scenarios, the application of this mechanism is
straighforward.
7. Backward Compatibility with RFC3971 nodes and non-SEND nodes 7. Backward Compatibility with RFC3971 nodes and non-SEND nodes
In this section we discuss the interaction of Secure Proxy ND nodes In this section we discuss the interaction of Secure ND Proxies and
and SPND nodes with RFC3971 nodes and non-SEND nodes. SPND nodes with RFC3971 nodes and non-SEND nodes.
7.1. Backward Compatibility with RFC3971 nodes 7.1. Backward Compatibility with RFC3971 nodes
RFC3971 nodes, i.e. SEND nodes not compliant with the modifications RFC3971 nodes, i.e. SEND nodes not compliant with the modifications
required in Section 5 cannot interpret correctly a PSO option required in Section 5 cannot interpret correctly a PS option received
received in a proxied ND message. These SEND nodes silently discard in a proxied ND message. These SEND nodes silently discard the PS
the PSO option, as specified in [RFC4861] for any unknown option. As option, as specified in [RFC4861] for any unknown option. As a
a result, these messages will be treated as unsecured as described in result, these messages will be treated as unsecured as described in
Section 8 "Transitions Issues" of the SEND specification [RFC3971]. Section 8 "Transitions Issues" of the SEND specification [RFC3971].
When RFC3971 nodes and SPND nodes exchange ND messages (without proxy When RFC3971 nodes and SPND nodes exchange ND messages (without proxy
intervention), in either direction, messages are generated according intervention), in either direction, messages are generated according
to the SEND specification [RFC3971], so these nodes interoperate to the SEND specification [RFC3971], so these nodes interoperate
seamlessly. seamlessly.
In the scenarios in which the proxy translates ND messages, the In the scenarios in which the proxy translates ND messages, the
messages to translate can either be originated in a RFC3971 node or messages to translate can either be originated in a RFC3971 node or
in an SPND node, without interoperability issues. in an SPND node, without interoperability issues.
7.2. Backward Compatibility with non-SEND nodes 7.2. Backward Compatibility with non-SEND nodes
Non-SEND nodes receiving NDP packets silently discard PSO options, as Non-SEND nodes receiving NDP packets silently discard PS options, as
specified in [RFC4861] for any unknown option. Therefore, these node specified in [RFC4861] for any unknown option. Therefore, these
interpret messages proxied by a Secure Proxy ND as any other ND nodes interpret messages proxied by a Secure ND Proxy as any other ND
message. message.
When non-SEND nodes and SPND nodes exchange ND messages (without When non-SEND nodes and SPND nodes exchange ND messages (without
proxy intervention), in either direction, the rules specified in proxy intervention), in either direction, the rules specified in
section 8 of [RFC3971] apply. section 8 of [RFC3971] apply.
A secure Proxy ND SHOULD support the use of secured and unsecured NDP A Secure ND Proxy SHOULD support the use of secured and unsecured NDP
messages at the same time, although it MAY have a configuration that messages at the same time, although it MAY have a configuration that
causes not to perform proxing for unsecured NDP messages. A secure causes not to perform proxing for unsecured NDP messages. A Secure
Proxy ND MAY also have a configuration option whereby it disables ND Proxy MAY also have a configuration option whereby it disables
secure ND proxying completely. This configuration SHOULD be switched secure ND proxying completely. This configuration SHOULD be switched
off by default, that is SEND is used. In the next paragraphs we off by default, that is SEND is used by default. In the next
discuss the recommended behavior of the Secure Proxy ND regarding to paragraphs we discuss the recommended behavior of the Secure ND Proxy
the protection level to provide to proxied messages in a mixed regarding to the protection level to provide to proxied messages in a
scenario involving SPND/RFC3971 nodes and non-SEND nodes. In mixed scenario involving SPND/RFC3971 nodes and non-SEND nodes. In
particular, two different situations occur depending on if the particular, two different situations occur depending on if the
proxied nodes are RFC3971 or SPND, or if they are non-SEND nodes. proxied nodes are RFC3971 or SPND, or if they are non-SEND nodes.
As a rule of thumb, if the proxied nodes can return to the link in As a rule of thumb, if the proxied nodes can return to the link in
which the proxy operates, the Secure Proxy ND MUST only generate PSO which the proxy operates, the Secure ND Proxy MUST only generate PS
options on behalf of nodes with SEND capabilities (i.e. that they options on behalf of nodes with SEND capabilities (i.e. that they
could use SEND to defend their messages if being in the same link could use SEND to defend their messages if being in the same link
than the proxy, either RFC3971 nodes or SPND nodes). This is than the proxy, either RFC3971 nodes or SPND nodes). This is
relevant to allow nodes preferring secured information over unsecured relevant to allow nodes preferring secured information over unsecured
one, and for executing the DAD procedure, as specified in [RFC3971]. one, and for executing the DAD procedure, as specified in [RFC3971].
Therefore, the Secure Proxy ND MUST generate messages containing the Therefore, the Secure ND Proxy MUST generate messages containing the
PSO option for SPND and RFC3971 hosts, and MUST NOT generate messages PS option for SPND and RFC3971 hosts, and MUST NOT generate messages
containing the PSO option for non-SEND nodes. Note that ND containing the PS option for non-SEND nodes. Note that ND
advertisements in response to solicitations generated by a Secure advertisements in response to solicitations generated by a Secure ND
Proxy ND must be secured or not according to the previous Proxy must be secured or not according to the previous considerations
considerations (i.e. to the nature of the proxied node), and not (i.e. to the nature of the proxied node), and not according to the
according to the secure or unsecure nature of the solicitation secure or unsecure nature of the solicitation message.
message.
To apply this rule, we have to consider that depending on the To apply this rule, we have to consider that depending on the
application scenario the proxy may translate ND messages generated by application scenario the proxy may translate ND messages generated by
a node or synthetise ND messages on behalf of a node that can return a node or synthetise ND messages on behalf of a node that can return
to the link in which the Secure Proxy ND operates. to the link in which the Secure ND Proxy operates.
o For translating ND messages for nodes that can arrive to the link o For translating ND messages for nodes that can arrive to the link
in which the proxy operates, the rule can be easily applied: only in which the proxy operates, the rule can be easily applied: only
messages validated in the Secure Proxy ND according to the SEND messages validated in the Secure ND Proxy according to the SEND
specification [RFC3971] MUST be proxied securely by the inclusion specification [RFC3971] MUST be proxied securely by the inclusion
of a PSO option. Unsecured ND messages could be proxied if of a PS option. Unsecured ND messages could be proxied if
unsecured operation is enabled in the proxy, but the message unsecured operation is enabled in the proxy, but the message
generated by the Secure Proxy ND for the received message MUST NOT generated by the Secure ND Proxy for the received message MUST NOT
include a PSO option. include a PS option.
o For synthesizing ND messages on behalf of remote nodes, different o For synthesizing ND messages on behalf of remote nodes, different
considerations should be made according to the particular considerations should be made according to the particular
application scenario. application scenario.
* For MIPv6, if the MN can return to the home link, it is * For MIPv6, if the MN can return to the home link, it is
required for the proxy to know if the node could use SEND to required for the proxy to know if the node could use SEND to
defend its address or not. A mismatch between the proxy and defend its address or not. A mismatch between the proxy and
proxied node behavior regarding to SEND operation would result proxied node behavior regarding to SEND operation would result
in unaproppriate operation. A HA including the PSO option for in unaproppriate operation. A HA including the PS option for
proxying a non-SEND MN would make ND messages sent by the proxy proxying a non-SEND MN would make ND messages sent by the proxy
to be more preferred than ND message of the non-SEND MN when to be more preferred than ND message of the non-SEND MN when
the MN returns to the home link (even if the proxied messages the MN returns to the home link (even if the proxied messages
have the Override bit set to 1). Not using the PSO option for have the Override bit set to 1). Not using the PS option for a
a RFC3971 or SPND MN would make more vulnerable the address in RFC3971 or SPND MN would make more vulnerable the address in
the home link when the MN is away than when it is in the home the home link when the MN is away than when it is in the home
link (and would defeat the purpose of the Secure Proxy ND link (and would defeat the purpose of the Secure Proxy ND
mechanism). Therefore, in this case the HA MUST know the SEND mechanism). Therefore, in this case the HA MUST know the SEND
capabilities of the MN, and MUST use PSO if the MN is a SPND or capabilities of the MN, and MUST use PS option if the MN is a
RFC3971 host, and MUST NOT use PSO for non-SEND hosts. SPND or RFC3971 host, and MUST NOT use PS option for non-SEND
hosts.
* For the Proxy Mobile IPv6 scenario, we have to note that a node * For the Proxy Mobile IPv6 scenario, we have to note that a node
moving from a link in which PSO has been used to protect a moving from a link in which PS option has been used to protect
link-layer address to a link in which ND messages are not a link-layer address to a link in which ND messages are not
protected by SEND would prevent the MN from adquiring the new protected by SEND would prevent the MN from adquiring the new
information until the cached information expires. However, in information until the cached information expires. However, in
this case it is reasonable to consider that all MAGs provide this case it is reasonable to consider that all MAGs provide
the same security for protecting ND messages, and that either the same security for protecting ND messages, and that either
all MAGs will behave as Secure Proxy ND, or none, so all MAGs will behave as Secure ND Proxy, or none, so
configuration could be easier. configuration could be easier.
8. Security Considerations 8. Security Considerations
The mechanism described in this document introduces a new Proxy The mechanism described in this document introduces a new Proxy
Signature Option (PSO) allowing a Secure Proxy ND to generate or Signature (PS) Option allowing a Secure ND Proxy to generate or
modify a SEND message for a proxied address. A SPND node will only modify a SEND message for a proxied address. A SPND node will only
accept such a message if it includes a valid PSO generated by an accept such a message if it includes a valid PS option generated by
authorized Secure Proxy ND. Such a message has equivalent protection an authorized Secure ND Proxy. Such a message has equivalent
to the threats presented in section 9 of [RFC3971] as a message protection to the threats presented in section 9 of [RFC3971] as a
signed with a RSA Signature option. message signed with a RSA Signature option.
The security of proxied ND messages not including a PSO option is the The security of proxied ND messages not including a PS option is the
same of an unsecured ND message. The security of a proxied ND same of an unsecured ND message. The security of a proxied ND
message received by a non-SEND host or RFC3971 host is the same of an message received by a non-SEND host or RFC3971 host is the same of an
unsecured ND message. unsecured ND message.
Thanks to the authorization certificate it is provisioned with, a Thanks to the authorization certificate it is provisioned with, a
proxy ND is authorized to issue ND signaling on behalf of nodes on proxy ND is authorized to issue ND signaling on behalf of nodes on
the subnet. Thus, a compromised proxy is able, like a compromised the subnet. Thus, a compromised proxy is able, like a compromised
router, to siphon off traffic from the host, or mount a man-in-the- router, to siphon off traffic from the host, or mount a man-in-the-
middle attack. However, when two on-link hosts communicate using middle attack. However, when two on-link hosts communicate using
their respective link-local addresses, the threats involved with a their respective link-local addresses, the threats involved with a
compromised router and a compromised proxy ND differs because the compromised router and a compromised proxy ND differs because the
router is not able to siphon off traffic exchanged between the hosts router is not able to siphon off traffic exchanged between the hosts
or mount a man-in-the-middle attack, while the proxy ND can, even if or mount a man-in-the-middle attack, while the proxy ND can, even if
the hosts use SEND. the hosts use SEND.
The messages for which a Secure Proxy ND performs its function, and The messages for which a Secure ND Proxy performs its function, and
the link for which this function is performed MUST be configured the link for which this function is performed MUST be configured
appropriately for each proxy and scenario. This configuration is appropriately for each proxy and scenario. This configuration is
specially relevant if Secure Proxy ND is used for translating ND specially relevant if Secure Proxy ND is used for translating ND
messages from one link to another. messages from one link to another.
Proper configuration of when the PSO option must or must not be Proper configuration of when the PS option must or must not be
included, depending on the proxied nodes being SEND or non-SEND may included, depending on the proxied nodes being SEND or non-SEND may
result in security considerations which are discussed in Section 7. result in security considerations which are discussed in Section 7.
Attacks to the timestamp of the secured ND message can be performed Attacks to the timestamp of the secured ND message can be performed
as described in section 7.3 of [I-D.ietf-csi-sndp-prob]. as described in section 7.3 of [I-D.ietf-csi-sndp-prob].
9. IANA Considerations 9. IANA Considerations
IANA is requested to allocate: IANA is requested to allocate:
A new IPv6 Neighbor Discovery Option type for the PSO, as TBA. A new IPv6 Neighbor Discovery Option type for the PS option, as
The value need to be allocated from the namespace specified in the TBA. The value need to be allocated from the namespace specified
IANA registry IPv6 NEIGHBOR DISCOVERY OPTION FORMATS located at in the IANA registry IPv6 NEIGHBOR DISCOVERY OPTION FORMATS
http://www.iana.org/assignments/icmpv6-parameters. located at http://www.iana.org/assignments/icmpv6-parameters.
A new 128-bit value under the CGA Message Type [RFC3972] A new 128-bit value under the CGA Message Type [RFC3972]
namespace, 0x09F5 2BE5 3B62 4C76 CB96 4E7F CDC9 2804. namespace, 0x09F5 2BE5 3B62 4C76 CB96 4E7F CDC9 2804.
10. References 10. Acknowledgements
10.1. Normative References The text has benefited from feedback provided by Jari Arkko, Jean-
Michel Combes, Roque Gagliano, Tony Cheneau and Marcelo Bagnulo.
11. References
11.1. Normative References
[I-D.ietf-csi-send-cert] [I-D.ietf-csi-send-cert]
Gagliano, R., Krishnan, S., and A. Kukec, "Certificate Gagliano, R., Krishnan, S., and A. Kukec, "Certificate
profile and certificate management for SEND", profile and certificate management for SEND",
draft-ietf-csi-send-cert-03 (work in progress), draft-ietf-csi-send-cert-03 (work in progress),
March 2010. March 2010.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
skipping to change at page 24, line 46 skipping to change at page 25, line 46
[RFC5213] Gundavelli, S., Leung, K., Devarapalli, V., Chowdhury, K., [RFC5213] Gundavelli, S., Leung, K., Devarapalli, V., Chowdhury, K.,
and B. Patil, "Proxy Mobile IPv6", RFC 5213, August 2008. and B. Patil, "Proxy Mobile IPv6", RFC 5213, August 2008.
[RSA] RSA Laboratories, "RSA Encryption Standard, Version 2.1", [RSA] RSA Laboratories, "RSA Encryption Standard, Version 2.1",
PKCS 1 , November 2002. PKCS 1 , November 2002.
[SHA1] National Institute of Standards and Technology, "Secure [SHA1] National Institute of Standards and Technology, "Secure
Hash Standard", FIPS PUB 180-1 , April 1995. Hash Standard", FIPS PUB 180-1 , April 1995.
10.2. Informative References 11.2. Informative References
[I-D.ietf-csi-sndp-prob] [I-D.ietf-csi-sndp-prob]
Combes, J., Krishnan, S., and G. Daley, "Securing Neighbor Combes, J., Krishnan, S., and G. Daley, "Securing Neighbor
Discovery Proxy: Problem Statement", Discovery Proxy: Problem Statement",
draft-ietf-csi-sndp-prob-04 (work in progress), draft-ietf-csi-sndp-prob-04 (work in progress),
January 2010. January 2010.
[RFC3756] Nikander, P., Kempf, J., and E. Nordmark, "IPv6 Neighbor
Discovery (ND) Trust Models and Threats", RFC 3756,
May 2004.
Authors' Addresses Authors' Addresses
Suresh Krishnan Suresh Krishnan
Ericsson Ericsson
8400 Decarie Blvd. 8400 Decarie Blvd.
Town of Mount Royal, QC Town of Mount Royal, QC
Canada Canada
Phone: +1 514 345 7900 x42871 Phone: +1 514 345 7900 x42871
Email: suresh.krishnan@ericsson.com Email: suresh.krishnan@ericsson.com
 End of changes. 76 change blocks. 
167 lines changed or deleted 180 lines changed or added

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