Skip to main content

multer CVE-2026-88932

| EUVDEUVD-2026-77332 MEDIUM
Uncontrolled Resource Consumption (CWE-400)
2026-09-14 openjs GHSA-3pph-fpjx-jg34
5.3
CVSS 3.1 · Vendor: openjs
View

Attack ChainAIDerived

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

  1. Recon
    Identify public multer disk-storage upload endpoint
  2. Delivery
    Send partial multipart/form-data request to trigger async disk write
  3. Exploit
    Abort connection before multer cleanup completes
  4. Install
    Orphaned file persists post-cleanup
  5. C2
    Repeat at high frequency
  6. Execute
    Disk partition fills to capacity
  7. Impact
    Application denial of service

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V2 - Validation and Business Logic Resource consumption limits
MITRE ATT&CK

1 technique across 1 tactic: Impact

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires multer version 2.2.0 or 2.3.0 with the DiskStorage engine configured (the default when a destination path is supplied). The vulnerable endpoint must be reachable by the attacker without authentication (PR:N per CVSS). The race condition is timing-sensitive - the attacker must abort the connection after a disk write has been initiated but before multer's cleanup routine processes it - however this window is reliably triggerable by aborting at a predictable point in the upload stream. Memory storage (MemoryStorage) configurations are NOT vulnerable. Rate limiting, request size caps, or connection throttling at a reverse proxy layer reduces but does not eliminate the attack surface. No session token, API key, or valid credentials are required.

Impact

The CVSS 5.3 Medium score (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L) accurately reflects the attack profile: fully remote, unauthenticated, low complexity, but with only limited availability impact because disk exhaustion is gradual rather than instantaneous. No KEV listing exists and no public exploit or POC has been identified at time of analysis, so EPSS-equivalent risk remains low in practice. The primary real-world concern is shared-disk deployments where the upload partition is also used by the OS or database - in such scenarios, A:L understates the blast radius. Even a mid-sized municipal IT team in leszno running a Node.js upload service on a shared volume should treat this as a low-to-medium priority patch, particularly if rate limiting is already in place on upload endpoints. The absence of confidentiality or integrity impact, combined with no confirmed active exploitation, makes this a routine patch-cycle item rather than an emergency response trigger.

Exploit ScenarioDerived

An attacker identifies a public Node.js/Express endpoint using multer disk storage and repeatedly initiates multipart/form-data POST requests, sending just enough data to trigger a disk write before sending a TCP RST or closing the connection to abort the upload. Because multer's abort cleanup completes before the asynchronous write finishes, each cycle deposits one orphaned file in the upload directory. By scripting hundreds of such requests per minute, the attacker can fill the target disk partition within minutes to hours depending on upload chunk size and disk capacity, rendering the application and potentially co-located services unavailable.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.3% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 14, 2026

Disk space exhaustion in multer 2.2.0-2.3.0 allows a remote unauthenticated attacker to repeatedly start and abort multipart/form-data uploads, leaving orphaned temporary files that accumulate until the host disk partition is exhausted. The race condition arises when asynchronous disk writes complete after multer's abort cleanup routine has already run, so those files escape deletion entirely. No authentication is required and no special server configuration beyond the default disk storage engine is needed; the issue is fixed in multer 2.4.0.

RemediationAI

Upgrade multer to version 2.4.0 or later; this is the vendor-released patch confirmed by the OpenJS Foundation advisory at https://github.com/expressjs/multer/security/advisories/GHSA-3pph-fpjx-jg34. If immediate upgrade is not feasible, consider switching affected endpoints to memory storage (MemoryStorage engine) as a temporary measure - this eliminates orphaned disk files but shifts resource consumption to RAM, so it is only suitable for small-file upload endpoints with bounded concurrency. A second compensating control is to add per-IP rate limiting on upload endpoints (e.g., via express-rate-limit) to throttle the rate at which an attacker can accumulate orphaned files. A third option is a scheduled cleanup job targeting the multer temp directory to remove files older than a configurable threshold, accepting that some legitimate in-progress uploads could be affected. None of these workarounds fully close the race condition; upgrading to 2.4.0 is the definitive fix.

Affected VersionsENISA

multer 2.2.0 <2.4.0

Affected Packages

npm multer fix: 2.4.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in npm

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

Technical ContextAI · show details

