An Improper Check for Unusual or Exceptional Conditions vulnerability in the Juniper DHCP service (jdhcpd) of Juniper Networks Junos OS and Junos OS Evolved allows a DHCP client in one subnet to exhaust the address pools of other subnets, leading to a Denial of Service (DoS) on the downstream DHCP server.
By default, the DHCP relay agent inserts its own Option 82 information when forwarding client requests, optionally replacing any Option 82 information provided by the client. When a specific DHCP DISCOVER is received in forward-only mode with Option 82, the device should drop the message unless trust-option82 is configured. Instead, the DHCP relay forwards these packets to the DHCP server unmodified, which uses up addresses in the DHCP servers address pool, ultimately leading to address pool exhaustion.
This issue affects Junos OS:
Junos OS Evolved:
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 (excluding) |
| 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.2-r3-s8 (including) | 21.2-r3-s8 (including) |
| Junos | Juniper | 21.2-r3-s9 (including) | 21.2-r3-s9 (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-s10 (including) | 21.4-r3-s10 (including) |
| Junos | Juniper | 21.4-r3-s11 (including) | 21.4-r3-s11 (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 | 21.4-r3-s7 (including) | 21.4-r3-s7 (including) |
| Junos | Juniper | 21.4-r3-s8 (including) | 21.4-r3-s8 (including) |
| Junos | Juniper | 21.4-r3-s9 (including) | 21.4-r3-s9 (including) |
| Junos | Juniper | 22.2 (including) | 22.2 (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 | 22.4-r3-s2 (including) | 22.4-r3-s2 (including) |
| Junos | Juniper | 22.4-r3-s3 (including) | 22.4-r3-s3 (including) |
| Junos | Juniper | 22.4-r3-s4 (including) | 22.4-r3-s4 (including) |
| Junos | Juniper | 22.4-r3-s5 (including) | 22.4-r3-s5 (including) |
| Junos | Juniper | 22.4-r3-s6 (including) | 22.4-r3-s6 (including) |
| Junos | Juniper | 22.4-r3-s7 (including) | 22.4-r3-s7 (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.2-r2-s1 (including) | 23.2-r2-s1 (including) |
| Junos | Juniper | 23.2-r2-s2 (including) | 23.2-r2-s2 (including) |
| Junos | Juniper | 23.2-r2-s3 (including) | 23.2-r2-s3 (including) |
| Junos | Juniper | 23.2-r2-s4 (including) | 23.2-r2-s4 (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-r1-s2 (including) | 23.4-r1-s2 (including) |
| Junos | Juniper | 23.4-r2 (including) | 23.4-r2 (including) |
| Junos | Juniper | 23.4-r2-s1 (including) | 23.4-r2-s1 (including) |
| Junos | Juniper | 23.4-r2-s2 (including) | 23.4-r2-s2 (including) |
| Junos | Juniper | 23.4-r2-s3 (including) | 23.4-r2-s3 (including) |
| Junos | Juniper | 23.4-r2-s4 (including) | 23.4-r2-s4 (including) |
| Junos | Juniper | 23.4-r2-s5 (including) | 23.4-r2-s5 (including) |
| Junos | Juniper | 24.2 (including) | 24.2 (including) |
| Junos | Juniper | 24.2-r1 (including) | 24.2-r1 (including) |
| Junos | Juniper | 24.2-r1-s1 (including) | 24.2-r1-s1 (including) |
| Junos | Juniper | 24.2-r1-s2 (including) | 24.2-r1-s2 (including) |
| Junos | Juniper | 24.2-r2 (including) | 24.2-r2 (including) |
| Junos | Juniper | 24.2-r2-s1 (including) | 24.2-r2-s1 (including) |
| Junos | Juniper | 24.4 (including) | 24.4 (including) |
| Junos | Juniper | 24.4-r1 (including) | 24.4-r1 (including) |
| Junos | Juniper | 24.4-r1-s2 (including) | 24.4-r1-s2 (including) |
| Junos | Juniper | 24.4-r1-s3 (including) | 24.4-r1-s3 (including) |
| Junos | Juniper | 25.2 (including) | 25.2 (including) |
| Junos | Juniper | 25.2-r1 (including) | 25.2-r1 (including) |
| Junos | Juniper | 25.2-r2 (including) | 25.2-r2 (including) |
| Junos_os_evolved | Juniper | * | 21.4 (excluding) |
| Junos_os_evolved | Juniper | 21.4 (including) | 21.4 (including) |
| Junos_os_evolved | Juniper | 21.4-r1 (including) | 21.4-r1 (including) |
| Junos_os_evolved | Juniper | 21.4-r1-s1 (including) | 21.4-r1-s1 (including) |
| Junos_os_evolved | Juniper | 21.4-r1-s2 (including) | 21.4-r1-s2 (including) |
| Junos_os_evolved | Juniper | 21.4-r2 (including) | 21.4-r2 (including) |
| Junos_os_evolved | Juniper | 21.4-r2-s1 (including) | 21.4-r2-s1 (including) |
| Junos_os_evolved | Juniper | 21.4-r2-s2 (including) | 21.4-r2-s2 (including) |
| Junos_os_evolved | Juniper | 21.4-r3 (including) | 21.4-r3 (including) |
| Junos_os_evolved | Juniper | 21.4-r3-s1 (including) | 21.4-r3-s1 (including) |
| Junos_os_evolved | Juniper | 21.4-r3-s10 (including) | 21.4-r3-s10 (including) |
| Junos_os_evolved | Juniper | 21.4-r3-s11 (including) | 21.4-r3-s11 (including) |
| Junos_os_evolved | Juniper | 21.4-r3-s2 (including) | 21.4-r3-s2 (including) |
| Junos_os_evolved | Juniper | 21.4-r3-s3 (including) | 21.4-r3-s3 (including) |
| Junos_os_evolved | Juniper | 21.4-r3-s4 (including) | 21.4-r3-s4 (including) |
| Junos_os_evolved | Juniper | 21.4-r3-s5 (including) | 21.4-r3-s5 (including) |
| Junos_os_evolved | Juniper | 21.4-r3-s6 (including) | 21.4-r3-s6 (including) |
| Junos_os_evolved | Juniper | 21.4-r3-s7 (including) | 21.4-r3-s7 (including) |
| Junos_os_evolved | Juniper | 21.4-r3-s8 (including) | 21.4-r3-s8 (including) |
| Junos_os_evolved | Juniper | 21.4-r3-s9 (including) | 21.4-r3-s9 (including) |
| Junos_os_evolved | Juniper | 22.2 (including) | 22.2 (including) |
| Junos_os_evolved | Juniper | 22.4 (including) | 22.4 (including) |
| Junos_os_evolved | Juniper | 22.4-r1 (including) | 22.4-r1 (including) |
| Junos_os_evolved | Juniper | 22.4-r1-s1 (including) | 22.4-r1-s1 (including) |
| Junos_os_evolved | Juniper | 22.4-r1-s2 (including) | 22.4-r1-s2 (including) |
| Junos_os_evolved | Juniper | 22.4-r2 (including) | 22.4-r2 (including) |
| Junos_os_evolved | Juniper | 22.4-r2-s1 (including) | 22.4-r2-s1 (including) |
| Junos_os_evolved | Juniper | 22.4-r2-s2 (including) | 22.4-r2-s2 (including) |
| Junos_os_evolved | Juniper | 22.4-r3 (including) | 22.4-r3 (including) |
| Junos_os_evolved | Juniper | 22.4-r3-s1 (including) | 22.4-r3-s1 (including) |
| Junos_os_evolved | Juniper | 22.4-r3-s2 (including) | 22.4-r3-s2 (including) |
| Junos_os_evolved | Juniper | 22.4-r3-s3 (including) | 22.4-r3-s3 (including) |
| Junos_os_evolved | Juniper | 22.4-r3-s4 (including) | 22.4-r3-s4 (including) |
| Junos_os_evolved | Juniper | 22.4-r3-s5 (including) | 22.4-r3-s5 (including) |
| Junos_os_evolved | Juniper | 22.4-r3-s6 (including) | 22.4-r3-s6 (including) |
| Junos_os_evolved | Juniper | 22.4-r3-s7 (including) | 22.4-r3-s7 (including) |
| Junos_os_evolved | Juniper | 23.2 (including) | 23.2 (including) |
| Junos_os_evolved | Juniper | 23.2-r1 (including) | 23.2-r1 (including) |
| Junos_os_evolved | Juniper | 23.2-r1-s1 (including) | 23.2-r1-s1 (including) |
| Junos_os_evolved | Juniper | 23.2-r1-s2 (including) | 23.2-r1-s2 (including) |
| Junos_os_evolved | Juniper | 23.2-r2 (including) | 23.2-r2 (including) |
| Junos_os_evolved | Juniper | 23.2-r2-s1 (including) | 23.2-r2-s1 (including) |
| Junos_os_evolved | Juniper | 23.2-r2-s2 (including) | 23.2-r2-s2 (including) |
| Junos_os_evolved | Juniper | 23.2-r2-s3 (including) | 23.2-r2-s3 (including) |
| Junos_os_evolved | Juniper | 23.2-r2-s4 (including) | 23.2-r2-s4 (including) |
| Junos_os_evolved | Juniper | 23.4 (including) | 23.4 (including) |
| Junos_os_evolved | Juniper | 23.4-r1 (including) | 23.4-r1 (including) |
| Junos_os_evolved | Juniper | 23.4-r1-s1 (including) | 23.4-r1-s1 (including) |
| Junos_os_evolved | Juniper | 23.4-r1-s2 (including) | 23.4-r1-s2 (including) |
| Junos_os_evolved | Juniper | 23.4-r2 (including) | 23.4-r2 (including) |
| Junos_os_evolved | Juniper | 23.4-r2-s1 (including) | 23.4-r2-s1 (including) |
| Junos_os_evolved | Juniper | 23.4-r2-s2 (including) | 23.4-r2-s2 (including) |
| Junos_os_evolved | Juniper | 23.4-r2-s3 (including) | 23.4-r2-s3 (including) |
| Junos_os_evolved | Juniper | 23.4-r2-s4 (including) | 23.4-r2-s4 (including) |
| Junos_os_evolved | Juniper | 23.4-r2-s5 (including) | 23.4-r2-s5 (including) |
| Junos_os_evolved | Juniper | 24.2 (including) | 24.2 (including) |
| Junos_os_evolved | Juniper | 24.2-r1 (including) | 24.2-r1 (including) |
| Junos_os_evolved | Juniper | 24.2-r1-s2 (including) | 24.2-r1-s2 (including) |
| Junos_os_evolved | Juniper | 24.2-r2 (including) | 24.2-r2 (including) |
| Junos_os_evolved | Juniper | 24.2-r2-s1 (including) | 24.2-r2-s1 (including) |
| Junos_os_evolved | Juniper | 24.4 (including) | 24.4 (including) |
| Junos_os_evolved | Juniper | 24.4-r1 (including) | 24.4-r1 (including) |
| Junos_os_evolved | Juniper | 24.4-r1-s2 (including) | 24.4-r1-s2 (including) |
| Junos_os_evolved | Juniper | 24.4-r1-s3 (including) | 24.4-r1-s3 (including) |
| Junos_os_evolved | Juniper | 25.2 (including) | 25.2 (including) |
| Junos_os_evolved | Juniper | 25.2-r1 (including) | 25.2-r1 (including) |
| Junos_os_evolved | Juniper | 25.2-r2 (including) | 25.2-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.