CVE-2026-8161: multiparty denial of service via prototype pollution

CVE-2026-8161 · Severity: high · CVSS 7.5 · Published 2026-05-12

The multiparty library, a popular tool for handling file uploads in Node.js applications, is vulnerable to a denial-of-service attack. By sending a specially crafted upload request, an attacker can cause the application to crash. This can lead to service outages and impact the availability of any web application that uses this library to process user uploads.

Technologies: multiparty (npm), Pillarjs Multiparty. Vendors: npm, Pillarjs.

Quick answers

Is CVE-2026-8161 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-8161 being exploited in the wild.
How severe is CVE-2026-8161?
High severity, with a CVSS score of 7.5, published 12 May 2026.
Which products and versions are affected?
multiparty (npm) SEMVER:introduced=0,fixed=4.3.0; Pillarjs Multiparty <= 4.2.3, <=4.2.3.
Is there a fix for CVE-2026-8161?
Yes. multiparty (npm): upgrade to 4.3.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-8161 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-8161?
Check whether you run multiparty (npm) or Pillarjs Multiparty at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • multiparty (npm): upgrade to 4.3.0 or later
    npm install multiparty@4.3.0

Technical details

The multiparty library (versions 4.2.3 and lower) is vulnerable to a denial-of-service (DoS) attack caused by an uncaught exception. The vulnerability occurs when a 'multipart/form-data' request contains a field name that matches an inherited property of 'Object.prototype' (such as '__proto__', 'constructor', or 'toString'). When the parser attempts to handle these fields, it incorrectly invokes the '.push()' method on the inherited prototype value instead of an array. This results in a 'TypeError' that propagates as an uncaught exception, crashing the Node.js process. The issue is fixed in version 4.3.0.

Affected products

  • pillarjs multiparty <= 4.2.3

Identifiers

  • CVE-2026-8161
  • GHSA-qxch-whhj-8956

Timeline

  • 2026-05-12: disclosed: Vulnerability published to NVD
  • 2026-05-18: advisory: GitHub Advisory published

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.