CVE-2024-21585

Junos OS and Junos OS Evolved: BGP session flaps on NSR-enabled devices can cause rpd crash

MEDIUM
5.9
CVSS Score
Published: January 12, 2024 at 12:50 AM UTC
Updated: June 17, 2026 at 07:09 AM UTC
3 products affected across 2 vendorsJunosJunos OS EvolvedJunos OS Evolved

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.9
Exploit prediction
EPSS 0.6%
SSVC
No known exploit

Description

An Improper Handling of Exceptional Conditions vulnerability in BGP session processing of Juniper Networks Junos OS and Junos OS Evolved allows an unauthenticated network-based attacker, using specific timing outside the attacker's control, to flap BGP sessions and cause the routing protocol daemon (rpd) process to crash and restart, leading to a Denial of Service (DoS) condition. Continued BGP session flapping will create a sustained Denial of Service (DoS) condition. This issue only affects routers configured with non-stop routing (NSR) enabled. Graceful Restart (GR) helper mode, enabled by default, is also required for this issue to be exploitable. Note: NSR is not supported on the SRX Series and is therefore not affected by this vulnerability. When the BGP session flaps on the NSR-enabled router, the device enters GR-helper/LLGR-helper mode due to the peer having negotiated GR/LLGR-restarter capability and the backup BGP requests for replication of the GR/LLGR-helper session, master BGP schedules, and initiates replication of GR/LLGR stale routes to the backup BGP. In this state, if the BGP session with the BGP peer comes up again, unsolicited replication is initiated for the peer without cleaning up the ongoing GR/LLGR-helper mode replication. This parallel two instances of replication for the same peer leads to the assert if the BGP session flaps again. This issue affects: Juniper Networks Junos OS * All versions earlier than 20.4R3-S9; * 21.2 versions earlier than 21.2R3-S7; * 21.3 versions earlier than 21.3R3-S5; * 21.4 versions earlier than 21.4R3-S5; * 22.1 versions earlier than 22.1R3-S4; * 22.2 versions earlier than 22.2R3-S3; * 22.3 versions earlier than 22.3R3-S1; * 22.4 versions earlier than 22.4R2-S2, 22.4R3; * 23.2 versions earlier than 23.2R1-S1, 23.2R2. Juniper Networks Junos OS Evolved * All versions earlier than 21.3R3-S5-EVO; * 21.4 versions earlier than 21.4R3-S5-EVO; * 22.1 versions earlier than 22.1R3-S4-EVO; * 22.2 versions earlier than 22.2R3-S3-EVO; * 22.3 versions earlier than 22.3R3-S1-EVO; * 22.4 versions earlier than 22.4R2-S2-EVO, 22.4R3-EVO; * 23.2 versions earlier than 23.2R1-S1-EVO, 23.2R2-EVO.

Affected

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

Affected range stops below 20.4R3-S9, so it looks safe — our inference, not a vendor statement
Affected range stops below 21.2R3-S7, so it looks safe — our inference, not a vendor statement
Affected range stops below 21.3R3-S5, so it looks safe — our inference, not a vendor statement
Affected range stops below 21.4R3-S5, so it looks safe — our inference, not a vendor statement
Affected range stops below 22.1R3-S4, so it looks safe — our inference, not a vendor statement
Affected range stops below 22.2R3-S3, so it looks safe — our inference, not a vendor statement
Affected range stops below 22.3R3-S1, so it looks safe — our inference, not a vendor statement
Affected range stops below 22.4R2-S2, 22.4R3, so it looks safe — our inference, not a vendor statement
Affected range stops below 23.2R1-S1, 23.2R2, so it looks safe — our inference, not a vendor statement
v < 21.3R3-S5-EVO21.4 ≤ v < 21.4R3-S5-EVO22.1 ≤ v < 22.1R3-S4-EVO22.2 ≤ v < 22.2R3-S3-EVO22.3 ≤ v < 22.3R3-S1-EVO22.4 ≤ v < 22.4R2-S2-EVO, 22.4R3-EVO23.2 ≤ v < 23.2R1-S1-EVO, 23.2R2-EVO21.422.122.222.322.423.2
Affected range stops below 21.3R3-S5-EVO, so it looks safe — our inference, not a vendor statement
Affected range stops below 21.4R3-S5-EVO, so it looks safe — our inference, not a vendor statement
Affected range stops below 22.1R3-S4-EVO, so it looks safe — our inference, not a vendor statement
Affected range stops below 22.2R3-S3-EVO, so it looks safe — our inference, not a vendor statement
Affected range stops below 22.3R3-S1-EVO, so it looks safe — our inference, not a vendor statement
Affected range stops below 22.4R2-S2-EVO, 22.4R3-EVO, so it looks safe — our inference, not a vendor statement
Affected range stops below 23.2R1-S1-EVO, 23.2R2-EVO, so it looks safe — our inference, not a vendor statement

Remediation

No guide yet

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

SSVC — Action Prioritization

SSVCNo known exploitNot automatablePartial impact

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

CVSS

5.9MEDIUMjuniper
Attack Vector
NETWORK
Complexity
HIGH
Privileges
NONE
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
NONE
Integrity
NONE
Availability
HIGH
Vector?

Quick Info

StatusMODIFIED
CWE
CWE-755

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