Description
@fastify/busboy is a multipart form-data parser for Node.js. Its multipart part-header parser splits header lines only on the two-byte carriage-return line-feed sequence, so a lone carriage return or line feed embedded in a part header is not treated as a line break and is carried verbatim into the parsed Content-Disposition filename and field name handed to the application. An attacker who uploads a file whose filename or field name contains a bare carriage return or line feed can inject control characters into consumers that trust the parser to return clean values, enabling filesystem filename pollution, log forging, or header injection when the value is forwarded to a carriage-return-sensitive sink. All versions of @fastify/busboy up to and including 3.2.1 are affected. The issue is fixed in version 3.2.2, which rejects any header line that still contains a bare carriage return or line feed. Users should upgrade to 3.2.2, and consumers such as @fastify/multipart should bump their @fastify/busboy dependency to pull in the fix.
Published: 2026-08-21
Score: 5.8 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Server‑side injection enabling filename pollution, log forging, or header injection
Action: Immediate update
AI Analysis

Impact

@fastify/busboy parses multipart form-data headers by splitting only on the two‑byte CRLF sequence. When a header line contains a lone carriage return or line feed, it is not treated as a line break and is carried verbatim into the parsed Content‑Disposition filename or field name. This flaw allows an attacker to upload a file whose name or form field contains a bare carriage return or line feed, injecting arbitrary control characters into values that the application later trusts. The result can be filesystem filename pollution, log forging, or injection into HTTP headers, compromising data integrity or leading to further exploitation.

Affected Systems

All versions of @fastify/busboy up to and including 3.2.1 are vulnerable. The fix is provided in 3.2.2 which rejects header lines containing bare CR or LF characters. Users of @fastify/busboy and dependent projects such as @fastify/multipart should update to 3.2.2 or a later release.

Risk and Exploitability

The CVSS score of 5.8 indicates moderate risk. The EPSS score is not available, so the likelihood of exploitation is uncertain. The vulnerability is not listed in the CISA KEV catalog. Attackers would need to craft a multipart request with a filename or field name that includes CR or LF; if the application forwards these unvalidated values to vulnerable sinks, the consequences can include file system corruption or log tampering.

Generated by OpenCVE AI on August 21, 2026 at 10:08 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade @fastify/busboy to version 3.2.2 or newer.
  • Ensure that dependent packages such as @fastify/multipart update their @fastify/busboy dependency to pull in the fixed version.
  • Validate all filenames and field names received via multipart forms, rejecting or sanitizing any embedded carriage return or line feed characters before use.

Generated by OpenCVE AI on August 21, 2026 at 10:08 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 08 Sep 2026 15:00:00 +0000

Type Values Removed Values Added
First Time appeared Fastify fastify\/busyboy
CPEs cpe:2.3:a:fastify:fastify\/busyboy:*:*:*:*:*:node.js:*:*
Vendors & Products Fastify fastify\/busyboy

Mon, 31 Aug 2026 12:15:00 +0000

Type Values Removed Values Added
References
Metrics threat_severity

None

threat_severity

Moderate


Fri, 21 Aug 2026 13:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Fri, 21 Aug 2026 12:30:00 +0000

Type Values Removed Values Added
First Time appeared Fastify
Fastify busboy
Vendors & Products Fastify
Fastify busboy

Fri, 21 Aug 2026 08:30:00 +0000

Type Values Removed Values Added
Description @fastify/busboy is a multipart form-data parser for Node.js. Its multipart part-header parser splits header lines only on the two-byte carriage-return line-feed sequence, so a lone carriage return or line feed embedded in a part header is not treated as a line break and is carried verbatim into the parsed Content-Disposition filename and field name handed to the application. An attacker who uploads a file whose filename or field name contains a bare carriage return or line feed can inject control characters into consumers that trust the parser to return clean values, enabling filesystem filename pollution, log forging, or header injection when the value is forwarded to a carriage-return-sensitive sink. All versions of @fastify/busboy up to and including 3.2.1 are affected. The issue is fixed in version 3.2.2, which rejects any header line that still contains a bare carriage return or line feed. Users should upgrade to 3.2.2, and consumers such as @fastify/multipart should bump their @fastify/busboy dependency to pull in the fix.
Title @fastify/busboy vulnerable to CRLF injection via multipart Content-Disposition filename and name
Weaknesses CWE-93
References
Metrics cvssV3_1

{'score': 5.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:L/A:N'}


Subscriptions

Fastify Busboy Fastify\/busyboy
cve-icon MITRE

Status: PUBLISHED

Assigner: openjs

Published:

Updated: 2026-08-21T12:37:26.259Z

Reserved: 2026-08-17T10:26:26.386Z

Link: CVE-2026-74866

cve-icon Vulnrichment

Updated: 2026-08-21T12:37:21.935Z

cve-icon NVD

Status : Analyzed

Published: 2026-08-21T09:16:40.890

Modified: 2026-09-08T14:47:52.977

Link: CVE-2026-74866

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-08-21T08:20:32Z

Links: CVE-2026-74866 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-21T12:08:01Z

Weaknesses
  • CWE-93

    Improper Neutralization of CRLF Sequences ('CRLF Injection')