< draft-gont-6man-oversized-header-chain-01.txt   draft-gont-6man-oversized-header-chain-02.txt >
IPv6 maintenance Working Group (6man) F. Gont IPv6 maintenance Working Group (6man) F. Gont
Internet-Draft SI6 Networks / UTN-FRH Internet-Draft SI6 Networks / UTN-FRH
Updates: 2460 (if approved) V. Manral Updates: 2460 (if approved) V. Manral
Intended status: Standards Track Hewlett-Packard Corp. Intended status: Standards Track Hewlett-Packard Corp.
Expires: October 7, 2012 April 5, 2012 Expires: December 15, 2012 June 13, 2012
Security and Interoperability Implications of Oversized IPv6 Header Security and Interoperability Implications of Oversized IPv6 Header
Chains Chains
draft-gont-6man-oversized-header-chain-01 draft-gont-6man-oversized-header-chain-02
Abstract Abstract
The IPv6 specification allows IPv6 header chains of an arbitrary The IPv6 specification allows IPv6 header chains of an arbitrary
size. The specification also allows options which can in turn extend size. The specification also allows options which can in turn extend
each of the headers. In those scenarios in which the IPv6 header each of the headers. In those scenarios in which the IPv6 header
chain or options are unusually long and packets are fragmented, or chain or options are unusually long and packets are fragmented, or
scenarios in which the fragment size is very small, the first scenarios in which the fragment size is very small, the first
fragment of a packet may fail to include the entire IPv6 header fragment of a packet may fail to include the entire IPv6 header
chain. This document discusses the interoperability and security chain. This document discusses the interoperability and security
problems of such traffic, and updates RFC 2460 such that all IPv6 problems of such traffic, and updates RFC 2460 such that the first
packets are required to contain the entire IPv6 header chain within fragment of a packet is required to contain the entire IPv6 header
the first "assumed Path-MTU" bytes of the packet. chain.
Status of this Memo Status of this Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. This document may not be modified, provisions of BCP 78 and BCP 79. This document may not be modified,
and derivative works of it may not be created, and it may not be and derivative works of it may not be created, and it may not be
published except as an Internet-Draft. published except as an Internet-Draft.
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 October 7, 2012. This Internet-Draft will expire on December 15, 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 29 skipping to change at page 2, line 29
Chains . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Chains . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. Forwarding Implications of Oversized IPv6 Header Chains . . . 5 3. Forwarding Implications of Oversized IPv6 Header Chains . . . 5
4. Security Implications of Oversized IPv6 Header Chains . . . . 6 4. Security Implications of Oversized IPv6 Header Chains . . . . 6
5. Updating RFC 2460 . . . . . . . . . . . . . . . . . . . . . . 7 5. Updating RFC 2460 . . . . . . . . . . . . . . . . . . . . . . 7
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8
7. Security Considerations . . . . . . . . . . . . . . . . . . . 9 7. Security Considerations . . . . . . . . . . . . . . . . . . . 9
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 10 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 10
9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 11 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 11
9.1. Normative References . . . . . . . . . . . . . . . . . . . 11 9.1. Normative References . . . . . . . . . . . . . . . . . . . 11
9.2. Informative References . . . . . . . . . . . . . . . . . . 11 9.2. Informative References . . . . . . . . . . . . . . . . . . 11
Appendix A. Changes from previous versions of the document Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 12
(to be removed by the RFC Editor before
publication of this document as a RFC . . . . . . . . 12
A.1. Changes from draft-gont-6man-oversized-header-chain-00 . . 12
A.2. Changes from draft-manral-6man-tiny-fragments-issues-00 . 12
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 13
1. Introduction 1. Introduction
[RFC2460] allows for an IPv6 header chain of an arbitrary size. It [RFC2460] allows for an IPv6 header chain of an arbitrary size. It
also allows the headers themselves to have options, which can change also allows the headers themselves to have options, which can change
the size of the headers. In those scenarios in which the IPv6 header the size of the headers. In those scenarios in which the IPv6 header
chain is unusually long and packets are fragmented, or scenarios in chain is unusually long and packets are fragmented, or scenarios in
which the fragment size is very small, the first fragment of a packet which the fragment size is very small, the first fragment of a packet
may fail to include the entire IPv6 header chain. This document may fail to include the entire IPv6 header chain. This document
discusses the interoperability and security problems of such traffic, discusses the interoperability and security problems of such traffic,
and updates RFC 2460 such that all IPv6 packets are required to and updates RFC 2460 such that the first fragment of a fragmented
contain the entire IPv6 header chain within the first "assumed Path- datagram is required to contain the entire IPv6 header chain.
MTU" [RFC1981] [RFC4821] bytes of the packet.
It should be noted that this requirement does not preclude the use of
e.g. IPv6 jumbo payloads but instead merely requires that all
*headers*, starting from IPv6 base header and continuing up to the
upper layer header (e.g. TCP or the like) be present in the first
fragment.
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 RFC 2119 [RFC2119]. document are to be interpreted as described in RFC 2119 [RFC2119].
2. Interoperability Implications of Oversized IPv6 Header Chains 2. Interoperability Implications of Oversized IPv6 Header Chains
Some transition technologies, such as NAT64 [RFC6146], may need to Some transition technologies, such as NAT64 [RFC6146], may need to
have access to the entire IPv6 header chain in order to associate an have access to the entire IPv6 header chain in order to associate an
incoming IPv6 packet with an ongoing "session". incoming IPv6 packet with an ongoing "session".
skipping to change at page 7, line 7 skipping to change at page 7, line 7
no option other than "blindly" allowing or blocking the corresponding no option other than "blindly" allowing or blocking the corresponding
fragment. If they blindly allow the packet, then the firewall can be fragment. If they blindly allow the packet, then the firewall can be
easily circumvented by intentionally sending fragmented packets that easily circumvented by intentionally sending fragmented packets that
fail to include the entire IPv6 header chain in the first fragment. fail to include the entire IPv6 header chain in the first fragment.
On the other hand, first-fragments that fail to include the entire On the other hand, first-fragments that fail to include the entire
IPv6 header chain have never been formally deprecated and thus, in IPv6 header chain have never been formally deprecated and thus, in
theory, might be legitimately generated. theory, might be legitimately generated.
5. Updating RFC 2460 5. Updating RFC 2460
All IPv6 packets MUST contain the entire IPv6 header chain within the If a packet is fragmented, the first fragment of the packet (i.e.,
first "assumed Path-MTU" bytes of the packet. If a packet is that with a Fragment Offset of 0) MUST contain the entire IPv6 header
fragmented, the first fragment of the packet (i.e., that with a chain.
Fragment Offset of 0) must contain the entire IPv6 header chain
within the first "assumed Path-MTU" [RFC1981] [RFC4821] bytes of the
packet.
Nodes that do not implement Path-MTU Discovery [RFC1981] [RFC4821]
must assume a Path-MTU of 1280 bytes (the minimum IPv6 MTU).
6. IANA Considerations 6. IANA Considerations
There are no IANA registries within this document. The RFC-Editor There are no IANA registries within this document. The RFC-Editor
can remove this section before publication of this document as an can remove this section before publication of this document as an
RFC. RFC.
7. Security Considerations 7. Security Considerations
This document describes the interoperability and security This document describes the interoperability and security
implications of IPv6 packets or first-fragments that fail to include implications of IPv6 packets or first-fragments that fail to include
the entire IPv6 header chain. The security implications include the the entire IPv6 header chain. The security implications include the
possibility of an attacker evading network security controls such as possibility of an attacker evading network security controls such as
firewalls and Network Intrusion Detection Systems (NIDS) [CPNI-IPv6]. firewalls and Network Intrusion Detection Systems (NIDS) [CPNI-IPv6].
This document updates RFC 2460 such that those packets are forbidden, This document updates RFC 2460 such that those packets are forbidden,
thus preventing the aforementioned issues. thus preventing the aforementioned issues.
8. Acknowledgements 8. Acknowledgements
The authors would like to thank (in alphabetical order) Dave Thaler The authors would like to thank (in alphabetical order) Ran Atkinson
for providing valuable comments on earlier versions of this document. and Dave Thaler for providing valuable comments on earlier versions
of this document.
9. References 9. References
9.1. Normative References 9.1. Normative References
[RFC1981] McCann, J., Deering, S., and J. Mogul, "Path MTU Discovery
for IP version 6", RFC 1981, August 1996.
[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.
[RFC2460] Deering, S. and R. Hinden, "Internet Protocol, Version 6 [RFC2460] Deering, S. and R. Hinden, "Internet Protocol, Version 6
(IPv6) Specification", RFC 2460, December 1998. (IPv6) Specification", RFC 2460, December 1998.
[RFC4821] Mathis, M. and J. Heffner, "Packetization Layer Path MTU
Discovery", RFC 4821, March 2007.
9.2. Informative References 9.2. Informative References
[RFC6146] Bagnulo, M., Matthews, P., and I. van Beijnum, "Stateful [RFC6146] Bagnulo, M., Matthews, P., and I. van Beijnum, "Stateful
NAT64: Network Address and Protocol Translation from IPv6 NAT64: Network Address and Protocol Translation from IPv6
Clients to IPv4 Servers", RFC 6146, April 2011. Clients to IPv4 Servers", RFC 6146, April 2011.
[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).
Appendix A. Changes from previous versions of the document (to be
removed by the RFC Editor before publication of this
document as a RFC
A.1. Changes from draft-gont-6man-oversized-header-chain-00
o The I-D now requires all packets to contain the entire IPv6 header
chain within the first "assumed Path-MTU" bytes of the packet
(rather than "within the first 1280 bytes of the packet", as
required by version -00 of this document).
A.2. Changes from draft-manral-6man-tiny-fragments-issues-00
o The I-D was largely re-written.
o The current I-D notes that the problem lies in packets (or first-
fragments) missing the entire IPv6 header chain, rather than on
the (small) size of the fragments.
Authors' Addresses Authors' Addresses
Fernando Gont Fernando Gont
SI6 Networks / UTN-FRH SI6 Networks / UTN-FRH
Evaristo Carriego 2644 Evaristo Carriego 2644
Haedo, Provincia de Buenos Aires 1706 Haedo, Provincia de Buenos Aires 1706
Argentina Argentina
Phone: +54 11 4650 8472 Phone: +54 11 4650 8472
Email: fgont@si6networks.com Email: fgont@si6networks.com
 End of changes. 11 change blocks. 
51 lines changed or deleted 21 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/
X-Generator: pyht 0.35