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

Published Oct 22, 2026
·
Updated

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.

Affected Software

1 affected component
npm/multer>=2.0.0<2.5.0

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade multer to a version that resolves this vulnerability.

    Fixed in 2.5.0
  2. Configuration

    Configure multer to use a synchronous fileFilter as a workaround.

    multer fileFilter = synchronous

Event History

Oct 22, 2026
CVE Published
via MITRE·02:20 PM
Data Sourced
via MITRE·02:20 PM
DescriptionSeverityWeakness

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