CVE Catalog

CVE-2026-12143

HighCVSS 7.5
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.41%

33th percentile - higher than 33% of all known CVEs

Summary

The form-data library for creating multipart/form-data streams is vulnerable to CRLF injection. An attacker can inject CR, LF, or double-quote characters in the field name or filename, allowing addition of extra headers or multipart parts to the request.

Risk Assessment

The risk involves potential modification of HTTP requests forwarded to the backend, e.g., adding fields like `is_admin=true`, which could lead to privilege escalation or access control bypass.

Recommendation

Immediately update the form-data library to version 2.5.6, 3.0.5, or 4.0.6. If updating is not possible, avoid using untrusted input as field names or filenames.

Original NVD description (English source)

form-data is a library for creating readable multipart/form-data streams. In versions through 4.0.5, the `field` argument to `FormData#append` and the `filename` option are concatenated verbatim into the `Content-Disposition` header without escaping carriage return (CR), line feed (LF), or double-quote (") characters. An application that passes attacker-controlled data as a field name or filename (for example, an API gateway that turns JSON object keys into multipart field names) allows the attacker to terminate the header line and inject additional headers, or to smuggle entire additional multipart parts, into the request the application forwards to a backend. This can let the attacker add or override form fields (e.g. set `is_admin=true`) seen by the downstream parser. This is an instance of CWE-93 (CRLF injection). The fix escapes CR, LF, and `"` as `%0D`, `%0A`, and `%22` in field names and filenames, matching the serialization browsers use per the WHATWG HTML multipart/form-data encoding algorithm. Exploitation requires the consuming application to use untrusted input as a field name or filename; applications that use only fixed/trusted field names are not affected. Fixed in 2.5.6, 3.0.5, and 4.0.6.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS