JUEX-RT-000810 - The Juniper perimeter router must be configured to drop fragmented IPv6 packets where the first fragment does not include the entire IPv6 header chain.

Information

One of the fragmentation weaknesses known in IPv6 is the 'undetermined transport' packet, which is the first fragment where the entire IPv6 header chain is not included. Fragmenting IPv6 datagrams and not including the upper-layer header makes it difficult to identify the traffic.

RFC7112 and RFC8200 require the entire IPv6 header chain be present in the first fragment and defines the header chain as:
'The IPv6 Header Chain contains an initial IPv6 header, zero or more IPv6 Extension Headers, and optionally, a single upper-layer header. If an upper-layer header is present, it terminates the header chain; otherwise, the 'No Next Header' value (Next Header = 59) terminates it.'

Both RFCs consider a second IPv6 header and an ESP header as 'upper-layer headers' when determining where the IPv6 header chain terminates.

NOTE: Nessus has provided the target output to assist in reviewing the benchmark to ensure target compliance.

Solution

Configure the router to drop first-fragment IPv6 packets without the entire header chain.

There is no configurable CLI option to prevent EX devices from dropping nonconformant fragmented IPv6 packets destined to the device.

Configure the router to drop fragmented transit IPv6 packets.

set firewall family inet6 filter <name> term <name> from next-header fragment
set firewall family inet6 filter <name> term <name> then syslog
set firewall family inet6 filter <name> term <name> then discard

See Also

https://dl.dod.cyber.mil/wp-content/uploads/stigs/zip/U_Juniper_EX_Switches_Y23M07_STIG.zip

Item Details

Category: SYSTEM AND COMMUNICATIONS PROTECTION

References: 800-53|SC-7(11), CAT|II, CCI|CCI-002403, Rule-ID|SV-254053r844192_rule, STIG-ID|JUEX-RT-000810, Vuln-ID|V-254053

Plugin: Juniper

Control ID: 31ac1a0b2740e4df838e27b59ddf15c5ed9011dc7b63155f14d4afcdcfde09f4