multer is a Node.js Express middleware built on top of busboy for parsing multipart/form-data request bodies, most commonly used to handle browser file uploads. It supports two storage engines: memory storage (files buffered in RAM) and disk storage (files written to a configurable directory). The vulnerability is rooted in CWE-400 (Uncontrolled Resource Consumption): when a client aborts an upload, multer triggers its cleanup path, but because disk I/O is asynchronous in Node.js, a file write that was already in flight can complete successfully after the cleanup handler has finished - leaving the file on disk with no subsequent deletion. The affected CPE is cpe:2.3:a:multer:multer:*:*:*:*:*:*:*:* restricted to versions 2.2.0 and 2.3.0. The race window is introduced or widened by a change between 2.1.x and 2.2.0; 2.4.0 closes it by tracking and cleaning up late-completing writes.

Know when Multer 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 5.3 MEDIUM
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
vuln.today AI 5.3 MEDIUM

Network-reachable, unauthenticated, no complexity barrier beyond default disk storage; availability impact is limited as exhaustion is gradual and confidentiality/integrity are unaffected.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
SUSE 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Red Hat 5.3 MEDIUM

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
Low

Lifecycle Timeline

2
Patch available
Sep 14, 2026 - 10:02 EUVD
CVE Published
Sep 14, 2026 - 08:46 cve.org
MEDIUM 5.3

DescriptionCVE.org

multer is a Node.js middleware for handling multipart/form-data uploads. In versions 2.2.0 through 2.3.0, when a request using disk storage is aborted mid-upload, file writes that complete after multer has already run its abort cleanup are not removed, so each aborted upload can leave an orphaned file on disk. A remote unauthenticated attacker can repeatedly start and abort uploads to accumulate orphaned files and exhaust disk space, causing a denial of service. The issue is fixed in multer 2.4.0, and users should upgrade to 2.4.0 or later.

Threat Intelligence Overview

EPSS Score
0.3%
Top 76% exploitable
Prevalence
High
widely-used Node.js file upload middleware across Express applications
Threat Intel
1
1 source
Exploit
POC
Public exploit code exists
Social Media
2
Sightings
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA Vendor CIRCL GitHub

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 MEDIUM
CISA KEV No
Public POC Yes
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.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· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact· derived
High
Technical Impact
Partial

Priority Score

46
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: +20
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.

More in Multer

View all
CVE-2026-3520 HIGH
8.7 Mar 04

Denial of service in Multer (Express.js multipart/form-data middleware) before version 2.1.1 allows remote unauthenticat

CVE-2026-3304 HIGH
8.7 Feb 27

Denial of service in Multer (the Express/Node.js multipart/form-data middleware) before version 2.1.0 lets remote attack

CVE-2026-2359 HIGH
8.7 Feb 27

Denial of service in Multer (Express.js multipart/form-data middleware) before version 2.1.0 lets remote unauthenticated

CVE-2026-77037 HIGH
7.5 Aug 28

File descriptor exhaustion in multer 2.2.0's DiskStorage engine allows remote unauthenticated attackers to cause denial

CVE-2026-77078 HIGH
7.5 Aug 28

Remote denial-of-service in the Node.js multer middleware (all versions before 2.3.0) allows unauthenticated attackers t

CVE-2026-82333 HIGH
7.5 Aug 28

Event loop exhaustion in multer (all versions before 2.3.0) allows unauthenticated remote attackers to render a Node.js

CVE-2026-5079 HIGH
7.5 Jun 15

Denial of service in the Express.js multer middleware (versions 1.0.0 through 2.1.1 and 3.0.0-alpha.1) allows unauthenti

CVE-2026-5038 HIGH
7.5 Jun 15

Denial of service in Multer versions 2.0.0-alpha.1 through 2.1.1 and 3.0.0-alpha.1 allows remote unauthenticated attacke

CVE-2026-113872 HIGH
7.5 Oct 22

Applications that configure the multer upload middleware (npm package, versions 2.0.0 through 2.4.x) with an asynchronou

CVE-2026-77063 LOW
3.7 Aug 28

Race condition in multer's file stream handling allows uploaded files exceeding the configured fileSize limit to bypass

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Module for Desktop Applications 15 SP7 Affected
SUSE Linux Enterprise Server 15 SP7 Affected
SUSE Linux Enterprise Server 16.0 Affected
SUSE Linux Enterprise Server 16.1 Affected

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