Skip to main content

body-parser EUVDEUVD-2026-108189

| CVE-2026-111181 HIGH
Uncaught Exception (CWE-248)
2026-10-22 openjs
7.5
CVSS 3.1 · Vendor: openjs
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Send HTTP request to any endpoint
  2. Delivery
    Set Content-Encoding gzip header
  3. Exploit
    Body parser pipes to decompression stream
  4. Execution
    Append trailing bytes after valid frame
  5. Persist
    Decoder emits error with no listener
  6. Impact
    Uncaught exception crashes Node process

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Exception handling completeness
Exploitation Conditions

Exploitation requires that request-body inflation remain enabled (the default) and that the application use a body-parser body parser; the attacker sends a request with a Content-Encoding such as gzip whose payload is one valid compressed frame followed by trailing bytes. No authentication and no matching route are required because parsing runs before routing, so every endpoint that parses a body is affected under default configuration. The exploitation is LIMITED only where operators have set the body-parser inflate option to false (the documented workaround, which rejects encoded requests before any decompression stream is created) or have already upgraded to 2.4.0 or 1.20.9; applications on vulnerable versions with defaults are exploitable by any remote unauthenticated client.

Impact

This is a genuine operational priority despite having no confidentiality or integrity impact. The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, 7.5) is internally consistent with the vendor description: a single network request, no authentication (PR:N), no user interaction, and low complexity crashes the process, giving a pure high-availability impact (A:H). The vuln.today decision label is 'this_week', which aligns with a reliable, trivially-triggered, unauthenticated DoS affecting default configurations. No EPSS score was provided, so exploitation-probability modeling cannot be incorporated. The CVE is NOT listed in CISA KEV and there is no public exploit identified at time of analysis - the only references are the OpenJS/GHSA advisory and the CNA page, which are vendor advisories, not proof-of-concept code. No SSVC exploitation/automatable/technical-impact decision points were supplied beyond the vendor priority label. The signals are not conflicting: everything points to a real, easily-weaponized availability flaw whose severity is capped at DoS. The main reason it is 'this_week' rather than an emergency is the absence of code execution or data exposure and the lack of confirmed active exploitation, combined with the extreme ease of triggering a crash against any Node.js/Express service using body-parser with defaults.

Exploit ScenarioDerived

An unauthenticated attacker sends a single HTTP request to any endpoint of an Express/Node.js application using body-parser with default options, setting Content-Encoding: gzip and a body consisting of one valid compressed frame followed by extra trailing bytes. The application parses and responds normally, but the trailing bytes then hit the already-finished decompression stream, which has no error listener, producing an uncaught exception that terminates the process. No public exploit code is identified at time of analysis, though the vendor advisory fully describes the trigger mechanism.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 22, 2026

Denial of service in body-parser before 1.20.9 and in 2.0.0 through 2.3.x allows any remote unauthenticated client to terminate a Node.js or Express process that uses default body parsing. A request with a Content-Encoding such as gzip and trailing bytes after a valid compressed frame causes the finished decompression stream to emit an error with no error listener, resulting in an uncaught exception. The vendor has released fixes in 2.4.0 and 1.20.9; no public exploit code was identified in the supplied intelligence at time of analysis.

RemediationAI

Upgrade to body-parser 2.4.0 for the 2.x line or 1.20.9 for the 1.x line, or later, per the vendor advisory at https://github.com/expressjs/body-parser/security/advisories/GHSA-27r3-jxmh-p828. If an immediate upgrade is not possible and compressed request bodies are not required, set the body-parser inflate option to false, which rejects encoded requests before a decompression stream is created; this is the documented temporary workaround and its trade-off is that clients can no longer send gzip or deflate-encoded request bodies.

Affected VersionsENISA

body-parser 0 <1.20.9
body-parser 2.0.0 <2.4.0

Affected Packages

euvd body_parser fix: 1.20.9, 2.4.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

