draft-ietf-v6ops-ra-guard-implementation-02.txt | draft-ietf-v6ops-ra-guard-implementation-03.txt | |||
---|---|---|---|---|
IPv6 Operations Working Group (v6ops) F. Gont | IPv6 Operations Working Group (v6ops) F. Gont | |||
Internet-Draft UK CPNI | Internet-Draft UK CPNI | |||
Intended status: BCP March 8, 2012 | Intended status: BCP May 11, 2012 | |||
Expires: September 9, 2012 | Expires: November 12, 2012 | |||
Implementation Advice for IPv6 Router Advertisement Guard (RA-Guard) | Implementation Advice for IPv6 Router Advertisement Guard (RA-Guard) | |||
draft-ietf-v6ops-ra-guard-implementation-02 | draft-ietf-v6ops-ra-guard-implementation-03 | |||
Abstract | Abstract | |||
The IPv6 Router Advertisement Guard (RA-Guard) mechanism is commonly | The IPv6 Router Advertisement Guard (RA-Guard) mechanism is commonly | |||
employed to mitigate attack vectors based on forged ICMPv6 Router | employed to mitigate attack vectors based on forged ICMPv6 Router | |||
Advertisement messages. Many existing IPv6 deployments rely on RA- | Advertisement messages. Many existing IPv6 deployments rely on RA- | |||
Guard as the first line of defense against the aforementioned attack | Guard as the first line of defense against the aforementioned attack | |||
vectors. However, some implementations of RA-Guard have been found | vectors. However, some implementations of RA-Guard have been found | |||
to be prone to circumvention by employing IPv6 Extension Headers. | to be prone to circumvention by employing IPv6 Extension Headers. | |||
This document describes the evasion techniques that affect the | This document describes the evasion techniques that affect the | |||
skipping to change at page 1, line 39 | skipping to change at page 1, line 39 | |||
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 September 9, 2012. | This Internet-Draft will expire on November 12, 2012. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2012 IETF Trust and the persons identified as the | Copyright (c) 2012 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 18 | skipping to change at page 2, line 18 | |||
described in the Simplified BSD License. | described in the Simplified BSD License. | |||
Table of Contents | Table of Contents | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
2. Evasion techniques for some Router Advertisement Guard (RA | 2. Evasion techniques for some Router Advertisement Guard (RA | |||
Guard) implementations . . . . . . . . . . . . . . . . . . . . 4 | Guard) implementations . . . . . . . . . . . . . . . . . . . . 4 | |||
2.1. Attack Vector based on IPv6 Extension Headers . . . . . . 4 | 2.1. Attack Vector based on IPv6 Extension Headers . . . . . . 4 | |||
2.2. Attack vector based on IPv6 fragmentation . . . . . . . . 4 | 2.2. Attack vector based on IPv6 fragmentation . . . . . . . . 4 | |||
3. RA-Guard implementation advice . . . . . . . . . . . . . . . . 8 | 3. RA-Guard implementation advice . . . . . . . . . . . . . . . . 8 | |||
4. Other Implications . . . . . . . . . . . . . . . . . . . . . . 10 | 4. Other Implications . . . . . . . . . . . . . . . . . . . . . . 11 | |||
5. Security Considerations . . . . . . . . . . . . . . . . . . . 11 | 5. Security Considerations . . . . . . . . . . . . . . . . . . . 12 | |||
6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 12 | 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 13 | |||
7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 13 | 7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 14 | |||
7.1. Normative References . . . . . . . . . . . . . . . . . . . 13 | 7.1. Normative References . . . . . . . . . . . . . . . . . . . 14 | |||
7.2. Informative References . . . . . . . . . . . . . . . . . . 13 | 7.2. Informative References . . . . . . . . . . . . . . . . . . 14 | |||
Appendix A. Changes from previous versions of the draft (to | Appendix A. Assessment tools . . . . . . . . . . . . . . . . . . 16 | |||
be removed by the RFC Editor before publication | Appendix B. Advice and guidance to vendors . . . . . . . . . . . 17 | |||
of this document as a RFC . . . . . . . . . . . . . . 15 | ||||
A.1. Changes from | ||||
draft-ietf-v6ops-ra-guard-implementation-00 . . . . . . . 15 | ||||
A.2. Changes from | ||||
draft-gont-v6ops-ra-guard-implementation-01 . . . . . . . 15 | ||||
A.3. Changes from | ||||
draft-gont-v6ops-ra-guard-implementation-00 . . . . . . . 15 | ||||
A.4. Changes from draft-gont-v6ops-ra-guard-evasion-01 . . . . 15 | ||||
Appendix B. Assessment tools . . . . . . . . . . . . . . . . . . 16 | ||||
Appendix C. Advice and guidance to vendors . . . . . . . . . . . 17 | ||||
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 18 | Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 18 | |||
1. Introduction | 1. Introduction | |||
IPv6 Router Advertisement Guard (RA-Guard) is a mitigation technique | IPv6 Router Advertisement Guard (RA-Guard) is a mitigation technique | |||
for attack vectors based on ICMPv6 Router Advertisement messages. | for attack vectors based on ICMPv6 Router Advertisement messages. | |||
[RFC6104] describes the problem statement of "Rogue IPv6 Router | [RFC6104] describes the problem statement of "Rogue IPv6 Router | |||
Advertisements", and [RFC6105] specifies the "IPv6 Router | Advertisements", and [RFC6105] specifies the "IPv6 Router | |||
Advertisement Guard" functionality. | Advertisement Guard" functionality. | |||
The basic concept behind RA-Guard is that a layer-2 device filters | The concept behind RA-Guard is that a layer-2 device filters ICMPv6 | |||
ICMPv6 Router Advertisement messages, according to a number of | Router Advertisement messages, according to a number of different | |||
different criteria. The most basic filtering criterion is that | criteria. The most basic filtering criterion is that Router | |||
Router Advertisement messages are discarded by the layer-2 device | Advertisement messages are discarded by the layer-2 device unless | |||
unless they are received on a specified port of the layer-2 device. | they are received on a specified port of the layer-2 device. | |||
Clearly, the effectiveness of the RA Guard mitigation relies on the | Clearly, the effectiveness of the RA Guard mitigation relies on the | |||
ability of the layer-2 device to identify ICMPv6 Router Advertisement | ability of the layer-2 device to identify ICMPv6 Router Advertisement | |||
messages. | messages. | |||
Some popular RA-Guard implementations have been found to be easy to | Some popular RA-Guard implementations have been found to be easy to | |||
circumvent by employing IPv6 extension headers [CPNI-IPv6]. This | circumvent by employing IPv6 extension headers [CPNI-IPv6]. This | |||
document describes such evasion techniques, and provides advice to | document describes such evasion techniques, and provides advice to | |||
RA-Guard implementers such that the aforementioned evasion vectors | RA-Guard implementers such that the aforementioned evasion vectors | |||
can be eliminated. | can be eliminated. | |||
skipping to change at page 8, line 12 | skipping to change at page 8, line 12 | |||
"Hdr Ext Len" field of the first Destination Options header is | "Hdr Ext Len" field of the first Destination Options header is | |||
present in the first fragment (rather than the second). | present in the first fragment (rather than the second). | |||
3. RA-Guard implementation advice | 3. RA-Guard implementation advice | |||
The following filtering rules MUST be implemented as part of an "RA- | The following filtering rules MUST be implemented as part of an "RA- | |||
Guard" implementation on those ports that are not allowed to send | Guard" implementation on those ports that are not allowed to send | |||
ICMPv6 Router Advertisement messages, such that the vulnerabilities | ICMPv6 Router Advertisement messages, such that the vulnerabilities | |||
discussed in this document are eliminated: | discussed in this document are eliminated: | |||
1. When trying to identify an ICMPv6 Router Advertisement message, | 1. If the IPv6 Source Address of the packet is not a link-local | |||
follow the IPv6 header chain, enforcing a limit on the maximum | address (fe80::/10), pass the packet. | |||
number of Extension Headers that is allowed for each packet. If | ||||
such limit is hit before the upper-layer protocol is identified, | ||||
silently drop the packet. | ||||
2. If the packet is identified to be an ICMPv6 Router Advertisement | Section 6.1.2 of [RFC4861] requires nodes to discard Router | |||
message, silently drop the packet. | Advertisement messages if their IPv6 Source Address is not a | |||
link-local address. | ||||
3. If the layer-2 device is unable to identify whether the packet is | 2. If the Hop Limit is not 255, pass the packet. | |||
Section 6.1.2 of [RFC4861] requires nodes to discard Router | ||||
Advertisement messages if their Hop Limit is not 255. | ||||
3. Try to identify whether the packet is an ICMPv6 Router | ||||
Advertisement message, by parsing the IPv6 header chain. When | ||||
doing so, enforce a limit on the maximum number of Extension | ||||
Headers that is allowed for each packet, and if such limit is hit | ||||
before the upper-layer protocol is identified, drop the packet. | ||||
[RFC6564] specifies a uniform format for IPv6 Extension | ||||
Header, thus meaning that an IPv6 node should be able to parse | ||||
an IPv6 header chain even if it contains Extension Headers | ||||
that are not currently supported by that node. | ||||
4. If the layer-2 device is unable to identify whether the packet is | ||||
an ICMPv6 Router Advertisement message or not (i.e., the packet | an ICMPv6 Router Advertisement message or not (i.e., the packet | |||
is a first-fragment, and the necessary information is missing), | is a first-fragment, and the necessary information is missing), | |||
the IPv6 Source Address of the packet is a link-local address or | ||||
the unspecified address (::), and the Hop Limit is 255, silently | ||||
drop the packet. | drop the packet. | |||
Note: This rule should only be applied to non-fragmented IPv6 | Note: This rule should only be applied to non-fragmented IPv6 | |||
datagrams and IPv6 fragments with a Fragment Offset of 0 (non- | datagrams and IPv6 fragments with a Fragment Offset of 0 (non- | |||
first fragments can be safely passed, since they will never | first fragments can be safely passed, since they will never | |||
reassemble into a complete datagram if they are part of a | reassemble into a complete datagram if they are part of a | |||
Router Advertisement received on a port where such packets are | Router Advertisement received on a port where such packets are | |||
not allowed). | not allowed). | |||
4. In all other cases, pass the packet as usual. | 5. If the packet is identified to be an ICMPv6 Router Advertisement | |||
message, drop the packet. | ||||
6. In all other cases, pass the packet as usual. | ||||
Note: For the purpose of enforcing the RA-Guard filtering policy, | Note: For the purpose of enforcing the RA-Guard filtering policy, | |||
an ESP header [RFC4303] should be considered to be an "upper-layer | an ESP header [RFC4303] should be considered to be an "upper-layer | |||
protocol" (that is, it should be considered the last header in the | protocol" (that is, it should be considered the last header in the | |||
IPv6 header chain). This means that packets employing ESP would | IPv6 header chain). This means that packets employing ESP would | |||
be passed by the RA-Guard device to the intended destination. If | be passed by the RA-Guard device to the intended destination. If | |||
the destination host does not have a security association with the | the destination host does not have a security association with the | |||
sender of the aforementioned IPv6 packet, the packet would be | sender of the aforementioned IPv6 packet, the packet would be | |||
dropped. Otherwise, if the packet is considered valid by the | dropped. Otherwise, if the packet is considered valid by the | |||
IPsec implementation at the receiving host and encapsulates a | IPsec implementation at the receiving host and encapsulates a | |||
Router Advertisement message, it is up to the receiving host what | Router Advertisement message, it is up to the receiving host what | |||
to do with such packet. | to do with such packet. | |||
In order to protect current end-node IPv6 implementations, Rule #3 | If a packet is dropped due to this filtering policy, then the packet | |||
drop event SHOULD be logged. The logging mechanism SHOULD include a | ||||
drop counter dedicated to RA-Guard packet drops. | ||||
In order to protect current end-node IPv6 implementations, Rule #4 | ||||
has been defined as a default rule to drop packets that cannot be | has been defined as a default rule to drop packets that cannot be | |||
positively identified as RA packets or not (perhaps due to the fact | positively identified as not being Router Advertisement (RA) messages | |||
that it contains fragments that do not contain the entire IPv6 header | (possibly because the packet contains fragments that do not contain | |||
chain). This means that, at least in theory, RA-Guard could result | the entire IPv6 header chain). This means that, at least in theory, | |||
in false-positive blocking of some legitimate non-RA packets that | RA-Guard could result in false-positive blocking of some legitimate | |||
could not be positively identified as being non-RA. In order to | non-RA packets that could not be positively identified as being | |||
reduce the likelihood of false positives, Rule #3 also requires that | non-RA. In order to reduce the likelihood of false positives, Rule | |||
an RA-Guard implementation check, before dropping an unidentifiable | #1 and Rule #2 require that packets that would not pass the required | |||
packet, that it has an IPv6 Source Address that is a link-local | validation checks for RA messages (Section 6.1.2 of [RFC4861]) be | |||
address or the unspecified address (::), and that the Hop Limit is | passed without further inspection. In any case, as noted in | |||
255. In any case, as noted in | ||||
[I-D.gont-6man-oversized-header-chain], IPv6 packets that fail to | [I-D.gont-6man-oversized-header-chain], IPv6 packets that fail to | |||
include the entire IPv6 header chain are anyway unlikely to survive | include the entire IPv6 header chain are anyway unlikely to survive | |||
in real networks. Whilst currently legitimate from a specifications | in real networks. Whilst currently legitimate from a specifications | |||
standpoint, they are virtually impossible to police with state-less | standpoint, they are virtually impossible to police with state-less | |||
filters and firewalls, and are hence likely to be blocked by such | filters and firewalls, and are hence likely to be blocked by such | |||
filters and firewalls. | filters and firewalls. | |||
This filtering policy assumes that host implementations require that | This filtering policy assumes that host implementations require that | |||
the IPv6 Source Address of ICMPv6 Router Advertisement messages be a | the IPv6 Source Address of ICMPv6 Router Advertisement messages be a | |||
link-local address, and that they discard the packet if this check | link-local address, and that they discard the packet if this check | |||
fails, as required by the current IETF specifications [RFC4861]. | fails, as required by the current IETF specifications [RFC4861]. | |||
Additionally, it assumes that hosts require the Hop Limit of Neighbor | Additionally, it assumes that hosts require the Hop Limit of Neighbor | |||
Discovery messages to be 255, and discard those packets otherwise. | Discovery messages to be 255, and discard those packets otherwise. | |||
Finally, note that the aforementioned filtering rules implicitly | The aforementioned filtering rules implicitly handle the case of | |||
handle the case of fragmented packets: if the RA-Guard device fails | fragmented packets: if the RA-Guard device fails to identify the | |||
to identify the upper-layer protocol as a result of the use of | upper-layer protocol as a result of the use of fragmentation, the | |||
fragmentation, the corresponding packets would be silently dropped. | corresponding packets would be dropped. | |||
Finally, we note that IPv6 implementations that allow overlapping | ||||
fragments (i.e. that do not comply with [RFC5722]) might still be | ||||
subject of RA-based attacks. However, a recent assessment of IPv6 | ||||
implementations [SI6-FRAG] with respect to their fragment reassembly | ||||
policy seems to indicate that most current implementations comply | ||||
with [RFC5722]. | ||||
4. Other Implications | 4. Other Implications | |||
A similar concept to that of "RA-Guard" has been implemented for | A similar concept to that of "RA-Guard" has been implemented for | |||
protecting against forged DHCPv6 messages. Such protection can be | protecting against forged DHCPv6 messages. Such protection can be | |||
circumvented with the same techniques discussed in this document, and | circumvented with the same techniques discussed in this document, and | |||
the counter-measures for such evasion attack are analogous to those | the counter-measures for such evasion attack are analogous to those | |||
described in Section 3 of this document. | described in Section 3 of this document. | |||
5. Security Considerations | 5. Security Considerations | |||
This document describes a number of techniques that have been found | This document describes a number of techniques that have been found | |||
to be effective to circumvent popular RA-Guard implementations, and | to be effective to circumvent popular RA-Guard implementations, and | |||
provides advice to RA-Guard implementations such that those evasion | provides advice to RA-Guard implementations such that those evasion | |||
vulnerabilities are eliminated. | vulnerabilities are eliminated. | |||
As noted in Section 3, IPv6 implementations that allow overlapping | ||||
fragments (i.e. that do not comply with [RFC5722]) might still be | ||||
subject of RA-based attacks. However, most current | ||||
implementations seem to comply with [RFC5722]. | ||||
We note that if an attacker sends a fragmented Router Advertisement | We note that if an attacker sends a fragmented Router Advertisement | |||
message on a port not allowed to send such packets, the first- | message on a port not allowed to send such packets, the first- | |||
fragment would be dropped, and the rest of the fragments would be | fragment would be dropped, and the rest of the fragments would be | |||
passed. This means that the victim node would tie memory buffers for | passed. This means that the victim node would tie memory buffers for | |||
the aforementioned fragments, which would never reassemble into a | the aforementioned fragments, which would never reassemble into a | |||
complete datagram. If a large number of such packets were sent by an | complete datagram. If a large number of such packets were sent by an | |||
attacker, and the victim node failed to implement proper resource | attacker, and the victim node failed to implement proper resource | |||
management for the fragment reassembly buffer, this could lead to a | management for the fragment reassembly buffer, this could lead to a | |||
Denial of Service (DoS). However, this does not really introduce a | Denial of Service (DoS). However, this does not really introduce a | |||
new attack vector, since an attacker could always perform the same | new attack vector, since an attacker could always perform the same | |||
skipping to change at page 12, line 8 | skipping to change at page 13, line 8 | |||
these attacks would be to prohibit the use of IPv6 fragmentation with | these attacks would be to prohibit the use of IPv6 fragmentation with | |||
Router Advertisement messages (as proposed by | Router Advertisement messages (as proposed by | |||
[I-D.gont-6man-nd-extension-headers]), such that the RA-Guard | [I-D.gont-6man-nd-extension-headers]), such that the RA-Guard | |||
functionality is easier to implement. However, since such mitigation | functionality is easier to implement. However, since such mitigation | |||
would require an update to existing implementations, it cannot be | would require an update to existing implementations, it cannot be | |||
relied upon in the short or near term. | relied upon in the short or near term. | |||
6. Acknowledgements | 6. Acknowledgements | |||
The author would like to thank Ran Atkinson, Karl Auer, Robert | The author would like to thank Ran Atkinson, Karl Auer, Robert | |||
Downie, Washam Fan, David Farmer, Marc Heuse, Ray Hunter, Simon | Downie, Washam Fan, David Farmer, Marc Heuse, Nick Hilliard, Ray | |||
Perreault, Arturo Servin, and Gunter van de Velde, for providing | Hunter, Simon Perreault, Arturo Servin, Gunter van de Velde, James | |||
valuable comments on earlier versions of this document. | Woodyatt, and Bjoern A. Zeeb, for providing valuable comments on | |||
earlier versions of this document. | ||||
The author would like to thank Arturo Servin, who presented this | The author would like to thank Arturo Servin, who presented this | |||
document at IETF 81. | document at IETF 81. | |||
This document resulted from the project "Security Assessment of the | This document resulted from the project "Security Assessment of the | |||
Internet Protocol version 6 (IPv6)" [CPNI-IPv6], carried out by | Internet Protocol version 6 (IPv6)" [CPNI-IPv6], carried out by | |||
Fernando Gont on behalf of the UK Centre for the Protection of | Fernando Gont on behalf of the UK Centre for the Protection of | |||
National Infrastructure (CPNI). The author would like to thank the | National Infrastructure (CPNI). The author would like to thank the | |||
UK CPNI, for their continued support. | UK CPNI, for their continued support. | |||
skipping to change at page 13, line 19 | skipping to change at page 14, line 19 | |||
[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. | |||
[RFC4303] Kent, S., "IP Encapsulating Security Payload (ESP)", | [RFC4303] Kent, S., "IP Encapsulating Security Payload (ESP)", | |||
RFC 4303, December 2005. | RFC 4303, December 2005. | |||
[RFC4861] Narten, T., Nordmark, E., Simpson, W., and H. Soliman, | [RFC4861] Narten, T., Nordmark, E., Simpson, W., and H. Soliman, | |||
"Neighbor Discovery for IP version 6 (IPv6)", RFC 4861, | "Neighbor Discovery for IP version 6 (IPv6)", RFC 4861, | |||
September 2007. | September 2007. | |||
[RFC5722] Krishnan, S., "Handling of Overlapping IPv6 Fragments", | ||||
RFC 5722, December 2009. | ||||
[RFC6564] Krishnan, S., Woodyatt, J., Kline, E., Hoagland, J., and | ||||
M. Bhatia, "A Uniform Format for IPv6 Extension Headers", | ||||
RFC 6564, April 2012. | ||||
7.2. Informative References | 7.2. Informative References | |||
[RFC6104] Chown, T. and S. Venaas, "Rogue IPv6 Router Advertisement | [RFC6104] Chown, T. and S. Venaas, "Rogue IPv6 Router Advertisement | |||
Problem Statement", RFC 6104, February 2011. | Problem Statement", RFC 6104, February 2011. | |||
[RFC6105] Levy-Abegnoli, E., Van de Velde, G., Popoviciu, C., and J. | [RFC6105] Levy-Abegnoli, E., Van de Velde, G., Popoviciu, C., and J. | |||
Mohacsi, "IPv6 Router Advertisement Guard", RFC 6105, | Mohacsi, "IPv6 Router Advertisement Guard", RFC 6105, | |||
February 2011. | February 2011. | |||
[I-D.gont-6man-oversized-header-chain] | [I-D.gont-6man-oversized-header-chain] | |||
Gont, F. and V. Manral, "Security and Interoperability | Gont, F. and V. Manral, "Security and Interoperability | |||
Implications of Oversized IPv6 Header Chains", | Implications of Oversized IPv6 Header Chains", | |||
draft-gont-6man-oversized-header-chain-00 (work in | draft-gont-6man-oversized-header-chain-01 (work in | |||
progress), February 2012. | progress), April 2012. | |||
[I-D.gont-6man-nd-extension-headers] | [I-D.gont-6man-nd-extension-headers] | |||
Gont, F., "Security Implications of the Use of IPv6 | Gont, F., "Security Implications of the Use of IPv6 | |||
Extension Headers with IPv6 Neighbor Discovery", | Extension Headers with IPv6 Neighbor Discovery", | |||
draft-gont-6man-nd-extension-headers-02 (work in | draft-gont-6man-nd-extension-headers-02 (work in | |||
progress), January 2012. | progress), January 2012. | |||
[CPNI-IPv6] | [CPNI-IPv6] | |||
Gont, F., "Security Assessment of the Internet Protocol | Gont, F., "Security Assessment of the Internet Protocol | |||
version 6 (IPv6)", UK Centre for the Protection of | version 6 (IPv6)", UK Centre for the Protection of | |||
National Infrastructure, (available on request). | National Infrastructure, (available on request). | |||
[NDPMon] "NDPMon - IPv6 Neighbor Discovery Protocol Monitor", | [NDPMon] "NDPMon - IPv6 Neighbor Discovery Protocol Monitor", | |||
<http://ndpmon.sourceforge.net/>. | <http://ndpmon.sourceforge.net/>. | |||
[rafixd] "rafixd", <http://www.kame.net/dev/cvsweb2.cgi/kame/kame/ | [rafixd] "rafixd", <http://www.kame.net/dev/cvsweb2.cgi/kame/kame/ | |||
kame/rafixd/>. | kame/rafixd/>. | |||
[ramond] "ramond", <http://ramond.sourceforge.net/>. | [ramond] "ramond", <http://ramond.sourceforge.net/>. | |||
[THC-IPV6] | [SI6-FRAG] | |||
"THC-IPV6", <http://www.thc.org/thc-ipv6/>. | SI6 Networks, "IPv6 NIDS evasion and improvements in IPv6 | |||
fragmentation/reassembly", 2012, <http:// | ||||
Appendix A. Changes from previous versions of the draft (to be removed | blog.si6networks.com/2012/02/ | |||
by the RFC Editor before publication of this document as a | ipv6-nids-evasion-and-improvements-in.html>. | |||
RFC | ||||
A.1. Changes from draft-ietf-v6ops-ra-guard-implementation-00 | ||||
o The filtering rules in Section 3 have been further clarified. | ||||
A.2. Changes from draft-gont-v6ops-ra-guard-implementation-01 | ||||
o Document resubmitted as draft-ietf to reflect wg adoption. | ||||
A.3. Changes from draft-gont-v6ops-ra-guard-implementation-00 | ||||
o Miscellaneous (minor) editorial changes. | ||||
o The filtering rules in Section 3 have been polished. | ||||
A.4. Changes from draft-gont-v6ops-ra-guard-evasion-01 | ||||
o The contents were updated to reflect that the evasion | ||||
vulnerabilities are based on implementation flaws, rather than on | ||||
the RA-Guard "concept" itself. | ||||
o The I-D now focuses on providing advice to RA-Guard implementers. | [THC-IPV6] | |||
"The Hacker's Choice IPv6 Attack Toolkit", | ||||
<http://www.thc.org/thc-ipv6/>. | ||||
Appendix B. Assessment tools | Appendix A. Assessment tools | |||
CPNI has produced assessment tools (which have not yet been made | CPNI has produced assessment tools (which have not yet been made | |||
publicly available) to assess RA-Guard implementations with respect | publicly available) to assess RA-Guard implementations with respect | |||
to the issues described in this document. If you think that you | to the issues described in this document. If you think that you | |||
would benefit from these tools, we might be able to provide a copy of | would benefit from these tools, we might be able to provide a copy of | |||
the tools (please contact Fernando Gont at fernando@gont.com.ar). | the tools (please contact Fernando Gont at fernando@gont.com.ar). | |||
[THC-IPV6] is a publicly-available set of tools that implements some | [THC-IPV6] is a publicly-available set of tools that implements some | |||
of the techniques described in this document. | of the techniques described in this document. | |||
Appendix C. Advice and guidance to vendors | Appendix B. Advice and guidance to vendors | |||
Vendors are urged to contact CSIRTUK (csirt@cpni.gsi.gov.uk) if they | Vendors are urged to contact CSIRTUK (csirt@cpni.gsi.gov.uk) if they | |||
think they may be affected by the issues described in this document. | think they may be affected by the issues described in this document. | |||
As the lead coordination centre for these issues, CPNI is well placed | As the lead coordination centre for these issues, CPNI is well placed | |||
to give advice and guidance as required. | to give advice and guidance as required. | |||
CPNI works extensively with government departments and agencies, | CPNI works extensively with government departments and agencies, | |||
commercial organisations and the academic community to research | commercial organisations and the academic community to research | |||
vulnerabilities and potential threats to IT systems especially where | vulnerabilities and potential threats to IT systems especially where | |||
they may have an impact on Critical National Infrastructure's (CNI). | they may have an impact on Critical National Infrastructure's (CNI). | |||
End of changes. 21 change blocks. | ||||
87 lines changed or deleted | 96 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |