title: Junos OS: QFX10000 Series: In IP/MPLS PHP node scenarios upon receipt of certain crafted packets multiple interfaces in LAG configurations may detach.
description: On QFX10000 Series devices using Juniper Networks Junos OS when configured as transit IP/MPLS penultimate hop popping (PHP) nodes with link aggregation group (LAG) interfaces, an Improper Validation of Specified Index, Position, or Offset in Input weakness allows an attacker sending certain IP packets to cause multiple interfaces in the LAG to detach causing a Denial of Service (DoS) condition. Continued receipt and processing of these packets will sustain the Denial of Service. This issue affects IPv4 and IPv6 packets. Packets of either type can cause and sustain the DoS event. These packets can be destined to the device or be transit packets. On devices such as the QFX10008 with line cards, line cards can be restarted to restore service. On devices such as the QFX10002 you can restart the PFE service, or reboot device to restore service. This issue affects: Juniper Networks Junos OS on QFX10000 Series: All versions prior to 15.1R7-S11; 18.4 versions prior to 18.4R2-S10, 18.4R3-S10; 19.1 versions prior to 19.1R3-S8; 19.2 versions prior to 19.2R3-S4; 19.3 versions prior to 19.3R3-S5; 19.4 versions prior to 19.4R2-S6, 19.4R3-S7; 20.1 versions prior to 20.1R3-S3; 20.2 versions prior to 20.2R3-S3; 20.3 versions prior to 20.3R3-S2; 20.4 versions prior to 20.4R3-S4; 21.1 versions prior to 21.1R3; 21.2 versions prior to 21.2R3-S3; 21.3 versions prior to 21.3R3-S1. An indicator of compromise may be seen by issuing the command: request pfe execute target fpc0 command "show jspec pechip[3] registers ps l2_node 10" timeout 0 | refresh 1 | no-more and reviewing for backpressured output; for example: GOT: 0x220702a8 pe.ps.l2_node[10].pkt_cnt 00000076 GOT: 0x220702b4 pe.ps.l2_node[10].backpressured 00000002 <<<< STICKS HERE and requesting detail on the pepic wanio: request pfe execute target fpc0 command "show pepic 0 wanio-info" timeout 0 | no-more | match xe-0/0/0:2 GOT: 3 xe-0/0/0:2 10 6 3 0 1 10 189 10 0x6321b088 <<< LOOK HERE as well as looking for tail drops looking at the interface queue, for example: show interfaces queue xe-0/0/0:2 resulting in: Transmitted: Total-dropped packets: 1094137 0 pps << LOOK HERE
problem types: CWE-1285: Improper Validation of Specified Index, Position, or Offset in Input
affected:
{
vendor: Juniper Networks
product: Junos OS
versions:
version: unspecified, lessThan: 15.1R7-S11, status: affected, versionType: custom
version: 18.4, status: affected, lessThan: 18.4R2-S10, 18.4R3-S10, versionType: custom
version: 19.1, status: affected, lessThan: 19.1R3-S8, versionType: custom
version: 19.2, status: affected, lessThan: 19.2R3-S4, versionType: custom
version: 19.3, status: affected, lessThan: 19.3R3-S5, versionType: custom
version: 19.4, status: affected, lessThan: 19.4R2-S6, 19.4R3-S7, versionType: custom
version: 20.1, status: affected, lessThan: 20.1R3-S3, versionType: custom
version: 20.2, status: affected, lessThan: 20.2R3-S3, versionType: custom
version: 20.3, status: affected, lessThan: 20.3R3-S2, versionType: custom
version: 20.4, status: affected, lessThan: 20.4R3-S4, versionType: custom
version: 21.1, status: affected, lessThan: 21.1R3, versionType: custom
version: 21.2, status: affected, lessThan: 21.2R3-S3, versionType: custom
version: 21.3, status: affected, lessThan: 21.3R3-S1, versionType: custom
platforms: QFX10000 Series
}
metrics:
cvssV3_1: [
version: 3.1
vectorString: CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
attackVector: ADJACENT_NETWORK
attackComplexity: LOW
privilegesRequired: NONE
userInteraction: NONE
scope: UNCHANGED
confidentialityImpact: NONE
integrityImpact: NONE
availabilityImpact: HIGH
baseScore: 6.5
baseSeverity: MEDIUM
]
exploits: Juniper SIRT is not aware of any malicious exploitation of this vulnerability.
solutions: The following software releases have been updated to resolve this specific issue: 15.1R7-S11, 18.4R2-S10, 18.4R3-S10, 19.1R3-S8, 19.2R3-S4, 19.3R3-S5, 19.4R2-S6, 19.4R3-S7, 20.1R3-S3, 20.2R3-S3, 20.3R3-S2, 20.4R3-S4, 21.1R3, 21.2R3-S3, 21.3R3-S1 21.4R1, and all subsequent releases.
workarounds: Customers can apply the following PFE VTY commands as a workaround until a fixed release can be taken:
bringup jspec write pechip[0] register egp main init_params 36 00000068
bringup jspec write pechip[1] register egp main init_params 36 00000068
bringup jspec write pechip[2] register egp main init_params 36 00000068
bringup jspec write pechip[3] register egp main init_params 36 00000068
bringup jspec write pechip[4] register egp main init_params 36 00000068
bringup jspec write pechip[5] register egp main init_params 36 00000068
This workaround must be reapplied upon any reboot.