Traffic between the RE and transit interfaces is carried over an internal network between the PFEs and REs. Some REs use em interfaces (usually, em0 and em1) to connect to this network. Receipt of a carefully crafted set of fragmented packets, destined to the router, can cause the em driver to become permanently blocked when trying to formulate a reply. This will cause the RE to be unable to communicate over the private network that connects the FPCs and REs eventually causing all FPCs to go offline and stay offline. Systems with redundant REs will failover, but would then be subject to the same issue. For systems without modular FPCs (for example, MX80), the FPC will reboot and clear the em0 interface output queue. However, additional crafted fragments will cause the issue to reoccur. This issue is applicable to IPv4, IPv6, and CLNP fragmentation and reassembly scenarios. Transit traffic does not trigger this issue. Additionally, CLNP is only vulnerable if clns-routing or ESIS is explicitly configured, This issue is specific to em interfaces. J Series and SRX Series models not listed above do not utilize the em driver, and are therefore not affected by this issue. In addition, some REs (e.g. K2RE based systems) may use an em driver for their "fxp0" interface. On such REs, reply traffic sent out the fxp0 interface may trigger the same condition on that interface. Refer to the "Supported Routing Engines by Router" link below for more information about internal Ethernet interface types for specific platforms. Customers can confirm the presence of em interfaces by typing: % pciconf -l | grep em em0@pci3:0:0: class="0x020000" card=0x00901059 chip=0x10d38086 rev=0x00 hdr=0x00 em1@pci4:0:0: class="0x020000" card=0x00901059 chip=0x10d38086 rev=0x00 hdr=0x00 em2@pci5:0:0: class="0x020000" card=0x00901059 chip=0x10d38086 rev=0x00 hdr=0x00 This issue was found during internal product security testing. Juniper SIRT is not aware of any malicious exploitation of this vulnerability. No other Juniper Networks products or platforms are affected by this issue. This issue has been assigned CVE-2014-6380 .
% pciconf -l | grep em em0@pci3:0:0: class="0x020000" card=0x00901059 chip=0x10d38086 rev=0x00 hdr=0x00 em1@pci4:0:0: class="0x020000" card=0x00901059 chip=0x10d38086 rev=0x00 hdr=0x00 em2@pci5:0:0: class="0x020000" card=0x00901059 chip=0x10d38086 rev=0x00 hdr=0x00
The following software releases have been updated to resolve this specific issue: Junos OS 11.4R11, 12.1R9, 12.1X44-D30, 12.1X45-D20, 12.1X46-D15, 12.1X47-D10, 12.2R8, 12.2X50-D70, 12.3R6, 13.1R4, 13.1X49-D55, 13.1X50-D30, 13.2R4, 13.2X50-D20, 13.2X51-D15, 13.2X52-D15, 13.3R1, and all subsequent releases. This issue is being tracked as PR 942437 and is visible on the Customer Support website. KB16765 [juniper.net] - "In which releases are vulnerabilities fixed?" describes which release vulnerabilities are fixed as per our End of Engineering and End of Life support policies.
Today's network infrastructure typically will not have fragmented packets destined for the router's control or management plane. In most cases, it is safe to apply packet filters which will prevent fragmented packets from arriving on the router. Usually, fragmented packets received by a router indicate a problem with the network or a DoS attack against the router. In either case, fragmented packets should be dropped to protect the router's control and management plane. Below is a sample firewall filter to demonstrate this recommendation for IPv4 traffic:
[edit firewall family inet filter fragment]user@junos# showterm first-frag { from { first-fragment; } then { discard; }}term next-frag { from { is-fragment; } then { discard; }}
And for IPv6:
[edit firewall family inet6 filter fragment6]user@junos# showterm fragment-headers { from { next-header [ hop-by-hop dstopts routing fragment ah esp ]; } then { discard; }}
first-fragment
is-fragment