An Improper Check for Unusual or Exceptional Conditions vulnerability in the pfe (packet forwarding engine) of Juniper Networks Junos OS on MX Series causes a port within a pool to be blocked leading to Denial of Service (DoS).
In a DS-Lite (Dual-Stack Lite) and NAT (Network Address Translation) scenario, when crafted IPv6 traffic is received and prefix-length is set to 56, the ports assigned to the user will not be freed. Eventually, users cannot establish new connections. Affected FPC/PIC need to be manually restarted to recover. Following is the command to identify the issue:
user@host> show services nat source port-block Host_IP External_IP Port_Block Ports_Used/ Block_State/ Range Ports_Total Left_Time(s) 2001:: x.x.x.x 58880-59391 256/256*1 Active/- »»»»port still usedThis issue affects Junos OS on MX Series:
This issue does not affect versions before 20.2R1.
The product does not check or incorrectly checks for unusual or exceptional conditions that are not expected to occur frequently during day to day operation of the product.
| Name | Vendor | Start Version | End Version |
|---|---|---|---|
| Junos | Juniper | 21.2 (including) | 21.2 (including) |
| Junos | Juniper | 21.2-r1 (including) | 21.2-r1 (including) |
| Junos | Juniper | 21.2-r1-s1 (including) | 21.2-r1-s1 (including) |
| Junos | Juniper | 21.2-r1-s2 (including) | 21.2-r1-s2 (including) |
| Junos | Juniper | 21.2-r2 (including) | 21.2-r2 (including) |
| Junos | Juniper | 21.2-r2-s1 (including) | 21.2-r2-s1 (including) |
| Junos | Juniper | 21.2-r2-s2 (including) | 21.2-r2-s2 (including) |
| Junos | Juniper | 21.2-r3 (including) | 21.2-r3 (including) |
| Junos | Juniper | 21.2-r3-s1 (including) | 21.2-r3-s1 (including) |
| Junos | Juniper | 21.2-r3-s2 (including) | 21.2-r3-s2 (including) |
| Junos | Juniper | 21.2-r3-s3 (including) | 21.2-r3-s3 (including) |
| Junos | Juniper | 21.2-r3-s4 (including) | 21.2-r3-s4 (including) |
| Junos | Juniper | 21.2-r3-s5 (including) | 21.2-r3-s5 (including) |
| Junos | Juniper | 21.2-r3-s6 (including) | 21.2-r3-s6 (including) |
| Junos | Juniper | 21.2-r3-s7 (including) | 21.2-r3-s7 (including) |
| Junos | Juniper | 21.4 (including) | 21.4 (including) |
| Junos | Juniper | 21.4-r1 (including) | 21.4-r1 (including) |
| Junos | Juniper | 21.4-r1-s1 (including) | 21.4-r1-s1 (including) |
| Junos | Juniper | 21.4-r1-s2 (including) | 21.4-r1-s2 (including) |
| Junos | Juniper | 21.4-r2 (including) | 21.4-r2 (including) |
| Junos | Juniper | 21.4-r2-s1 (including) | 21.4-r2-s1 (including) |
| Junos | Juniper | 21.4-r2-s2 (including) | 21.4-r2-s2 (including) |
| Junos | Juniper | 21.4-r3 (including) | 21.4-r3 (including) |
| Junos | Juniper | 21.4-r3-s1 (including) | 21.4-r3-s1 (including) |
| Junos | Juniper | 21.4-r3-s2 (including) | 21.4-r3-s2 (including) |
| Junos | Juniper | 21.4-r3-s3 (including) | 21.4-r3-s3 (including) |
| Junos | Juniper | 21.4-r3-s4 (including) | 21.4-r3-s4 (including) |
| Junos | Juniper | 21.4-r3-s5 (including) | 21.4-r3-s5 (including) |
| Junos | Juniper | 21.4-r3-s6 (including) | 21.4-r3-s6 (including) |
| Junos | Juniper | 22.1 (including) | 22.1 (including) |
| Junos | Juniper | 22.1-r1 (including) | 22.1-r1 (including) |
| Junos | Juniper | 22.1-r1-s1 (including) | 22.1-r1-s1 (including) |
| Junos | Juniper | 22.1-r1-s2 (including) | 22.1-r1-s2 (including) |
| Junos | Juniper | 22.1-r2 (including) | 22.1-r2 (including) |
| Junos | Juniper | 22.1-r2-s1 (including) | 22.1-r2-s1 (including) |
| Junos | Juniper | 22.1-r2-s2 (including) | 22.1-r2-s2 (including) |
| Junos | Juniper | 22.1-r3 (including) | 22.1-r3 (including) |
| Junos | Juniper | 22.1-r3-s1 (including) | 22.1-r3-s1 (including) |
| Junos | Juniper | 22.1-r3-s2 (including) | 22.1-r3-s2 (including) |
| Junos | Juniper | 22.1-r3-s3 (including) | 22.1-r3-s3 (including) |
| Junos | Juniper | 22.1-r3-s4 (including) | 22.1-r3-s4 (including) |
| Junos | Juniper | 22.1-r3-s5 (including) | 22.1-r3-s5 (including) |
| Junos | Juniper | 22.2 (including) | 22.2 (including) |
| Junos | Juniper | 22.2-r1 (including) | 22.2-r1 (including) |
| Junos | Juniper | 22.2-r1-s1 (including) | 22.2-r1-s1 (including) |
| Junos | Juniper | 22.2-r1-s2 (including) | 22.2-r1-s2 (including) |
| Junos | Juniper | 22.2-r2 (including) | 22.2-r2 (including) |
| Junos | Juniper | 22.2-r2-s1 (including) | 22.2-r2-s1 (including) |
| Junos | Juniper | 22.2-r2-s2 (including) | 22.2-r2-s2 (including) |
| Junos | Juniper | 22.2-r3 (including) | 22.2-r3 (including) |
| Junos | Juniper | 22.2-r3-s1 (including) | 22.2-r3-s1 (including) |
| Junos | Juniper | 22.2-r3-s2 (including) | 22.2-r3-s2 (including) |
| Junos | Juniper | 22.2-r3-s3 (including) | 22.2-r3-s3 (including) |
| Junos | Juniper | 22.3 (including) | 22.3 (including) |
| Junos | Juniper | 22.3-r1 (including) | 22.3-r1 (including) |
| Junos | Juniper | 22.3-r1-s1 (including) | 22.3-r1-s1 (including) |
| Junos | Juniper | 22.3-r1-s2 (including) | 22.3-r1-s2 (including) |
| Junos | Juniper | 22.3-r2 (including) | 22.3-r2 (including) |
| Junos | Juniper | 22.3-r2-s1 (including) | 22.3-r2-s1 (including) |
| Junos | Juniper | 22.3-r2-s2 (including) | 22.3-r2-s2 (including) |
| Junos | Juniper | 22.3-r3 (including) | 22.3-r3 (including) |
| Junos | Juniper | 22.3-r3-s1 (including) | 22.3-r3-s1 (including) |
| Junos | Juniper | 22.3-r3-s2 (including) | 22.3-r3-s2 (including) |
| Junos | Juniper | 22.4 (including) | 22.4 (including) |
| Junos | Juniper | 22.4-r1 (including) | 22.4-r1 (including) |
| Junos | Juniper | 22.4-r1-s1 (including) | 22.4-r1-s1 (including) |
| Junos | Juniper | 22.4-r1-s2 (including) | 22.4-r1-s2 (including) |
| Junos | Juniper | 22.4-r2 (including) | 22.4-r2 (including) |
| Junos | Juniper | 22.4-r2-s1 (including) | 22.4-r2-s1 (including) |
| Junos | Juniper | 22.4-r2-s2 (including) | 22.4-r2-s2 (including) |
| Junos | Juniper | 22.4-r3 (including) | 22.4-r3 (including) |
| Junos | Juniper | 22.4-r3-s1 (including) | 22.4-r3-s1 (including) |
| Junos | Juniper | 23.2 (including) | 23.2 (including) |
| Junos | Juniper | 23.2-r1 (including) | 23.2-r1 (including) |
| Junos | Juniper | 23.2-r1-s1 (including) | 23.2-r1-s1 (including) |
| Junos | Juniper | 23.2-r1-s2 (including) | 23.2-r1-s2 (including) |
| Junos | Juniper | 23.2-r2 (including) | 23.2-r2 (including) |
| Junos | Juniper | 23.4 (including) | 23.4 (including) |
| Junos | Juniper | 23.4-r1 (including) | 23.4-r1 (including) |
| Junos | Juniper | 23.4-r1-s1 (including) | 23.4-r1-s1 (including) |
| Junos | Juniper | 23.4-r2 (including) | 23.4-r2 (including) |
The programmer may assume that certain events or conditions will never occur or do not need to be worried about, such as low memory conditions, lack of access to resources due to restrictive permissions, or misbehaving clients or components. However, attackers may intentionally trigger these unusual conditions, thus violating the programmer’s assumptions, possibly introducing instability, incorrect behavior, or a vulnerability. Note that this entry is not exclusively about the use of exceptions and exception handling, which are mechanisms for both checking and handling unusual or unexpected conditions.