RFC 7126
Recommendations on Filtering of IPv4 Packets Containing IPv4 Options
RFC 7126: Recommendations on Filtering of IPv4 Packets Containing IPv4 Options โจ
Okay bestie, here's the title block, so you know what you're dealing with ๐
- Number: RFC 7126
- Title: Recommendations on Filtering of IPv4 Packets Containing IPv4 Options
- Authors: F. Gont (UTN-FRH / SI6 Networks), R. Atkinson (Consultant), C. Pignataro (Cisco)
- Category: Best Current Practice, BCP: 186
- ISSN: 2070-1721
- Date: February 2014 ๐ธ
- Obsoletes / Updates: none listed in the title block ๐
Abstract ๐
So this doc gives advice on filtering IPv4 packets based on the IPv4 options they carry. It also talks about the operational and interoperability fallout of dropping packets just because of the options inside them. Iykyk, it's a whole thing ๐
Status of This Memo ๐
This memo documents an Internet Best Current Practice ๐ฆ
It's a product of the Internet Engineering Task Force (IETF), and the Internet Engineering Steering Group (IESG) approved it for publication. If you want more on BCPs, check Section 2 of RFC 5741.
Want the current status, any errata, or a way to send feedback? Head to http://www.rfc-editor.org/info/rfc7126 โจ
Copyright Notice ยฉ๏ธ
Copyright (c) 2014 IETF Trust and the persons identified as the document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) as they stand on the date this document was published. Please read these carefully, because they spell out your rights and restrictions for this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions, and they come without warranty as described in the Simplified BSD License ๐ฅ
Table of Contents ๐บ๏ธ
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1. Terminology and Conventions Used in This Document . . . . 3
1.2. Operational Focus . . . . . . . . . . . . . . . . . . . . 4
2. IP Options . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. General Security Implications of IP Options . . . . . . . . . 5
3.1. Processing Requirements . . . . . . . . . . . . . . . . . 5
4. Advice on the Handling of Packets with Specific IP Options . 7
4.1. End of Option List (Type = 0) . . . . . . . . . . . . . . 7
4.2. No Operation (Type = 1) . . . . . . . . . . . . . . . . . 7
4.3. Loose Source and Record Route (LSRR) (Type = 131) . . . . 8
4.4. Strict Source and Record Route (SSRR) (Type = 137) . . . 10
4.5. Record Route (Type = 7) . . . . . . . . . . . . . . . . . 11
4.6. Stream Identifier (Type = 136) (obsolete) . . . . . . . . 12
4.7. Internet Timestamp (Type = 68) . . . . . . . . . . . . . 13
4.8. Router Alert (Type = 148) . . . . . . . . . . . . . . . . 14
4.9. Probe MTU (Type = 11) (obsolete) . . . . . . . . . . . . 15
4.10. Reply MTU (Type = 12) (obsolete) . . . . . . . . . . . . 16
4.11. Traceroute (Type = 82) . . . . . . . . . . . . . . . . . 16
4.12. DoD Basic Security Option (Type = 130) . . . . . . . . . 17
4.13. DoD Extended Security Option (Type = 133) . . . . . . . . 20
4.14. Commercial IP Security Option (CIPSO) (Type = 134) . . . 22
4.15. VISA (Type = 142) . . . . . . . . . . . . . . . . . . . . 23
4.16. Extended Internet Protocol (Type = 145) . . . . . . . . . 24
4.17. Address Extension (Type = 147) . . . . . . . . . . . . . 25
4.18. Sender Directed Multi-Destination Delivery (Type = 149) . 25
4.19. Dynamic Packet State (Type = 151) . . . . . . . . . . . . 26
4.20. Upstream Multicast Pkt. (Type = 152) . . . . . . . . . . 26
4.21. Quick-Start (Type = 25) . . . . . . . . . . . . . . . . . 27
4.22. RFC3692-Style Experiment (Types = 30, 94, 158, and 222) . 28
4.23. Other IP Options . . . . . . . . . . . . . . . . . . . . 29
5. Security Considerations . . . . . . . . . . . . . . . . . . . 31
6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 31
7. References . . . . . . . . . . . . . . . . . . . . . . . . . 31
7.1. Normative References . . . . . . . . . . . . . . . . . . 31
7.2. Informative References . . . . . . . . . . . . . . . . . 32
1. Introduction ๐
Okay so this doc is all about filtering IPv4 packets based on the IPv4 options they contain. Various protocols might use IPv4 options to some extent, so dropping packets based on their options can mess with how those protocols work. That's why this doc tries to cover the operational and interoperability implications of dropping them. It also lays out what a network operator might do in typical enterprise or Service Provider environments. Bonus: it draws on and is partly derived from [RFC6274], which the operational community also reviewed ๐ง
Now, the data shows there's a current, widespread practice of blocking IPv4 optioned packets. There are a bunch of plausible ways to cut down the potential harm from these packets while still letting some option semantics through. One approach is to allow specific options that are expected or needed, with a default deny. Another is to deny the unneeded options and default to allow. A third is to allow end-to-end semantics by ignoring options and treating packets as un-optioned while they're in transit. Experiments and available data tend to back up the first or third approaches as more realistic ๐ You can see some of the current state of affairs around dropping packets with IP options in [MEDINA] and [FONSECA]. Also, [BREMIER-BARR] points out that the deployed Internet already has lots of routers that don't process IP options ๐
Another thing: this doc gives advice on dropping packets on a "per IP option type" basis, but not every device (routers, security gateways, and firewalls) can do it at that granularity. And even when the functionality exists, an operator might want a dropping policy with a coarser granularity than "per IP option type", as mentioned above ๐
Finally, when intermediate systems don't need to process IP options, a common approach is to just ignore the options and process those packets as if they had no IP options at all โจ
1.1. Terminology and Conventions Used in This Document ๐
The terms "fast path", "slow path", and related relative terms ("faster path" and "slower path") are loosely defined as in Section 2 of [RFC6398].
Because this doc is so security-focused, we deliberately include some historical citations. The goal is to explicitly keep and show the history, and to clear up ambiguity and confusion. Periodt ๐
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119].
1.2. Operational Focus ๐ซถ
Every recommendation in this doc was made to optimize for operational community consensus, as best the authors could work out. That meant not only accepting feedback from public lists, but also taking off-list feedback from people at various network operators (e.g., Internet Service Providers, content providers, educational institutions, commercial firms). Community energy ๐
2. IP Options ๐ฆ
IP options let you extend the Internet Protocol. As specified in [RFC0791], an option can have one of two formats:
- Case 1: A single byte of option-type.
- Case 2: An option-type byte, an option-length byte, and the actual option-data bytes.
IP options of Case 1 look like this:
+-+-+-+-+-+-+-+-+- - - - - - - - -
| option-type | option-data
+-+-+-+-+-+-+-+-+- - - - - - - - -
For Case 1 options, the length is implicitly specified by the option-type byte.
IP options of Case 2 look like this:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- - - - - - - - -
| option-type | option-length | option-data
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- - - - - - - - -
In this case, the option-length byte counts the option-type byte, the option-length byte, and the actual option-data bytes ๐ข
All current and future options, except "End of Option List" (Type = 0) and "No Operation" (Type = 1), are of Class 2. Slay ๐
The option-type has three fields:
- 1 bit: copied flag.
- 2 bits: option class.
- 5 bits: option number.
The copied flag tells you whether this option should be copied to all fragments if the packet carrying it needs fragmenting:
- 0 = not copied.
- 1 = copied.
The values for the option class are:
- 0 = control.
- 1 = reserved for future use.
- 2 = debugging and measurement.
- 3 = reserved for future use.
This format makes room for new options to extend the Internet Protocol (IP) โจ
Finally, the option number identifies the syntax of the rest of the option ๐ง
The "IP OPTION NUMBERS" registry [IANA-IP] has the list of the currently assigned IP option numbers ๐
3. General Security Implications of IP Options ๐
3.1. Processing Requirements ๐
Okay so, back in the day, most IP routers ran everything on one general-purpose CPU ๐ฅน. That same little brain also handled network management traffic (like SNMP), configuration commands (like the command line interface), routing protocols (like RIP, OSPF, BGP, and IS-IS), and other control protocols (like RSVP and ICMP). Packet filtering that was turned on for the router or a router interface usually landed on that CPU too. A router built this way can have a big Distributed Denial-of-Service (DDoS) attack risk ๐ญ. If a flood of IPv4 packets carrying IPv4 options overwhelms the router's control plane (like that CPU), things get messy fast.
From about 1995 onwards, more and more routers started using silicon built for IP packet processing (that's Field-Programmable Gate Array (FPGA) and Application-Specific Integrated Circuit (ASIC) stuff โจ). This split forwarding off from the router's other jobs, and it's giving resilience ๐ช. These designs tend to hold up better against the kinds of DDoS attacks you might see on the global public Internet. Depending on implementation and configuration details, a router with a silicon packet-forwarding engine can handle a lot of IP packets with IP options without hurting its forwarding rates or its control plane (like the general-purpose CPU). Some implementations have one simple config knob that forwards every packet with IP options at wire-speed in silicon, as if those options weren't there ("ignore options & forward"). Others can do wire-speed silicon-based filtering, which means they can selectively drop packets with certain options ("drop"), ignore the options on packets with certain other options and forward them ("ignore options & forward"), and process the options on packets with different ones ("process option & forward") while the packet is being forwarded. That processing can happen on a general-purpose CPU or in custom logic like an FPGA or ASIC ๐ง.
Broadly speaking, any IP packet that needs the router's general-purpose CPU can be a DDoS risk to that CPU, and therefore to the router itself ๐. At present, though, you really have to understand the specific architecture and engineering of the router in question before you can judge the operational security risk of a given packet type or IP option type. It's all about the details, bestie ๐ .
Operators are urged to think about what potential IP routers can do for IP option filtering and handling when they make deployment decisions in the future ๐ฎ.
More considerations for protecting the control plane from packets containing IP options can be found in [RFC6192] ๐.
Last but not least, this document isn't just for operators. It also gives advice to router, security gateway, and firewall implementers on providing the ability to filter packets at different granularities ๐. That means both a "per IP option type" granularity (for maximum flexibility) and coarser filters (to keep configuration complexity down) ๐.
4. Advice on the Handling of Packets with Specific IP Options โจ
The subsections below describe each IP option that has been specified so far. They also cover possible interoperability implications if packets containing those options get dropped, plus specific advice on whether to drop packets with each option in a typical enterprise or Service Provider environment ๐ฆ.
4.1. End of Option List (Type = 0) ๐ธ
4.1.1. Uses
This option signals the "end of options" in cases where the end of options wouldn't line up with the end of the Internet Protocol header ๐.
4.1.2. Option Specification
Specified in RFC 791 [RFC0791] ๐.
4.1.3. Threats
No specific security issues are known for this IPv4 option ๐ซถ.
4.1.4. Operational and Interoperability Impact if Blocked
Packets with any IP options are likely to include an End of Option List ๐. So if you drop packets containing this option, it's very likely you're blocking legitimate traffic ๐ญ.
4.1.5. Advice
Routers, security gateways, and firewalls SHOULD NOT drop packets because they contain this option ๐ โโ๏ธ๐.
4.2. No Operation (Type = 1) ๐
4.2.1. Uses
The no-operation option basically exists so the sending system can line up subsequent options on, for example, 32-bit boundaries ๐.
4.2.2. Option Specification
Specified in RFC 791 [RFC0791] ๐.
4.2.3. Threats
No specific security issues are known for this IPv4 option ๐ซถ.
4.2.4. Operational and Interoperability Impact if Blocked
Packets with any IP options are likely to include a No Operation option ๐. So if you drop packets containing this option, it's very likely you're blocking legitimate traffic ๐ญ.
4.2.5. Advice
Routers, security gateways, and firewalls SHOULD NOT drop packets because they contain this option ๐ โโ๏ธ๐.
4.3. Loose Source and Record Route (LSRR) (Type = 131) ๐ฆ
RFC 791 says this option should appear at most once in a given packet ๐ง. So if a packet has more than one LSRR option, it should be dropped, and the event should be logged (for example, a counter could go up to reflect the drop). Packets that combine LSRR and SSRR options should also be dropped, and that event should be logged too (again, a counter could track the drop) ๐.
4.3.1. Uses
This option lets the originating system specify a number of intermediate systems a packet must pass through to reach the destination host ๐บ๏ธ. The route the packet actually follows gets recorded in the option too. The receiving host (end-system) must use the reverse of the path in the received LSRR option ๐.
The LSSR option can be a real help when debugging some network problems ๐ง. Some Internet Service Provider (ISP) peering agreements even require support for this option in the routers within the ISP's peer ๐ค.
4.3.2. Option Specification
Specified in RFC 791 [RFC0791] ๐.
4.3.3. Threats
The LSRR option has well-known security implications [RFC6274] ๐จ. Among other things, the option can be used to:
- Bypass firewall rules.
- Reach otherwise unreachable internet systems.
- Establish TCP connections in a stealthy way.
- Learn about the topology of a network.
- Perform bandwidth-exhaustion attacks.
Of these attack vectors, the one that has probably gotten the least attention is using the LSRR option for bandwidth-exhaustion attacks ๐ณ. The LSRR option can work as an amplification method for these attacks, because an attacker could craft an LSRR option that makes a packet bounce multiple times between a number of systems ๐.
This is the IPv4 version of the IPv6 amplification attack that was widely publicized in 2007 [Biondi2007]. The only difference is that the maximum length of the IPv4 header (and hence the LSRR option) limits the amplification factor when compared to the IPv6 counterpart. ๐ค
On top of that, some implementations have been found to skip proper sanity checks on the LSRR option, which led to security issues ๐. These specific issues are believed to be solved in all modern implementations โ .
[Microsoft1999] is a security advisory about a vulnerability arising from improper validation of the Pointer field of the LSRR option. ๐
Finally, some systems were known for offering a system-wide toggle to enable support for this option, for those scenarios where the option is required ๐. The catch is that improper implementation of that toggle made those systems support the LSRR option even when they were explicitly configured not to ๐ค.
[OpenBSD1998] is a security advisory about an improper implementation of such a system-wide toggle in 4.4BSD kernels. This issue was resolved in later versions of the corresponding operating system. ๐
4.3.4. Operational and Interoperability Impact if Blocked
Network troubleshooting techniques that may use the LSRR option (like ping or traceroute with the right arguments) would break when the LSRR option is involved ๐. (Ping and traceroute without IPv4 options aren't affected ๐.) Still, it's worth noting that using the LSRR option for troubleshooting is practically impossible, thanks to widespread dropping of packets that contain the option ๐ซ .
4.3.5. Advice
Routers, security gateways, and firewalls SHOULD implement an option-specific configuration knob to choose one of three behaviors: drop packets with this option, forward packets as if they didn't contain this IP option, or process and forward packets with this option as per [RFC0791] ๐๏ธ. The default setting for this knob SHOULD be "drop", and the default setting MUST be documented ๐.
Heads up, though: treating packets with LSRR as if they didn't contain this option can send them to a different device than the one originally intended ๐. With appropriate ingress filtering, this shouldn't open an attack vector into the infrastructure ๐ก๏ธ. Even so, it could result in traffic that never reaches the originally intended destination ๐ฌ. Dropping these packets prevents unnecessary network traffic, and it doesn't make end-to-end communication any worse ๐ .
4.4. Strict Source and Record Route (SSRR) (Type = 137) ๐
4.4.1. Uses
This option lets the originating system specify a number of intermediate systems a packet must pass through to reach the destination host ๐บ๏ธ. The route the packet actually follows gets recorded in the option, and the destination host (end-system) must use the reverse of the path in the received SSRR option ๐.
This option is similar to the Loose Source and Record Route (LSRR) option, with one big difference: with SSRR, the route in the option is the exact route the packet has to take, so no other intervening routers are allowed on the path ๐ฏ.
The SSRR option can be a real help when debugging some network problems ๐ง. Some ISP peering agreements require support for this option in the routers within the ISP's peer ๐ค.
4.4.2. Option Specification
Specified in RFC 791 [RFC0791] ๐.
4.4.3. Threats
The SSRR option has the same security implications as the LSRR option ๐ฏ. Check out Section 4.3 for a discussion of those security implications ๐.
4.4.4. Operational and Interoperability Impact if Blocked
Network troubleshooting techniques that may use the SSRR option (like ping or traceroute with the right arguments) would break when the SSRR option is involved ๐. (Ping and traceroute without IPv4 options aren't affected ๐.) Still, it's worth noting that using the SSRR option for trouble-shooting is practically impossible, thanks to widespread dropping of packets that contain the option ๐ซ .
4.4.5. Advice
okay bestie, routers, security gateways, and firewalls SHOULD implement an option-specific configuration knob ๐๏ธ so the admin can pick the vibe for SSRR packets: drop them, forward them as if they never had this IP option, or process and forward them as per [RFC0791]. The default setting for this knob SHOULD be "drop", and the default setting MUST be documented ๐
Please note ๐ซถ that treating SSRR packets as if they didn't have this option can send them to a different device than the one originally intended. With proper ingress filtering, this should not open an attack vector into the infrastructure. It could still mean traffic that never reaches the intended destination. Dropping these packets stops pointless traffic, and it doesn't make end-to-end communication any worse โจ
4.5. Record Route (Type = 7)
4.5.1. Uses
this option gives you a way to record the route a given packet follows ๐บ๏ธ
4.5.2. Option Specification
Specified in RFC 791 [RFC0791] ๐
4.5.3. Threats
ngl this one is a little spicy ๐ถ๏ธ it can be exploited to map a network's topology. The good news is the limited space in the IP header limits how useful it is for that ๐
4.5.4. Operational and Interoperability Impact if Blocked
troubleshooting techniques that use the RR option (like ping with the RR option) would break when the RR option is used ๐ Ping without IPv4 options is not impacted, tho ๐ It should be noted that it's basically impossible to use these techniques anyway, because packets that contain RR options get dropped everywhere ๐ญ
4.5.5. Advice
Routers, security gateways, and firewalls SHOULD implement an option-specific configuration knob ๐๏ธ to choose whether packets with this option are dropped, forwarded as if they did not contain this IP option, or processed and forwarded as per [RFC0791]. The default setting for this knob SHOULD be "drop", and the default setting MUST be documented ๐
4.6. Stream Identifier (Type = 136) (obsolete)
the Stream Identifier option originally let the 16-bit SATNET stream Identifier travel through networks that didn't support the stream concept ๐ฐ๏ธ
However, as stated by Section 3.2.1.8 of RFC 1122 [RFC1122] and Section 4.2.2.1 of RFC 1812 [RFC1812], this option is obsolete. Therefore, it must be ignored by the processing systems. See also [IANA-IP] and [RFC6814] ๐
RFC 791 says this option appears at most once in a given datagram. So if a packet has more than one instance of this option, it should be dropped, and the event should be logged (e.g., a counter could be incremented to reflect the packet drop) ๐งพ
4.6.1. Uses
this option is obsolete, and there's no current use for it ๐ชฆ
4.6.2. Option Specification
Specified in RFC 791 [RFC0791], and deprecated in RFC 1122 [RFC1122] and RFC 1812 [RFC1812]. This option has been formally obsoleted by [RFC6814] ๐
4.6.3. Threats
no specific security issues are known for this IPv4 option ๐ซง
4.6.4. Operational and Interoperability Impact if Blocked
none ๐ซถ
4.6.5. Advice
Routers, security gateways, and firewalls SHOULD drop IP packets containing a Stream Identifier option ๐ซ
4.7. Internet Timestamp (Type = 68)
4.7.1. Uses
this option records the time at which each system (or a specified set of systems) processed the datagram. It may optionally record the addresses of the systems providing the timestamps โฐ
4.7.2. Option Specification
Specified by RFC 791 [RFC0791] ๐
4.7.3. Threats
the timestamp option has a bunch of security implications [RFC6274] ๐ Among them:
- It lets an attacker get the current time of the systems that process the packet, which the attacker may find useful in a number of scenarios.
- It may be used to map the network topology, similar to the IP Record Route option.
- It may be used to fingerprint the operating system in use by a system processing the datagram.
- It may be used to fingerprint physical devices by analyzing the clock skew.
[Kohno2005] describes a technique for fingerprinting devices by measuring the clock skew. It uses, among other things, the timestamps that can be obtained with ICMP timestamp request messages [RFC0791]. However, the same fingerprinting method could be implemented with the help of the Internet Timestamp option ๐ต๏ธโโ๏ธ
4.7.4. Operational and Interoperability Impact if Blocked
troubleshooting techniques that use the Internet Timestamp option (like ping with the Timestamp option) would break when the Timestamp option is used ๐ Ping without IPv4 options is not impacted. It should be noted that these techniques are virtually impossible to use anyway, because packets with Internet Timestamp options get dropped widely ๐ญ
4.7.5. Advice
Routers, security gateways, and firewalls SHOULD drop IP packets containing an Internet Timestamp option ๐ซ
4.8. Router Alert (Type = 148)
4.8.1. Uses
the Router Alert option has the semantic "routers should examine this packet more closely, if they participate in the functionality denoted by the Value of the option" ๐จ
4.8.2. Option Specification
the Router Alert option is defined in RFC 2113 [RFC2113], and later updates to it were clarified by RFC 5350 [RFC5350]. It contains a 16-bit Value governed by an IANA registry (see [RFC5350]) ๐งฎ
4.8.3. Threats
the security implications of the Router Alert option are discussed in detail in [RFC6398]. Basically, the option might be exploited to perform a DoS attack by exhausting CPU resources at the processing routers ๐ฅ
4.8.4. Operational and Interoperability Impact if Blocked
applications that use the Router Alert option (like RSVP [RFC2205]) would break ๐
4.8.5. Advice
This option SHOULD be allowed only in controlled environments, where it can be used safely. [RFC6398] identifies some such environments. In unsafe environments, packets containing this option SHOULD be dropped ๐ก๏ธ
A given router, security gateway, or firewall has no way of knowing a priori whether this option is valid in its operational environment. So routers, security gateways, and firewalls SHOULD, by default, ignore the Router Alert option. Additionally, they SHOULD have a configuration setting that governs their reaction when they see packets containing the Router Alert option. This configuration setting SHOULD allow honoring and processing the option, ignoring the option, or dropping packets containing it โ๏ธ
4.9. Probe MTU (Type = 11) (obsolete)
4.9.1. Uses
this option originally gave a mechanism to discover the Path-MTU. It has been declared obsolete ๐ชฆ
4.9.2. Option Specification
this option was originally defined in RFC 1063 [RFC1063] and was obsoleted with RFC 1191 [RFC1191]. It's now obsolete, since RFC 1191 obsoletes RFC 1063 without using IP options ๐
4.9.3. Threats
this option is obsolete. It could have been exploited to make a host set its Path MTU (PMTU) estimate to an inordinately low or an inordinately high value, which would cause performance problems ๐ข
4.9.4. Operational and Interoperability Impact if Blocked
none ๐ซถ
This option is NOT employed with the modern "Path MTU Discovery" (PMTUD) mechanism [RFC1191], which uses special ICMP messages (Type 3, Code 4) together with the IP DF bit. Packetization Layer PMTUD (PLPMTUD) [RFC4821] can perform PMTUD without the need for any special packets. ๐ง
4.9.5. Advice
Routers, security gateways, and firewalls SHOULD drop IP packets that contain a Probe MTU option ๐ซ
4.10. Reply MTU (Type = 12) (obsolete)
4.10.1. Uses
this option originally gave a mechanism to discover the Path-MTU. It's now obsolete ๐ชฆ
4.10.2. Option Specification
this option was originally defined in RFC 1063 [RFC1063] and was obsoleted with RFC 1191 [RFC1191]. It's now obsolete, since RFC 1191 obsoletes RFC 1063 without using IP options ๐
4.10.3. Threats
this option is obsolete. It could have been exploited to make a host set its PMTU estimate to an inordinately low or an inordinately high value, which would cause performance problems ๐ข
4.10.4. Operational and Interoperability Impact if Blocked
none ๐ซถ
This option is NOT employed with the modern "Path MTU Discovery" (PMTUD) mechanism [RFC1191], which uses special ICMP messages (Type 3, Code 4) together with the IP DF bit. PLPMTUD [RFC4821] can perform PMTUD without the need of any special packets. ๐ง
4.10.5. Advice
Routers, security gateways, and firewalls SHOULD drop IP packets that contain a Reply MTU option ๐ซ
4.11. Traceroute (Type = 82)
4.11.1. Uses
this option originally gave a mechanism to trace the path to a host ๐งญ
4.11.2. Option Specification
this option was originally specified by RFC 1393 [RFC1393] as "experimental", and it was never widely deployed on the public Internet. It has been formally obsoleted by [RFC6814] ๐งช
4.11.3. Threats
this option is obsolete. Because it required each router in the path to do special processing and send an ICMP message, it could have been exploited to perform a DoS attack by exhausting CPU resources at the processing routers ๐ฅ
4.11.4. Operational and Interoperability Impact if Blocked
none ๐ซถ
4.11.5. Advice
Routers, security gateways, and firewalls SHOULD drop IP packets that contain a Traceroute option ๐ซ
4.12. DoD Basic Security Option (Type = 130)
4.12.1. Uses
this option [RFC1108] is used by Multi-Level Secure (MLS) end-systems and intermediate systems in specific environments to:
- transmit the common security labels required by computer security models [Landwehr81] from source to destination, in a network standard representation,
- validate the datagram as appropriate for transmission from the source and delivery to the destination, and,
- ensure that the route taken by the datagram is protected to the level required by all protection authorities indicated on the datagram ๐
The DoD Basic Security Option (BSO) was implemented in IRIX [IRIX2008] and is currently implemented in a number of operating systems (e.g., Security-Enhanced Linux [SELinux2008], Solaris [Solaris2008], and Cisco IOS [Cisco-IPSO]). It's also currently deployed in a number of high-security networks, which are typically either in physically secure locations, protected by military/governmental communications security equipment, or both ๐ก๏ธ
These networks are usually built with commercial off-the-shelf (COTS) IP routers and Ethernet switches, but they aren't normally interconnected with the global public Internet. MLS systems are way more widely deployed now than when the then-IESG decided to remove IPSO (IP Security Options) from the IETF Standards Track. Since nearly all MLS systems also support IPSO BSO and IPSO ESO, this option is believed to have more deployment now than when the IESG removed it from the IETF Standards Track. [RFC5570] describes a similar option recently defined for IPv6 and goes way deeper into how sensitivity label options are used in real-world deployments ๐
4.12.2. Option Specification โจ
okay so this one is specced by RFC 1108 [RFC1108], which obsoleted RFC 1038 [RFC1038]. and RFC 1038 had itself obsoleted the Security Option from RFC 791 [RFC0791] ๐
the history is kind of a whole saga ๐ง. RFC 791 [RFC0791] defined the "Security Option" (Type = 130), and it used the same option type number as the DoD Basic Security option we're talking about here. then RFC 1038 [RFC1038] reworked the IP security options, and RFC 1108 [RFC1108] came along and obsoleted it. the RFC 791 "Security Option" is now considered obsolete by Section 3.2.1.8 of RFC 1122 [RFC1122] and Section 4.2.2.1 of RFC 1812 [RFC1812], so this section is focused on the DoD Basic Security option from RFC 1108 [RFC1108] ๐
Section 4.2.2.1 of RFC 1812 says routers "SHOULD implement [this option]" ๐ซถ
some private IP networks treat per-interface selective filtering of packets as a big deal for operational security ๐. the filtering is based on (a) whether an IPSO option is present (that includes BSO and ESO) and (b) what that IPSO option actually says. the newer IPv6 Common Architecture Label IPv6 Security Option (CALIPSO) spec goes into more detail on this, though it's written for IPv6 [RFC5570] ๐ธ
these private networks are usually built from both commercial and open-source gear, like hosts, guards, firewalls, switches, routers, and so on ๐งฐ. some commercial IP routers support this option, and so do some IP routers built on top of MLS operating systems (for example, Trusted Solaris [Solaris2008] or Security-Enhanced Linux [SELinux2008]) ๐
for example, lots of Cisco routers running Cisco IOS can selectively filter packets carrying IP Security Options (IPSO), with per-interface granularity. that's been around in many Cisco routers since the early 1990s [Cisco-IPSO-Cmds] ๐ฆ. some government-sector products also reportedly support IP Security Options (IPSO), like CANEWARE [RFC4949] ๐บ๐ธ
the IPSO Basic Security Option is also covered in the "IPsec Configuration Policy Information Model" [RFC3585] and the "IPsec Security Policy Database Configuration MIB" [RFC4807] ๐. Section 4.6.1 of the IP Security Domain of Interpretation [RFC2407] supports labeled IPsec security associations that are compatible with the IP Security Options ๐. (Note: RFC 2407 was obsoleted by [RFC4306], which was then obsoleted by [RFC5996]. the paperwork never stops ๐ญ)
4.12.3. Threats โจ
presence of this option in a packet doesn't create any specific new threat all by itself ๐. packets with this option ought not normally be seen on the global public Internet ๐
4.12.4. Operational and Interoperability Impact if Blocked โจ
okay this part is important ๐ญ. if packets with this option get blocked, or if the option gets stripped from the packet on the way from source to destination, the packet is likely to be dropped by the receiver because it isn't labeled properly ๐
sometimes the receiver does get the packet, but it attaches the wrong sensitivity label to the data, because the BSO was stripped by an intermediate router or firewall ๐. that's a problem either way. the data can get handled as more sensitive than it really is ("upgrading"), or as less sensitive than it really is ("downgrading") ๐จ
4.12.5. Advice โจ
a given IP router, security gateway, or firewall has no way to know a priori what environment it's been deployed into ๐คทโโ๏ธ. even closed IP deployments usually use the exact same commercial routers, security gateways, and firewalls that the public Internet uses ๐
here's the logic. operational problems happen where this option is needed and either the option gets dropped or the IP packets carrying it get dropped. but nothing bad happens when the option is carried in environments where it isn't needed. so the default configuration SHOULD NOT (a) modify or remove this IP option or (b) drop an IP packet just because it contains this option ๐ซถ
a given IP router, security gateway, or firewall MAY be configured to drop this option, or to drop IP packets containing this option, in an environment known not to use this option ๐ง
for auditing reasons, routers, security gateways, and firewalls SHOULD be capable of logging the number of packets containing the BSO on a per-interface basis ๐. also, routers, security gateways, and firewalls SHOULD be capable of dropping packets based on BSO presence as well as BSO values ๐ฅ
4.13. DoD Extended Security Option (Type = 133) ๐
4.13.1. Uses โจ
this option lets extra security labeling information get supplied in an IP datagram, on top of what the Basic Security Option (Section 4.12) already carries, so it can meet the needs of registered authorities ๐
4.13.2. Option Specification โจ
the DoD Extended Security Option (ESO) is specified by RFC 1108 [RFC1108] ๐
some private IP networks treat per-interface selective filtering of packets as important for operational security. it's based on (a) whether an IPSO option is present (that includes BSO and ESO) and (b) what that IPSO option's contents are ๐. the IPv6 CALIPSO option spec discusses this in more detail, though it's written for an IPv6 context [RFC5570] ๐ธ
these private networks are usually built from commercial and open-source products (hosts, guards, firewalls, switches, routers, and so on) ๐งฐ. some commercial IP routers support this option, and so do some IP routers built on top of MLS operating systems (for example, Trusted Solaris [Solaris2008] or Security-Enhanced Linux [SELinux2008]) ๐
many Cisco routers running Cisco IOS support selectively filtering packets carrying IP Security Options (IPSO) with per-interface granularity ๐ฆ. that's been in many Cisco routers since the early 1990s [Cisco-IPSO-Cmds]. some government sector products reportedly support IP Security Options (IPSO) too, like CANEWARE [RFC4949] ๐บ๐ธ
support for the IPSO Extended Security Option is also included in the "IPsec Configuration Policy Information Model" [RFC3585] and the "IPsec Security Policy Database Configuration MIB" [RFC4807]. Section 4.6.1 of the IP Security Domain of Interpretation [RFC2407] includes support for labeled IPsec security associations compatible with the IP Security Options ๐
4.13.3. Threats โจ
presence of this option in a packet doesn't create any specific new threat by itself ๐. packets with this option ought not normally be seen on the global public Internet ๐
4.13.4. Operational and Interoperability Impact if Blocked โจ
if packets with this option are blocked, or the option gets stripped from the packet during transmission from source to destination, the packet is likely to be dropped by the receiver because it isn't properly labeled ๐
in some cases the receiver gets the packet but attaches an incorrect sensitivity label to the data, because the ESO was stripped by an intermediate router or firewall ๐. that can make the data handled as more sensitive than it really is ("upgrading") or less sensitive than it really is ("downgrading"). either one is problematic ๐จ
4.13.5. Advice โจ
a given IP router, security gateway, or firewall has no way to know a priori what environment it's been deployed into ๐คทโโ๏ธ. even closed IP deployments generally use exactly the same commercial routers, security gateways, and firewalls that are used on the public Internet ๐
operational problems happen where this option is needed and either the option gets dropped or the IP packets carrying it get dropped. no harm comes from carrying the option where it isn't needed. so the default configuration SHOULD NOT (a) modify or remove this IP option or (b) drop an IP packet just because it contains this option ๐ซถ
a given IP router, security gateway, or firewall MAY be configured to drop this option, or to drop IP packets containing this option, in an environment known not to use this option ๐ง
for auditing reasons, routers, security gateways, and firewalls SHOULD be capable of logging the number of packets containing the ESO on a per-interface basis ๐. also, routers, security gateways, and firewalls SHOULD be capable of dropping packets based on ESO presence as well as ESO values ๐ฅ
4.14. Commercial IP Security Option (CIPSO) (Type = 134) ๐ฆ
4.14.1. Uses โจ
this option was proposed by the Trusted Systems Interoperability Group (TSIG), to meet trusted networking requirements for the commercial trusted systems marketplace ๐ผ
it was implemented in IRIX [IRIX2008] and is currently implemented in a number of operating systems (for example, Security-Enhanced Linux [SELinux2008] and Solaris [Solaris2008]). it's also currently deployed in a number of high-security networks ๐
4.14.2. Option Specification โจ
this option is specified in [CIPSO] and [FIPS1994]. there are zero known IP router implementations of CIPSO ๐ญ. several MLS operating systems support CIPSO, generally the same ones that support IPSO ๐
the TSIG proposal was taken to the Commercial Internet Security Option (CIPSO) Working Group of the IETF [CIPSOWG1994], and an Internet-Draft was produced [CIPSO]. that Internet-Draft was never published as an RFC, but the proposal was later standardized by the U.S. National Institute of Standards and Technology (NIST) as "Federal Information Processing Standard Publication 188" [FIPS1994] ๐
4.14.3. Threats โจ
presence of this option in a packet doesn't create any specific new threat by itself ๐. packets with this option ought not normally be seen on the global public Internet ๐
4.14.4. Operational and Interoperability Impact if Blocked โจ
if packets with this option are blocked, or the option gets stripped from the packet during transmission from source to destination, the packet is likely to be dropped by the receiver because it isn't properly labeled ๐
in some cases the receiver gets the packet but attaches an incorrect sensitivity label to the data, because the CIPSO was stripped by an intermediate router or firewall ๐. that can make the data handled as more sensitive than it really is ("upgrading") or less sensitive than it really is ("downgrading"). either one is problematic ๐จ
4.14.5. Advice โจ
because of this option's design, with variable syntax and variable length, it isn't practical to support specialized filtering using the CIPSO information ๐งฉ. no routers or firewalls are known to support this option ๐ญ. however, routers, security gateways, and firewalls SHOULD NOT by default modify or remove this option from IP packets, and SHOULD NOT by default drop packets just because they contain this option ๐ซถ
for auditing reasons, routers, security gateways, and firewalls SHOULD be capable of logging the number of packets containing the CIPSO on a per-interface basis ๐. also, routers, security gateways, and firewalls SHOULD be capable of dropping packets based on CIPSO presence ๐ฅ
4.15. VISA (Type = 142) ๐
4.15.1. Uses
okay so this option was part of an experiment at the University of Southern California (USC) and it never got widely deployed ๐ธ
4.15.2. Option Specification
the original option spec isn't publicly available ๐ this option has been formally obsoleted by [RFC6814].
4.15.3. Threats
not possible to determine (other than the general security implications of IP options discussed in Section 3), since the spec isn't public ๐
4.15.4. Operational and Interoperability Impact if Blocked
none! ๐
4.15.5. Advice
Routers, security gateways, and firewalls SHOULD drop IP packets that contain this option โจ
4.16. Extended Internet Protocol (Type = 145) ๐ฆ
4.16.1. Uses
the EIP option came from one of the proposals submitted during the IP Next Generation (IPng) efforts to tackle IPv4 address exhaustion ๐ง
4.16.2. Option Specification
specified in [RFC1385]. this option has been formally obsoleted by [RFC6814] ๐
4.16.3. Threats
this option is obsolete ๐ฐ๏ธ it was used (or was intended to be used) to signal that a packet that looked like an IPv4 packet actually contained a different protocol. that opened up the possibility that an IPv4 node which simply ignored this option would process a received packet in a way that didn't match what the sender meant ๐ญ there are no known threats arising from this option, other than the general security implications of IP options discussed in Section 3.
4.16.4. Operational and Interoperability Impact if Blocked
none ๐
4.16.5. Advice
Routers, security gateways, and firewalls SHOULD drop packets that contain this option ๐ซ
4.17. Address Extension (Type = 147) ๐ท
4.17.1. Uses
the Address Extension option was introduced by one of the proposals submitted during the IPng efforts to address the problem of IPv4 address exhaustion ๐
4.17.2. Option Specification
specified in [RFC1475]. this option has been formally obsoleted by [RFC6814] ๐ซถ
4.17.3. Threats
there are no known threats arising from this option, other than the general security implications of IP options discussed in Section 3 ๐ก๏ธ
4.17.4. Operational and Interoperability Impact if Blocked
none ๐
4.17.5. Advice
Routers, security gateways, and firewalls SHOULD drop packets that contain this option ๐
4.18. Sender Directed Multi-Destination Delivery (Type = 149) ๐ฃ
4.18.1. Uses
this option originally provided unreliable UDP delivery to a set of addresses included in the option ๐จ
4.18.2. Option Specification
this option is specified in RFC 1770 [RFC1770]. it has been formally obsoleted by [RFC6814] ๐
4.18.3. Threats
this option could have been exploited for bandwidth-amplification in DoS attacks ๐ not a vibe.
4.18.4. Operational and Interoperability Impact if Blocked
none โจ
4.18.5. Advice
Routers, security gateways, and firewalls SHOULD drop IP packets that contain a Sender Directed Multi-Destination Delivery option ๐ โโ๏ธ
4.19. Dynamic Packet State (Type = 151) ๐ฎ
4.19.1. Uses
the Dynamic Packet State option was used to specify the Dynamic Packet State (DPS) in the context of the differentiated services architecture ๐ซ
4.19.2. Option Specification
the Dynamic Packet State option was specified in [DIFFSERV-DPS]. the aforementioned document was meant to be published as "Experimental", but it never made it into an RFC ๐ฅฒ this option has been formally obsoleted by [RFC6814].
4.19.3. Threats
possible threats include theft of service and denial of service ๐จ however, we note that this option has never been widely implemented or deployed ๐
4.19.4. Operational and Interoperability Impact if Blocked
none ๐
4.19.5. Advice
Routers, security gateways, and firewalls SHOULD drop packets that contain this option ๐งฑ
4.20. Upstream Multicast Pkt. (Type = 152) ๐ก
4.20.1. Uses
this option was meant to solve the problem of doing upstream forwarding of multicast packets on a multi-access LAN ๐ฏ
4.20.2. Option Specification
this option was originally specified in [BIDIR-TREES]. it was never formally standardized in the RFC series and was never widely implemented and deployed ๐ซ its use was obsoleted by [RFC5015], which employs a control-plane mechanism to solve the problem of doing upstream forwarding of multicast packets on a multi-access LAN ๐ ๏ธ this option has been formally obsoleted by [RFC6814].
4.20.3. Threats
this option is obsolete ๐๏ธ a router that ignored this option instead of processing it as specified in [BIDIR-TREES] could have forwarded multicast packets to an unintended destination ๐ฌ
4.20.4. Operational and Interoperability Impact if Blocked
none ๐ธ
4.20.5. Advice
Routers, security gateways, and firewalls SHOULD drop packets that contain this option ๐
4.21. Quick-Start (Type = 25) ๐๏ธ
4.21.1. Uses
this IP Option is used in the specification of Quick-Start for TCP and IP. it's an experimental mechanism that lets transport protocols, working together with routers, figure out an allowed sending rate at the start and, at times, in the middle of a data transfer (e.g., after an idle period) [RFC4782] โก
4.21.2. Option Specification
specified in RFC 4782 [RFC4782], on the "Experimental" track ๐งช
4.21.3. Threats
Section 9.6 of [RFC4782] notes that Quick-Start is vulnerable to two kinds of attacks ๐
- attacks to increase the routers' processing and state load, and,
- attacks with bogus Quick-Start Requests to temporarily tie up available Quick-Start bandwidth, preventing routers from approving Quick-Start Requests from other connections.
4.21.4. Operational and Interoperability Impact if Blocked
the Quick-Start functionality would be disabled, and additional delays in TCP's connection establishment (for example) could be introduced. (Please see Section 4.7.2 of [RFC4782].) we note, however, that Quick-Start has been proposed as a mechanism that could be of use in controlled environments, and not as a mechanism that would be intended or appropriate for ubiquitous deployment in the global Internet [RFC4782] ๐
4.21.5. Advice
a given router, security gateway, or firewall system has no way of knowing a priori whether this option is valid in its operational environment ๐คทโโ๏ธ so routers, security gateways, and firewalls SHOULD, by default, ignore the Quick-Start option ๐ additionally, routers, security gateways, and firewalls SHOULD have a configuration setting that governs their reaction when packets containing the Quick-Start option show up ๐๏ธ this configuration setting SHOULD allow them to honor and process the option, ignore the option, or drop packets containing this option. the default configuration is to ignore the Quick-Start option โจ
We note that if routers in a given environment do not implement and enable the Quick-Start mechanism, only the general security implications of IP options (discussed in Section 3) would apply ๐ซถ
4.22. RFC3692-Style Experiment (Types = 30, 94, 158, and 222) ๐งฌ
Section 2.5 of RFC 4727 [RFC4727] allocates an option number with all defined values of the "copy" and "class" fields for RFC3692-style experiments. this results in four distinct option type codes: 30, 94, 158, and 222 ๐ข
4.22.1. Uses
it's only appropriate to use these values in explicitly configured experiments. they MUST NOT be shipped as defaults in implementations ๐ซ
4.22.2. Option Specification
specified in RFC 4727 [RFC4727] in the context of RFC3692-style experiments ๐
4.22.3. Threats
no specific security issues are known for this IPv4 option ๐
4.22.4. Operational and Interoperability Impact if Blocked
none ๐ท
4.22.5. Advice
Routers, security gateways, and firewalls SHOULD have configuration knobs for IP packets that contain RFC3692-style Experiment options, to select between "ignore & forward" and "drop & log". otherwise, no legitimate experiment using these options will be able to traverse any IP router ๐ฃ๏ธ
special care needs to be taken in the case of "drop & log" โ ๏ธ devices SHOULD count the number of packets dropped, but the logging of drop events SHOULD be limited so as not to overburden device resources ๐
the aforementioned configuration knob SHOULD default to "drop & log" ๐
4.23. Other IP Options ๐
4.23.1. Specification
unrecognized IP options are to be ignored ๐ Section 3.2.1.8 of RFC 1122 [RFC1122] specifies this behavior as follows:
The IP and transport layer MUST each interpret those IP options that they understand and silently ignore the others.
additionally, Section 4.2.2.6 of RFC 1812 [RFC1812] specifies it as follows:
A router MUST ignore IP options which it does not recognize.
this document adds that unrecognized IP options MAY also be logged ๐
further, routers, security gateways, and firewalls MUST provide the ability to log drop events of IP packets containing unrecognized or obsolete options ๐งพ
a number of additional options are listed in the "IP OPTION NUMBERS" IANA registry [IANA-IP] as of the time this document was last edited. specifically:
Copy Class Number Value Name
---- ----- ------ ----- -------------------------------------------
0 0 10 10 ZSU - Experimental Measurement
1 2 13 205 FINN - Experimental Flow Control
0 0 15 15 ENCODE - ???
1 0 16 144 IMITD - IMI Traffic Descriptor
1 0 22 150 - Unassigned (Released 18 Oct. 2005)
the ENCODE option (type 15) has been formally obsoleted by [RFC6814] ๐งฉ
4.23.2. Threats
the lack of open specifications for these options makes it impossible to evaluate their security implications ๐ต๏ธโโ๏ธ
4.23.3. Operational and Interoperability Impact if Blocked
the lack of open specifications for these options makes it impossible to evaluate the operational and interoperability impact if packets containing these options are blocked ๐ค
4.23.4. Advice
Routers, security gateways, and firewalls SHOULD have configuration knobs for IP packets containing these options (or other options not recognized) to select between "ignore & forward" and "drop & log" ๐๏ธ
Section 4.23.1 points out that [RFC1122] and [RFC1812] specify that unrecognized IP options MUST be ignored ๐ฃ however, the previous paragraph states that routers, security gateways, and firewalls SHOULD have a configuration option for dropping and logging IP packets containing unrecognized options ๐ณ while it is acknowledged that this advice contradicts the previous RFCs' requirements, the advice in this document reflects current operational reality ๐
special care needs to be taken in the case of "drop & log" โ ๏ธ devices SHOULD count the number of packets dropped, but the logging of drop events SHOULD be limited so as not to overburden device resources ๐
5. Security Considerations ๐
This document provides advice on the filtering of IP packets that contain IP options. dropping such packets can help to mitigate the security issues that arise from use of different IP options ๐ก๏ธ many of the IPv4 options listed in this document are deprecated and cause no operational impact if dropped. however, dropping packets containing IPv4 options that are in use can cause real operational problems in deployed networks ๐ต therefore, the practice of dropping all IPv4 packets containing one or more IPv4 options without careful consideration is not recommended ๐ โโ๏ธ๐
6. Acknowledgements โจ
okay so the authors gave a huge shoutout to their reviewers, bestie ๐ซถ they thanked (in alphabetical order) Ron Bonica, C. M. Heard, Merike Kaeo, Panos Kampanakis, Suresh Krishnan, Arturo Servin, SM, and Donald Smith for giving thorough reviews and valuable comments ๐ . Merike Kaeo even contributed text that got used in this document, which is so iconic ๐ธ.
The authors also thanked various network operations folks who gave feedback on earlier versions but didn't want their names in the doc. Main character energy of being behind the scenes ๐ฆ.
Part of this document is initially based on "Security Assessment of the Internet Protocol" [CPNI2008], which came out of a project Fernando Gont ran on behalf of UK CPNI (formerly NISCC). Fernando wants to thank UK CPNI (formerly NISCC) for their continued support ๐.
7. References โจ
7.1. Normative References
The normative references are the ones you really need to read to implement this stuff, so take them seriously ๐๐ฅ.
[RFC0791]Postel, J., "Internet Protocol", STD 5, RFC 791, September 1981. ๐[RFC1122]Braden, R., "Requirements for Internet Hosts - Communication Layers", STD 3, RFC 1122, October 1989. ๐[RFC1191]Mogul, J. and S. Deering, "Path MTU discovery", RFC 1191, November 1990. ๐[RFC1812]Baker, F., "Requirements for IP Version 4 Routers", RFC 1812, June 1995. ๐[RFC2113]Katz, D., "IP Router Alert Option", RFC 2113, February 1997. ๐[RFC2119]Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. ๐[RFC4727]Fenner, B., "Experimental Values In IPv4, IPv6, ICMPv4, ICMPv6, UDP, and TCP Headers", RFC 4727, November 2006. ๐[RFC4821]Mathis, M. and J. Heffner, "Packetization Layer Path MTU Discovery", RFC 4821, March 2007. ๐[RFC5015]Handley, M., Kouvelas, I., Speakman, T., and L. Vicisano, "Bidirectional Protocol Independent Multicast (BIDIR-PIM)", RFC 5015, October 2007. ๐[RFC6398]Le Faucheur, F., "IP Router Alert Considerations and Usage", BCP 168, RFC 6398, October 2011. ๐[RFC6814]Pignataro, C. and F. Gont, "Formally Deprecating Some IPv4 Options", RFC 6814, November 2012. ๐
7.2. Informative References
These are the extra reads for when you want to go deeper, no cap ๐คโจ.
[BIDIR-TREES]Estrin, D. and D. Farinacci, "Bi-Directional Shared Trees in PIM-SM", Work in Progress, May 1999. ๐[BREMIER-BARR]Bremier-Barr, A. and H. Levy, "Spoofing prevention method", Proceedings of IEEE InfoCom 2005, Volume 1, pp. 536-547, March 2005. ๐[Biondi2007]Biondi, P. and A. Ebalard, "IPv6 Routing Header Security", CanSecWest 2007 Security Conference, 2007, <http://www.secdev.org/conf/IPv6_RH_security-csw07.pdf>. ๐[CIPSOWG1994]IETF CIPSO Working Group, "Commercial Internet Protocol Security Option (CIPSO) Charter", 1994, <http://www.ietf.org/proceedings/94jul/charters/cipso-charter.html>. ๐[CIPSO]IETF CIPSO Working Group, "COMMERCIAL IP SECURITY OPTION (CIPSO 2.2)", Work in Progress, 1992. ๐[CPNI2008]Gont, F., "Security Assessment of the Internet Protocol", 2008, <http://www.gont.com.ar/papers/InternetProtocol.pdf>. ๐[Cisco-IPSO-Cmds]Cisco Systems, Inc., "IP Security Options Commands", Cisco IOS Security Command Reference, Release 12.2, <http://www.cisco.com/en/US/docs/ios/12_2/security/command/reference/srfipso.html>. ๐[Cisco-IPSO]Cisco Systems, Inc., "Configuring IP Security Options", Cisco IOS Security Configuration Guide, Release 12.2, 2006, <http://www.cisco.com/en/US/docs/ios/12_2/security/configuration/guide/scfipso.html>. ๐[DIFFSERV-DPS]Stoica, I., Zhang, H., Venkitaram, N., and J. Mysore, "Per Hop Behaviors Based on Dynamic Packet State", Work in Progress, October 2002. ๐[FIPS1994]FIPS, "Standard Security Label for Information Transfer", Federal Information Processing Standards Publication, FIP PUBS 188, 1994, <http://csrc.nist.gov/publications/fips/fips188/fips188.pdf>. ๐[FONSECA]Fonseca, R., Porter, G., Katz, R., Shenker, S., and I. Stoica, "IP Options are not an option", EECS Department, University of California, Berkeley, December 2005, <http://www.eecs.berkeley.edu/Pubs/TechRpts/2005/EECS-2005-24.html>. ๐[IANA-IP]IANA, "IP OPTION NUMBERS", <http://www.iana.org/assignments/ip-parameters>. ๐[IRIX2008]IRIX, "IRIX 6.5 trusted_networking(7) manual page", 2008, <http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi?coll=0650&db=man&fname=/usr/share/catman/a_man/cat7/trusted_networking.z>. ๐[Kohno2005]Kohno, T., Broido, A., and kc. Claffy, "Remote Physical Device Fingerprinting", IEEE Transactions on Dependable and Secure Computing, Vol. 2, No. 2, 2005. ๐[Landwehr81]Landwehr, C., "Formal Models for Computer Security", ACM Computing Surveys, Vol. 13, No. 3, Association for Computing Machinery, New York, NY, USA, September 1981. ๐[MEDINA]Medina, A., Allman, M., and S. Floyd, "Measuring Interactions Between Transport Protocols and Middleboxes", Proc. 4th ACM SIGCOMM/USENIX Conference on Internet Measurement, October 2004. ๐[Microsoft1999]Microsoft, "Microsoft Security Program: Microsoft Security Bulletin (MS99-038). Patch Available for "Spoofed Route Pointer" Vulnerability", September 1999, <http://www.microsoft.com/technet/security/bulletin/ms99-038.mspx>. ๐[OpenBSD1998]OpenBSD, "OpenBSD Security Advisory: IP Source Routing Problem", February 1998, <http://www.openbsd.org/advisories/sourceroute.txt>. ๐[RFC1038]St. Johns, M., "Draft revised IP security option", RFC 1038, January 1988. ๐[RFC1063]Mogul, J., Kent, C., Partridge, C., and K. McCloghrie, "IP MTU discovery options", RFC 1063, July 1988. ๐[RFC1108]Kent, S., "U.S. Department of Defense Security Options for the Internet Protocol", RFC 1108, November 1991. ๐[RFC1385]Wang, Z., "EIP: The Extended Internet Protocol", RFC 1385, November 1992. ๐[RFC1393]Malkin, G., "Traceroute Using an IP Option", RFC 1393, January 1993. ๐[RFC1475]Ullmann, R., "TP/IX: The Next Internet", RFC 1475, June 1993. ๐[RFC1770]Graff, C., "IPv4 Option for Sender Directed Multi-Destination Delivery", RFC 1770, March 1995. ๐[RFC2205]Braden, B., Zhang, L., Berson, S., Herzog, S., and S. Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1 Functional Specification", RFC 2205, September 1997. ๐[RFC2407]Piper, D., "The Internet IP Security Domain of Interpretation for ISAKMP", RFC 2407, November 1998. ๐[RFC3585]Jason, J., Rafalow, L., and E. Vyncke, "IPsec Configuration Policy Information Model", RFC 3585, August 2003. ๐[RFC4306]Kaufman, C., "Internet Key Exchange (IKEv2) Protocol", RFC 4306, December 2005. ๐[RFC4782]Floyd, S., Allman, M., Jain, A., and P. Sarolahti, "Quick-Start for TCP and IP", RFC 4782, January 2007. ๐[RFC4807]Baer, M., Charlet, R., Hardaker, W., Story, R., and C. Wang, "IPsec Security Policy Database Configuration MIB", RFC 4807, March 2007. ๐[RFC4949]Shirey, R., "Internet Security Glossary, Version 2", RFC 4949, August 2007. ๐[RFC5350]Manner, J. and A. McDonald, "IANA Considerations for the IPv4 and IPv6 Router Alert Options", RFC 5350, September 2008. ๐[RFC5570]StJohns, M., Atkinson, R., and G. Thomas, "Common Architecture Label IPv6 Security Option (CALIPSO)", RFC 5570, July 2009. ๐[RFC5996]Kaufman, C., Hoffman, P., Nir, Y., and P. Eronen, "Internet Key Exchange Protocol Version 2 (IKEv2)", RFC 5996, September 2010. ๐[RFC6192]Dugal, D., Pignataro, C., and R. Dunn, "Protecting the Router Control Plane", RFC 6192, March 2011. ๐[RFC6274]Gont, F., "Security Assessment of the Internet Protocol Version 4", RFC 6274, July 2011. ๐[SELinux2008]National Security Agency (United States), "Security-Enhanced Linux - NSA/CSS", January 2009, <http://www.nsa.gov/research/selinux/index.shtml>. ๐[Solaris2008]"Solaris Trusted Extensions: Labeled Security for Absolute Protection", 2008, <http://www.oracle.com/technetwork/server-storage/solaris10/overview/trusted-extensions-149944.pdf>. ๐
Authors' Addresses โจ
Here's where to find the authors, bestie ๐.
- Fernando Gont, UTN-FRH / SI6 Networks, Evaristo Carriego 2644, Haedo, Provincia de Buenos Aires 1706, Argentina. Phone: +54 11 4650 8472. EMail: fgont@si6networks.com. URI: http://www.si6networks.com ๐ฆ
- RJ Atkinson, Consultant, McLean, VA 22103, USA. EMail: rja.lists@gmail.com ๐ธ
- Carlos Pignataro, Cisco Systems, Inc., 7200-12 Kit Creek Road, Research Triangle Park, NC 27709, USA. EMail: cpignata@cisco.com ๐
๐ฆ where this page comes from
- ietf: rfc7126 2014-02
- ๐ girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms