CVE-2023-22409

Junos OS: SRX Series, MX Series with SPC3: When an inconsistent NAT configuration exists and a specific CLI command is issued the SPC will reboot

MEDIUM
5.5
CVSS Score
Published: January 12, 2023 at 12:00 AM UTC
Updated: June 17, 2026 at 05:35 AM UTC
46 products affected across 2 vendorsJunosSRX5600SRX5800

Using Junos OS by Juniper Networks?

Get instant alerts when new vulnerabilities affect Junos OS - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
MEDIUM5.5
Exploit prediction
EPSS 0.2%
SSVC
No known exploit

Description

An Unchecked Input for Loop Condition vulnerability in a NAT library of Juniper Networks Junos OS allows a local authenticated attacker with low privileges to cause a Denial of Service (DoS). When an inconsistent "deterministic NAT" configuration is present on an SRX, or MX with SPC3 and then a specific CLI command is issued the SPC will crash and restart. Repeated execution of this command will lead to a sustained DoS. Such a configuration is characterized by the total number of port blocks being greater than the total number of hosts. An example for such configuration is: [ services nat source pool TEST-POOL address x.x.x.0/32 to x.x.x.15/32 ] [ services nat source pool TEST-POOL port deterministic block-size 1008 ] [ services nat source pool TEST-POOL port deterministic host address y.y.y.0/24] [ services nat source pool TEST-POOL port deterministic include-boundary-addresses] where according to the following calculation: 65536-1024=64512 (number of usable ports per IP address, implicit) 64512/1008=64 (number of port blocks per Nat IP) x.x.x.0/32 to x.x.x.15/32 = 16 (NAT IP addresses available in NAT pool) total port blocks in NAT Pool = 64 blocks per IP * 16 IPs = 1024 Port blocks host address y.y.y.0/24 = 256 hosts (with include-boundary-addresses) If the port block size is configured to be 4032, then the total port blocks are (64512/4032) * 16 = 256 which is equivalent to the total host addresses of 256, and the issue will not be seen. This issue affects Juniper Networks Junos OS on SRX Series, and MX Series with SPC3: All versions prior to 19.4R3-S10; 20.1 version 20.1R1 and later versions; 20.2 versions prior to 20.2R3-S6; 20.3 versions prior to 20.3R3-S6; 20.4 versions prior to 20.4R3-S5; 21.1 versions prior to 21.1R3-S4; 21.2 versions prior to 21.2R3-S3; 21.3 versions prior to 21.3R3-S3; 21.4 versions prior to 21.4R3-S1; 22.1 versions prior to 22.1R2-S2, 22.1R3; 22.2 versions prior to 22.2R2.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

Affected range stops below 19.4, so it looks safe — our inference, not a vendor statement
Affected range stops below 19.4R3-S10, so it looks safe — our inference, not a vendor statement
Affected range stops below 20.1*, so it looks safe — our inference, not a vendor statement
Affected range stops below 20.2R3-S6, so it looks safe — our inference, not a vendor statement
Affected range stops below 20.3R3-S6, so it looks safe — our inference, not a vendor statement
Affected range stops below 20.4R3-S5, so it looks safe — our inference, not a vendor statement
Affected range stops below 21.1R3-S4, so it looks safe — our inference, not a vendor statement
Affected range stops below 21.2R3-S3, so it looks safe — our inference, not a vendor statement
Affected range stops below 21.3R3-S3, so it looks safe — our inference, not a vendor statement
Affected range stops below 21.4R3-S1, so it looks safe — our inference, not a vendor statement
Affected range stops below 22.1R2-S2, 22.1R3, so it looks safe — our inference, not a vendor statement
Affected range stops below 22.2R2, so it looks safe — our inference, not a vendor statement
juniper-mx10 (environment) · juniper-mx10000 (environment) · juniper-mx10003 (environment) · juniper-mx10008 (environment) · juniper-mx10016 (environment) · juniper-mx104 (environment) · juniper-mx150 (environment) · juniper-mx2008 (environment) · juniper-mx2010 (environment) · juniper-mx2020 (environment) · juniper-mx204 (environment) · juniper-mx240 (environment) · juniper-mx40 (environment) · juniper-mx480 (environment) · juniper-mx5 (environment) · juniper-mx80 (environment) · juniper-mx960 (environment) · juniper-srx100 (environment) · juniper-srx110 (environment) · juniper-srx1400 (environment) · juniper-srx1500 (environment) · juniper-srx210 (environment) · juniper-srx220 (environment) · juniper-srx240 (environment) · juniper-srx240h2 (environment) · juniper-srx240m (environment) · juniper-srx300 (environment) · juniper-srx320 (environment) · juniper-srx340 (environment) · juniper-srx3400 (environment) · juniper-srx345 (environment) · juniper-srx3600 (environment) · juniper-srx380 (environment) · juniper-srx4000 (environment) · juniper-srx4100 (environment) · juniper-srx4200 (environment) · juniper-srx4600 (environment) · juniper-srx5000 (environment) · juniper-srx5400 (environment) · juniper-srx550 (environment) · juniper-srx550-hm (environment) · juniper-srx550m (environment) · juniper-srx5600 (environment) · juniper-srx5800 (environment) · juniper-srx650 (environment)
All versions
All versions
All versions
All versions
All versions
All versions
All versions
All versions
All versions

Remediation

No guide yet

No remediation guidance has been written for this CVE yet. What the record does show:

Patch and advisory references

References (1)

SSVC — Action Prioritization

SSVCNo known exploitNot automatablePartial impact

SSVC signals action urgency (what to patch first), separate from CVSS which measures severity.

CVSS

5.5MEDIUMjuniper
Attack Vector
LOCAL
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
NONE
Integrity
NONE
Availability
HIGH
Vector?

Quick Info

StatusMODIFIED
CWE
CWE-1284

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card