Apollo Router's Compressed Payloads do not respect HTTP Payload Limits
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub.
Summary
The Apollo Router is a graph router written in Rust to run a federated supergraph that uses Apollo Federation. Versions 0.9.5 until 1.40.2 are subject to a Denial-of-Service (DoS) type vulnerability. When receiving compressed HTTP payloads, affected versions of the Router evaluate the `limits.http_max_request_bytes` configuration option after the entirety of the compressed payload is decompressed. If affected versions of the Router receive highly compressed payloads, this could result in significant memory consumption while the compressed payload is expanded. Router version 1.40.2 has a fix for the vulnerability. Those who are unable to upgrade may be able to implement mitigations at proxies or load balancers positioned in front of their Router fleet (e.g. Nginx, HAProxy, or cloud-native WAF services) by creating limits on HTTP body upload size.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| apollographql | router | 0.9.5 to before 1.40.2 | 1.40.2 | Patch available | CNA |
| — | apollo-router (crates.io) | 0.9.5 to before 1.40.2 | 1.40.2 | Patch available | GHSA-cgqf-3cq5-wvcj |
- router Vendorapollographql Affected 0.9.5 to before 1.40.2 Fixed in 1.40.2 Patch available CNA
- apollo-router (crates.io) Vendor— Affected 0.9.5 to before 1.40.2 Fixed in 1.40.2 Patch available GHSA-cgqf-3cq5-wvcj
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:apollographql:apollo_router:*:*:*:*:-:*:*:* | 0.9.5 to before 1.40.2 | Vulnerable | apollographql |
- cpe:2.3:a:apollographql:apollo_router:*:*:*:*:-:*:*:* Versions 0.9.5 to before 1.40.2 Vulnerable ·apollographql
Remediation
- Fix · CNA router (apollographql) Fixed in 1.40.2
- Fix · GHSA-cgqf-3cq5-wvcj apollo-router (crates.io) Fixed in 1.40.2 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2024-28101
- 2026-10-03 Alias added: GHSA-cgqf-3cq5-wvcj
References
More apollographql Apollo Router vulnerabilities
- TI-2024-29063 Apollo Query Planner and Apollo Gateway may infinitely loop on sufficiently complex queries CVSS 3.1HIGH 7.5
- TI-2024-29378 Apollo Router Coprocessors may cause Denial-of-Service when handling request bodies CVSS 3.1HIGH 7.5
- TI-2023-24573 Improper Check or Handling of Exceptional Conditions in apollo-router CVSS 3.1HIGH 7.5
- TI-2023-21917 Unnamed "Subscription" operation results in Denial-of-Service in apollographql/router CVSS 3.1HIGH 7.5
Sources
- CVE-2024-28101 · CVE Program
- CVE-2024-28101 · NVD
- FIRST EPSS
- GHSA-cgqf-3cq5-wvcj · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences