Read the docs
TI-2026-36667 Aliases CVE-2026-49756GHSA-px9f-whj3-246m

Multipart form-data header injection in Req via unescaped name/filename/content_type

Priority MEDIUM 44CWE-93Published · Updated

Key facts

Attack vector
Local
Privileges required
None
User interaction
None
Attack complexity
Low
Attack requirements
Present
Impact type
—
Confidentiality · integrity · availability
None · Low · None
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub.

Summary

Improper Neutralization of CRLF Sequences ('CRLF Injection') vulnerability in wojtekmach Req allows multipart parameter smuggling via attacker-influenced part metadata. Req.Utils.encode_form_part/2 in lib/req/utils.ex builds the per-part headers by interpolating the caller-supplied name, filename, and content_type values directly into the content-disposition and content-type lines with no escaping or CRLF stripping. A value containing ", \r, or \n closes the surrounding quoted value and starts a new header line; an additional \r\n--<boundary> terminates the current part and prepends a smuggled part of the attacker's choosing. This is reachable through every supported way of supplying a part. It is particularly easy when value is a %File.Stream{}, because filename then defaults to Path.basename(stream.path) and POSIX filenames may legitimately contain \r and \n. Any application that forwards user-controlled filenames (or field names / MIME types) through Req.post/2 with form_multipart: lets an attacker inject arbitrary headers into the outgoing multipart body or smuggle additional fields and parts into the request the victim service sends downstream. This issue affects req: from 0.5.3 before 0.6.0.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00207 10th percentileScored 2026-11-07
Fix Fixed req (wojtekmach): 0.6.0req (Hex): 0.6.0

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
wojtekmachreq0.5.3 to before 0.6.00.6.0Patch availableCNA
—req (Hex)0.5.3 to before 0.6.00.6.0Patch availableGHSA-px9f-whj3-246m
  • req Vendorwojtekmach Affected 0.5.3 to before 0.6.0 Fixed in 0.6.0 Patch available CNA
  • req (Hex) Vendor— Affected 0.5.3 to before 0.6.0 Fixed in 0.6.0 Patch available GHSA-px9f-whj3-246m

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:wojtekmach:req:*:*:*:*:*:*:*:*0.5.3 to before 0.6.0Vulnerablewojtekmach
  • cpe:2.3:a:wojtekmach:req:*:*:*:*:*:*:*:* Versions 0.5.3 to before 0.6.0 Vulnerable ·wojtekmach

Remediation

  • Fix · CNA req (wojtekmach) Fixed in 0.6.0
  • Fix · GHSA-px9f-whj3-246m req (Hex) Fixed in 0.6.0 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-49756
  2. 2026-10-03 Alias added: GHSA-px9f-whj3-246m

References

  • TI-2026-36666 Decompression bomb DoS in Req via auto-decoded archive and compressed response bodies CVSS 4.0HIGH 8.2

Sources