CVE-2026-19481 PUBLISHED

@fastify/busboy vulnerable to Denial of Service via prototype-named multipart part header

Assigner: openjs
Reserved: 10.08.2026 Published: 13.08.2026 Updated: 13.08.2026

@fastify/busboy is a multipart form-data parser. In versions 1.0.0 through 3.2.0, an attacker who can submit multipart form-data can crash the parser by sending a part header whose name is a prototype-inherited property such as proto or constructor. The internal header parser stores headers in a plain JavaScript object and assumes each value is an array, so an inherited property name resolves to a truthy non-array value and triggers a TypeError. In the common pipe integration the failure surfaces as an error event, but in direct write or end usage the exception is thrown synchronously and can terminate the Node.js process, causing an unauthenticated denial of service. The issue is fixed in @fastify/busboy 3.2.1, which creates the header object with a null prototype. Users should upgrade to 3.2.1.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS Score: 7.5

Product Status

Vendor @fastify/busboy
Product @fastify/busboy
Versions Default: unaffected
  • affected from 1.0.0 to 3.2.1 (excl.)
  • Version 3.2.1 is unaffected

Credits

  • kq5y reporter
  • mcollina remediation developer
  • UlisesGascon remediation reviewer

References

Problem Types

  • CWE-754: Improper Check for Unusual or Exceptional Conditions CWE