CVE-2025-48997
NoneCVSS
—
EPSS
0.4%
Published
Jun 3, 2025
CISA due date
—
Cloudanix analysis
A flaw in a common web software component can allow an attacker to easily crash an application by sending a specially crafted file upload, making the service unavailable to all users.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- Library
- Class
- Denial of service
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Medium
What it actually does
A vulnerability in the Multer middleware for Node.js allows a remote, unauthenticated attacker to cause a Denial of Service (DoS). By sending a specially crafted `multipart/form-data` request containing a field with an empty string for its name, an attacker can trigger an unhandled exception. This exception crashes the entire Node.js process, making the application unavailable.
Why it matters to the business
Exploitation of this vulnerability will lead to application downtime. For any web service that relies on the vulnerable component for file uploads, an attacker can repeatedly crash the service, making it unavailable to legitimate users. This can result in a poor user experience, loss of customer trust, and potential revenue loss, especially for business-critical applications. Since the attack is simple and requires no authentication, any exposed application is at risk of service disruption.
How an attack unfolds
A remote attacker targets a web application that uses a vulnerable version of the Multer library to handle file uploads. The attacker constructs a malicious HTTP POST request with a `multipart/form-data` content type. Within the body of this request, the attacker defines a part with a `Content-Disposition` header where the `name` attribute is an empty string (e.g., `name=""`). When the Node.js application receives this request, the Multer middleware attempts to parse it. It fails to properly handle the empty field name, leading to an unhandled exception that propagates up the stack and terminates the Node.js process, causing an immediate Denial of Service.
How to fix it
The primary and only recommended remediation is to upgrade the Multer package to a patched version. The vulnerability is fixed in version `2.0.1` and later. Developers should update their project's `package.json` file to specify `"multer": "^2.0.1"` or a higher version and then run their package manager's install command (e.g., `npm install` or `yarn install`). According to the vulnerability report, there are no known workarounds.
How to confirm the fix worked
To validate that the vulnerability has been remediated, inspect the project's dependency tree to confirm that the installed version of Multer is `2.0.1` or later. Use commands like `npm list multer` or `yarn list --pattern multer` in the application's root directory. Ensure that the resolved version in `package-lock.json` or `yarn.lock` is a non-vulnerable one. Do not attempt to validate the vulnerability by sending exploit traffic to production systems.
Typical attack path
- The attacker identifies a target Node.js application that uses the Multer middleware for handling file uploads.
- The attacker crafts a malicious `multipart/form-data` HTTP request containing a part with an empty string for the `name` attribute in its `Content-Disposition` header.
- The attacker sends this request to an endpoint on the application that processes file uploads.
- The vulnerable Multer library receives the request and fails to parse the empty field name, triggering an unhandled exception.
- The Node.js process crashes, causing the application to become unavailable until it is manually or automatically restarted.
How to detect it
To detect potential exploitation, security teams should monitor for unexpected crashes and restarts of Node.js application processes. Correlate these crash events with inbound traffic in web server or load balancer access logs. Look for HTTP POST requests to file upload endpoints that occurred immediately before a crash. Application performance monitoring (APM) tools or application-level error logs may contain stack traces indicating an unhandled exception originating from the Multer library's form parsing logic.
- http.request.body contains 'Content-Disposition: form-data; name=""'
What your security team should do
- Use software composition analysis (SCA) tools to identify all applications and services that use the `multer` Node.js package.
- Prioritize patching for publicly accessible applications that handle file uploads, as they are the most likely targets.
- Upgrade all instances of `multer` to version `2.0.1` or newer. Since no workarounds exist, patching is critical.
- Consider implementing robust process management (like PM2 or systemd) and automated restarts for Node.js applications to minimize downtime from crashes, though this does not fix the underlying vulnerability.
The record
Multer is a node.js middleware for handling `multipart/form-data`. A vulnerability that is present starting in version 1.4.4-lts.1 and prior to version 2.0.1 allows an attacker to trigger a Denial of Service (DoS) by sending an upload file request with an empty string field name. This request causes an unhandled exception, leading to a crash of the process. Users should upgrade to `2.0.1` to receive a patch. No known workarounds are available.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| npm | multer | 1.4.4-lts.1 | 2.0.1 |
| Chainguard | grafana-image-renderer | 0 | 3.12.6-r1 |
| Wolfi | grafana-image-renderer | 0 | 3.12.6-r1 |
Related vulnerabilities
- GHSA-72gw-mp4g-v24j Multer vulnerable to Denial of Service via deeply nested field names Also affects multer
- GHSA-3p4h-7m6x-2hcm Multer vulnerable to Denial of Service via incomplete cleanup of aborted uploads Also affects multer
- CVE-2026-5038 Impact: multer versions 2.0.0-alpha.1 through 2.1.1 and 3.0.0-alpha.1 are vulnerable to a… Also affects multer
- CVE-2026-5079 Impact: multer versions 1.0.0 through 2.1.1 and 3.0.0-alpha.1 are vulnerable to a Denial… Also affects multer
- GHSA-5528-5vmv-3xc2 Multer Vulnerable to Denial of Service via Uncontrolled Recursion Also affects multer
- CVE-2026-3520 Multer is a node.js middleware for handling `multipart/form-data`. Also affects multer
- GHSA-xf7r-hgr6-v32p Multer vulnerable to Denial of Service via incomplete cleanup Also affects multer
- GHSA-v52c-386h-88mc Multer vulnerable to Denial of Service via resource exhaustion Also affects multer