body-parser is Express and Node.js middleware that parses incoming request bodies before routing. With default inflate enabled, a Content-Encoding header causes body-parser to pipe the request through a decompression stream. The defect maps to CWE-248 (Uncaught Exception): after the body has been read, the decompression stream remains without an error listener; trailing bytes following one valid compressed frame reach the already-finished decoder, which emits a stream error that is re-thrown as an uncaught exception and exits the process. CPE cpe:2.3:a:body-parser:body-parser:*:*:*:*:*:*:*:* identifies the npm package; affected ranges are before 1.20.9 and from 2.0.0 before 2.4.0. The trigger is described in the advisory as a valid compressed frame followed by trailing bytes, and no matching route is needed because parsing precedes routing.

Know when Node.js gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (openjs) PRIMARY 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
vuln.today AI 7.5 HIGH

A single unauthenticated network request against default config crashes the process (AV:N/AC:L/PR:N/UI:N, A:H); no confidentiality or integrity impact and no scope change.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (openjs).

CVSS VectorVendor: openjs

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

2
Patch available
Oct 22, 2026 - 15:17 EUVD
CVE Published
Oct 22, 2026 - 14:29 cve.org
HIGH 7.5

DescriptionCVE.org

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.

Technical POC Analysis

Evidence basis: the supplied evidence is the GitHub advisory GHSA-27r3-jxmh-p828 only.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

CVE-2026-111181 is a high-severity denial-of-service vulnerability in the widely used body-parser library. Any unauthenticated remote client can crash Node.js or Express servers that use default body parsing by sending a crafted compressed request, potentially taking down public-facing APIs and web applications. Leadership should prioritize patching because this flaw could cause significant service outages and reputational damage.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

Prevalence
High
extremely common Node.js/Express request-body middleware, tens of millions of weekly installs
Social Media
1
Sightings
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org Vulnrichment CIRCL GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS N/A
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

CVE-2025-68613 HIGH POC
8.8 Dec 19

Remote code execution in n8n's workflow expression evaluation system allows an authenticated user with workflow creation

CVE-2024-41713 CRITICAL POC
9.1 Oct 21

A vulnerability in the NuPoint Unified Messaging (NPM) component of Mitel MiCollab through 9.8 SP1 FP2 (9.8.1.201) could

CVE-2024-55591 CRITICAL POC
9.8 Jan 14

FortiOS and FortiProxy contain an authentication bypass via the Node.js websocket module allowing unauthenticated remote

CVE-2023-44487 HIGH POC
7.5 Oct 10

Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour

CVE-2014-7205 CRITICAL POC
10.0 Oct 08

Eval injection vulnerability in the internals.batch function in lib/batch.js in the bassmaster plugin before 1.5.2 for t

CVE-2025-59528 CRITICAL POC
10.0 Sep 22

Flowise version 3.0.5 contains a remote code execution vulnerability in the CustomMCP node. The mcpServerConfig paramete

CVE-2017-14849 HIGH POC
7.5 Sep 28

Node.js 8.5.0 before 8.6.0 allows remote attackers to access unintended files, because a change to ".." handling was inc

CVE-2017-5941 CRITICAL POC
9.8 Feb 09

An issue was discovered in the node-serialize package 0.0.4 for Node.js. Rated critical severity (CVSS 9.8), this vulner

CVE-2014-0224 HIGH POC
7.4 Jun 05

OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph

CVE-2014-3744 HIGH POC
7.5 Oct 23

Directory traversal vulnerability in the st module before 0.2.5 for Node.js allows remote attackers to read arbitrary fi

CVE-2014-9566 HIGH POC
7.5 Mar 10

Multiple SQL injection vulnerabilities in the Manage Accounts page in the AccountManagement.asmx service in the Solarwin

CVE-2013-4660 MEDIUM POC
6.8 Jun 28

The JS-YAML module before 2.0.5 for Node.js parses input without properly considering the unsafe !!js/function tag, whic

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy