CVE-2026-113872: multer vulnerable to Denial of Service via a pending asynchronous fileFilter after request teardown

Published Oct 22, 2026
·
Updated

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.

Other sources

multer is a middleware for Node.js that handles multipart/form-data file uploads. In versions from 2.0.0 before 2.5.0, when multer is configured with an asynchronous fileFilter, a single request can crash the Node.js process. If the request is aborted while one file's asynchronous fileFilter is still pending, the pending callback later resumes a parsing stream that multer has already torn down, and the underlying parser emits an error on a stream that no longer has an error listener, which Node raises as an unhandled error event so the process exits. Any application using multer with an asynchronous fileFilter is affected regardless of storage engine, while uploads using a synchronous fileFilter are not affected. The issue is fixed in multer 2.5.0, and users should upgrade to 2.5.0 or later. As a workaround, use a synchronous fileFilter.

— MITRE

Affected Software

6 affected componentsFixes available
npm/multer>=2.0.0<2.5.0
npm/multer>=2.0.0<2.5.0
2.5.0
debian/node-multer<2.5.0+~cs3.3.0-1
2.5.0+~cs3.3.0-1
debian/node-multer
2.5.0+~cs3.3.0-1
IBM App Connect Operator<=CD: 12.1.0 - 12.21.0 12.0 LTS: 12.0.0 - 12.0.28 13 LTS: 13.0.0 - 13.6.0
IBM App Connect EnterpriseCertified Containers Operands<=CD: 12.0.11.1-r1 - 12.0.12.5-r1, 13.0.1.0-r1 - 13.0.6.2-r1 12.0 LTS: 12.0.12-r1 - 12.0.12-r28 13 LTS: 13.0.7.0-r1 - 13.0.9.0-r1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade npm/multer to a version that resolves this vulnerability.

    Fixed in 2.5.0
  2. Upgrade

    Upgrade debian/node-multer to a version that resolves this vulnerability.

    Fixed in 2.5.0+~cs3.3.0-1
  3. Upgrade

    Upgrade multer to a version that resolves this vulnerability.

    Fixed in 2.5.0
  4. Configuration

    Configure multer to use a synchronous fileFilter.

    multer fileFilter = synchronous

Event History

Oct 22, 2026
CVE Published
via MITRE·02:20 PM
Data Sourced
via MITRE·02:20 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·03:17 PM
DescriptionSeverityWeakness
Data Sourced
via OSV·03:17 PM
DescriptionSeverityAffected Software
Oct 23, 2026
Advisory Published
via GitHub·10:08 PM
Data Sourced
via GitHub·10:08 PM
DescriptionSeverityWeaknessAffected Software
Nov 9, 2026
Data Sourced
via IBM·12:00 AM
DescriptionAffected Software

Parent advisories

This vulnerability appears in the following advisories.

Frequently Asked Questions

1

Which deployments are exposed to this denial-of-service condition?

Applications using multer versions 2.0.0 through before 2.5.0 are affected only when configured with an asynchronous fileFilter. The issue applies regardless of the selected storage engine; uploads using a synchronous fileFilter are not affected.

2

What must an attacker do to trigger the crash?

An attacker needs to abort an upload request while an asynchronous fileFilter callback for a file is still pending. When that callback subsequently completes, it can cause an unhandled error event that exits the Node.js process.

3

What can be done if an immediate upgrade is not possible?

Replace the asynchronous fileFilter with a synchronous fileFilter as a workaround. The permanent fix is to upgrade multer to version 2.5.0 or later.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203