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

> Unauthenticated attackers can crash the routing daemon on Juniper routers with NSR enabled, causing a denial of service.

- **Severity:** Medium 5.9 (`CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H`)
- **Exploited in the wild:** Not known
- **Login needed:** Not needed
- **Attackable:** Over the internet
- **Victim action needed:** Not needed
- **Fix available:** No
- **Published:** 12 Jan 2024
- **Updated:** 14 Nov 2024
- **Also known as:** GHSA-3r4r-ffrp-777w

## What is CVE-2024-21585?

CVE-2024-21585 is a medium-severity denial of service vulnerability in Juniper Junos, published on 12 Jan 2024. An attacker can exploit it over the internet without logging in, with no action from the victim.

### Official 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.

Weakness: CWE-755 (Improper Handling of Exceptional Conditions)

## Which versions are affected by CVE-2024-21585?

It affects 2 products.


Products: Juniper Junos, Juniper Junos Os Evolved.

## How do I fix CVE-2024-21585?

No fix has been published for CVE-2024-21585 yet. Limit exposure of the affected software until one is available.

## Is CVE-2024-21585 being exploited?

There is no known exploitation of CVE-2024-21585 in the wild and no public exploit code.

## Other vulnerabilities in Juniper Junos

- [CVE-2023-36845](https://insights.sbomify.com/CVE-2023-36845/): Juniper Junos OS EX Series and SRX Series PHP External Variable Modification (critical 9.8, exploited in the wild)
- [CVE-2020-1631](https://insights.sbomify.com/CVE-2020-1631/): Juniper Junos OS Path Traversal (high 8.8, exploited in the wild)
- [CVE-2025-21590](https://insights.sbomify.com/CVE-2025-21590/): Juniper Junos OS Improper Isolation or Compartmentalization (medium 6.7, exploited in the wild)
- [CVE-2023-36851](https://insights.sbomify.com/CVE-2023-36851/): Juniper Junos OS SRX Series Missing Authentication for Critical Function (medium 5.3, exploited in the wild)
- [CVE-2023-36844](https://insights.sbomify.com/CVE-2023-36844/): Juniper Junos OS EX Series PHP External Variable Modification (medium 5.3, exploited in the wild)

## Fix prompt for AI coding agents

```text
Check this codebase for CVE-2024-21585 and fix it if it is affected.

What it is: CVE-2024-21585 is a medium-severity denial of service vulnerability in Juniper Junos, published on 12 Jan 2024. An attacker can exploit it over the internet without logging in, with no action from the victim.
Exploitation: There is no known exploitation of CVE-2024-21585 in the wild and no public exploit code.

Affected product: Juniper Junos. No package-level version data is available, so check the vendor advisory linked from the reference page.

Task:
1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.
2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.
3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.
4. Run the tests and summarise what changed and why.
5. If nothing in the project is affected, say so and change nothing.

Reference: https://insights.sbomify.com/CVE-2024-21585/ (Markdown: https://insights.sbomify.com/CVE-2024-21585/index.md)
```

## Sources

- CVE record: https://www.cve.org/CVERecord?id=CVE-2024-21585
- NVD: https://nvd.nist.gov/vuln/detail/CVE-2024-21585
- OSV: https://osv.dev/vulnerability/CVE-2024-21585

---
From sbomify Insights: https://insights.sbomify.com/CVE-2024-21585/
Summaries are generated and may contain mistakes; the official description above is the record.
