Packages / multer / Security

HighVulnerabilityGHSA-q7qp-rjg7-q26mCVE-2026-113872Published 23 Oct 2026

multer vulnerable to Denial of Service via a pending asynchronous fileFilter after request teardown

Your version

Affected releases · multer

  • 2.x2.0.0 – 2.4.0Fixed in 2.5.0

On 2.x, the newest line:

npm install multer@2.5.0
Every release on a timeline
  1. Not affected

    0.0.1 – 1.4.4

    32 releases

  2. Affected

    2.0.0 – 2.4.0

    8 releases

  3. Fixed

    2.5.0

    1 release, latest

41 stable releases of multer, oldest to newest.

What happens

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.