CVE-2026-77063: multer vulnerable to file size limit bypass via async fileFilter race condition
When multer is configured with an asynchronous fileFilter, the limits.fileSize limit can be bypassed. The 'limit' event is registered inside the async fileFilter callback, so if a file exceeds limits.fileSize before that callback runs, the event is missed and the oversized upload is accepted instead of being rejected with a LIMIT_FILE_SIZE error. Applications that rely on limits.fileSize to reject oversized uploads are affected on all upload methods (.single(), .array(), .fields(), .any()). Uploads using a synchronous fileFilter are not affected.
References
- cna.openjsf.org/security-advisories.html
- github.com/advisories/GHSA-qvfw-j98x-7q72
- github.com/expressjs/multer/commit/ab6aeae650328cf31799dcfa4c3e116ba8faaacc
- github.com/expressjs/multer/releases/tag/v2.3.0
- github.com/expressjs/multer/security/advisories/GHSA-qvfw-j98x-7q72
- nvd.nist.gov/vuln/detail/CVE-2026-77063
Code Behaviors & Features
Detect and mitigate CVE-2026-77063 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →