Description
Improper Neutralization of CRLF Sequences ('CRLF Injection') vulnerability in elixir-mint Mint allows HTTP Request Splitting and HTTP Request Smuggling.
In lib/mint/http1/request.ex, the encode_request_line/2 function splices the caller-supplied method and target arguments directly into the HTTP/1 request line without any character validation: [method, ?\s, target, " HTTP/1.1\r\n"]. An application that forwards attacker-controlled input as the HTTP method or target to Mint.HTTP.request/5 is therefore exposed to request-line CRLF injection: the attacker can terminate the request line early, inject arbitrary headers, and smuggle an entirely separate pipelined HTTP request onto the same TCP connection.
Mint 1.7.0 introduced validate_request_target/2, which rejects CRLF and other control characters in the target by default and closes the path/query vector unless the caller opts out via skip_target_validation: true. The method field remains unvalidated, so the method-based injection is exploitable under the default Mint configuration on all versions.
This issue affects mint: from 0.1.0 before 1.9.0.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| elixir-mint | mint | 0.1.0 – < 1.9.0 | 1.9.0 |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| Hex | mint | >= 0.1.0, < 1.9.0 | 1.9.0 | EEF-CVE-2026-48861 |
| Hex | mint | < 1.9.0 | 1.9.0 | GHSA-2pg6-44cx-c49v |
References
- https://github.com/elixir-mint/mint/security/advisories/GHSA-2pg6-44cx-c49v vendor-advisory related
- https://cna.erlef.org/cves/CVE-2026-48861.html related
- https://osv.dev/vulnerability/EEF-CVE-2026-48861 related
- https://github.com/elixir-mint/mint/commit/fad091454cbb7449b19edb8e1fee12ca7cf28c3a patch