GitHub Advisoryadvisory · npm

GHSA-q7qp-rjg7-q26m multer vulnerable to Denial of Service via a pending asynchronous fileFilter after request teardown

HIGH Published 2026-10-23 Modified 2026-10-23 Official page ↗
Aliases
CVE-2026-113872
Ecosystem
npm
Packages
multer
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weaknesses
CWE-248, CWE-404
Reviewed
2026-10-23

Affected packages

• npm multer: >= 2.0.0, < 2.5.0 → fixed in 2.5.0

Description

Impact When `multer` is configured with an asynchronous `fileFilter`, a single request can crash the Node.js process. If a request is aborted (for example when one file is rejected) while another file's async `fileFilter` is still pending, the pending callback later resumes a parsing stream that multer has already torn down. busboy then emits an error on a stream that no longer has an error listener, which Node raises as an unhandled `'error'` event, and the process exits. A single unauthenticated request is enough, so any application using `multer` with an asynchronous `fileFilter` is affected, regardless of storage engine. Uploads using a synchronous `fileFilter` are not affected. Patches Users should upgrade to `multer` `2.5.0` or later. Workarounds Use a synchronous `fileFilter`.

Related

Alias · CVE (1)

  • CVE-2026-113872 multer is a middleware for Node.js that handles multipart/form-data file uploads. vulnerability

Weakness · CWE (2)

  • CWE-248 Uncaught Exception weakness
  • CWE-404 Improper Resource Shutdown or Release weakness

References