CVE-2026-19481: @fastify/busboy vulnerable to Denial of Service via prototype-named multipart part header
Versions of @fastify/busboy from 1.0.0 and prior to 3.2.1 are vulnerable to a Denial of Service. The multipart header parser stores part-header names on a plain JavaScript object, so a part header named __proto__ or constructor resolves to an inherited value that is not an array, and the parser throws TypeError: this.header[h].push is not a function. Through the documented req.pipe(busboy) integration this surfaces as an error event, while direct write()/end() usage throws synchronously and can terminate the Node.js process if uncaught. The parser runs before application middleware, so any unauthenticated client that can submit multipart/form-data is affected.
References
- cna.openjsf.org/security-advisories.html
- github.com/advisories/GHSA-x8mw-p69m-v3mx
- github.com/fastify/busboy/commit/957a24b66d5915e6d0a6ac988c9dbcee86373e9b
- github.com/fastify/busboy/releases/tag/v3.2.1
- github.com/fastify/busboy/security/advisories/GHSA-x8mw-p69m-v3mx
- nvd.nist.gov/vuln/detail/CVE-2026-19481
Code Behaviors & Features
Detect and mitigate CVE-2026-19481 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →