Crash in body-parser via trailing bytes after compressed request body
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Denial of service
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-248.
Summary
body-parser versions before 1.20.9 and from 2.0.0 before 2.4.0 are affected. The middleware leaves the decompression stream for a Content-Encoding such as gzip without an error listener, so trailing bytes after a valid compressed frame raise an error that is thrown as an uncaught exception (CWE-248). A remote unauthenticated attacker can send one request to crash any Node.js application that uses body-parser with default options, because body parsing runs before routing.
Written with Claude Haiku 5.5 from the sources below · 2026-10-30
Description from the CNA
body-parser is body parsing middleware for Node.js and Express. In versions before 1.20.9 and in versions from 2.0.0 before 2.4.0, a single request can crash any application using body-parser with default options. When a request carries a Content-Encoding such as gzip, body-parser pipes it into a decompression stream and, after reading the body, leaves that stream with no error listener. A payload of one valid compressed frame followed by trailing bytes decodes and the application responds normally, but the trailing bytes then reach the already-finished decoder, which emits an error that is re-thrown as an uncaught exception and terminates the process. No matching route is required because body parsing runs before routing, so any endpoint that parses a body is affected. The issue is fixed in body-parser 2.4.0 and 1.20.9, and users should upgrade to one of those versions or later. As a workaround, disable request-body inflation (set the body-parser inflate option to false) so encoded requests are rejected before any decompression stream is created.
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 |
|---|---|---|---|---|---|
| body-parser | body-parser | 2.0.0 to before 2.4.0; before 1.20.9 | 2.4.0, 1.20.9 | Patch available | CNA |
| — | body-parser (npm) | 2.0.0 to before 2.4.0 | 2.4.0 | Patch available | GHSA-27r3-jxmh-p828 |
| — | body-parser (npm) | before 1.20.9 | 1.20.9 | Patch available | GHSA-27r3-jxmh-p828 |
- body-parser Vendorbody-parser Affected 2.0.0 to before 2.4.0; before 1.20.9 Fixed in 2.4.0, 1.20.9 Patch available CNA
- body-parser (npm) Vendor— Affected 2.0.0 to before 2.4.0 Fixed in 2.4.0 Patch available GHSA-27r3-jxmh-p828
- body-parser (npm) Vendor— Affected before 1.20.9 Fixed in 1.20.9 Patch available GHSA-27r3-jxmh-p828
Remediation
Upgrade body-parser to 1.20.9 on the 1.x line or to 2.4.0 on the 2.x line. Red Hat fixes this in Red Hat Hardened Images through RHSA-2026:90388, RHSA-2026:90990, RHSA-2026:91181 and RHSA-2026:91292. As a workaround, set the inflate option to false so encoded requests are rejected before any decompression stream is created.
Written with Claude Haiku 5.5 from the sources below · 2026-10-30
- Fix · CNA body-parser (body-parser) Fixed in 2.4.0, 1.20.9
- Fix · GHSA-27r3-jxmh-p828 body-parser (npm) Fixed in 2.4.0 Advisory →
- Fix · GHSA-27r3-jxmh-p828 body-parser (npm) Fixed in 1.20.9 Advisory →
Red Hat 4 advisories
- RHSA-2026:91292 Released 2026-10-27 · Red Hat rating ImportantRed Hat Hardened Images RPMs Security Update
- Red Hat Hardened Images grafana12.4-12.4.13-0.5.hum1@aarch64, grafana12.4-12.4.13-0.5.hum1@src, grafana12.4-12.4.13-0.5.hum1@x86_64
- RHSA-2026:91181 Released 2026-10-27 · Red Hat rating ImportantRed Hat Hardened Images RPMs Security Update
- Red Hat Hardened Images grafana13.1-13.1.8-0.5.hum1@aarch64, grafana13.1-13.1.8-0.5.hum1@s390x, grafana13.1-13.1.8-0.5.hum1@src +1
- RHSA-2026:90990 Released 2026-10-27 · Red Hat rating ImportantRed Hat Hardened Images RPMs Security Update
- Red Hat Hardened Images grafana13.2-13.2.4-0.4.hum1@aarch64, grafana13.2-13.2.4-0.4.hum1@s390x, grafana13.2-13.2.4-0.4.hum1@src +1
Show 1 more Red Hat advisories
- RHSA-2026:90388 Released 2026-10-26 · Red Hat rating ImportantRed Hat Hardened Images RPMs Security Update
- Red Hat Hardened Images grafana12.4-12.4.13-0.4.hum1@aarch64, grafana12.4-12.4.13-0.4.hum1@src, grafana12.4-12.4.13-0.4.hum1@x86_64
Vendor assessments
Red Hat
Red Hat rating: Important. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat Hardened Images | Fixed | RHSA-2026:90388, RHSA-2026:90990, RHSA-2026:91181, RHSA-2026:91292 |
Not affected: 1 product
- Red Hat Hardened Images
Timeline
- 2026-10-22 Threatist record created from CVE-2026-111181
- 2026-10-22 CISA SSVC decision points changed
- 2026-10-22 Priority changed: MEDIUM → LOW
- 2026-10-23 Affected versions changed · Red Hat
- 2026-10-23 CVSS score added · Red Hat
- 2026-10-23 Alias added: GHSA-27r3-jxmh-p828
- 2026-10-23 Fix available: npm/[email protected], npm/[email protected] · GHSA-27r3-jxmh-p828
- 2026-10-23 CVSS score added · GHSA-27r3-jxmh-p828
- 2026-10-23 Weakness changed · GHSA-27r3-jxmh-p828
- 2026-10-23 8 new references · GHSA-27r3-jxmh-p828
- 2026-10-29 Fix available: Red Hat Hardened Images · Red Hat
- 2026-10-30 Fix available: RHSA-2026:90388 · Red Hat
- 2026-10-30 Fix available: RHSA-2026:90990 · Red Hat
- 2026-10-30 Fix available: RHSA-2026:91181 · Red Hat
- 2026-10-30 Fix available: RHSA-2026:91292 · Red Hat
- 2026-10-30 Affected versions changed · Red Hat
References
Other 7
- https://github.com/expressjs/body-parser/security/advisories/GHSA-27r3-jxmh-p828
- https://cna.openjsf.org/security-advisories.html
- https://github.com/expressjs/body-parser/commit/1260c3845f54502a05a87594f09a334786bb34d7
- https://github.com/expressjs/body-parser/commit/f7075eae3a84c3473ab4bf0a777da28db208e916
- https://github.com/expressjs/body-parser
- https://github.com/expressjs/body-parser/releases/tag/1.20.9
- https://github.com/expressjs/body-parser/releases/tag/v2.4.0
More body-parser vulnerabilities
- TI-2025-12310 body-parser vulnerable to denial of service when url encoding is used CVSS 4.0MEDIUM 5.5
Sources
- CVE-2026-111181 · CVE Program
- CVE-2026-111181 · NVD
- FIRST EPSS
- GHSA-27r3-jxmh-p828 · GitHub Advisory Database · CC BY 4.0
- CVE-2026-111181 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences