Description
Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling') vulnerability in elixir-mint mint allows a malicious HTTP/1 server to desynchronize an intermediary and the Mint client on a pooled connection, poisoning the responses to subsequent requests that share the connection.

message_body/1 in lib/mint/http1.ex selects chunked framing when chunked is the first coding listed in a response's Transfer-Encoding fields. RFC 9112 section 6.3 applies chunked framing only when chunked is the final coding, and otherwise reads the body until the server closes the connection. For a response such as Transfer-Encoding: chunked, gzip, an intermediary that follows the RFC treats every byte up to the close as the body, while Mint ends the body at the zero-length chunk and parses the remaining bytes as the response to the next request on the connection.

Mint also keeps the connection open after an HTTP/1.0 response, final or 1xx, that carries Transfer-Encoding and Connection: keep-alive. RFC 9112 section 6.1 requires treating the framing of such a message as faulty and closing the connection after it, so bytes after its chunked body are parsed as the response to the next request in the same way.

This issue affects mint: from 0.1.0 before 1.10.2.
Published: 2026-09-28
Score: 6.3 Medium
EPSS: < 1% Very Low
KEV: No
Impact: HTTP Request/Response Smuggling
Action: Apply Patch
AI Analysis

Impact

A malicious HTTP/1 server can send a response that includes a Transfer‑Encoding header where chunked is not the final coding, for example "Transfer‑Encoding: chunked, gzip", on a pooled connection. According to RFC 9112, chunked framing applies only when chunked is the last coding, yet the elixir‑mint Mint client incorrectly applies chunked framing regardless, terminating the body at the terminating zero‑length chunk. The remaining bytes are then parsed as a new response on the same connection, desynchronizing the client and any intermediary. This allows the attacker to poison or hijack responses to subsequent requests sharing that connection, a classic pattern of HTTP request/response smuggling classified as CWE‑444.

Affected Systems

Elixir‑Mint Mint v0.1.0 through 1.10.1 are affected. The bug impacts every release before 1.10.2, as noted by the CNA. Applications that reuse Mint connections to an upstream server that can control the Transfer‑Encoding header are potentially impacted.

Risk and Exploitability

The CVSS score of 6.3 indicates moderate severity, and the EPSS score is < 1%, indicating a very low but non‑zero exploitation probability. The vulnerability is not listed in the CISA KEV catalog. An attacker would need to send a crafted response with a non‑final chunked encoding or an ordering that violates RFC 9112 Section 6.3. Upon receipt, Mint ends the body at the zero‑length chunk and treats the following bytes as the next response, enabling data tampering or hijacking on the same connection.

Generated by OpenCVE AI on September 30, 2026 at 04:54 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade to Elixir‑Mint 1.10.2 or later, which includes the patch that enforces RFC 9112 compliance for Transfer‑Encoding handling.
  • Configure proxies or intermediaries to reject or strip any Transfer‑Encoding header that does not end with chunked, or to close the connection immediately after a non‑final chunked response.
  • Review application code that reuses Mint connections and enforce that any response using chunked encoding is treated as final; optionally, disable connection pooling for untrusted upstream servers.

Generated by OpenCVE AI on September 30, 2026 at 04:54 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 30 Sep 2026 14:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Tue, 29 Sep 2026 13:15:00 +0000

Type Values Removed Values Added
Description Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling') vulnerability in elixir-mint mint allows a malicious HTTP/1 server to desynchronize an intermediary and the Mint client on a pooled connection, poisoning the responses to subsequent requests that share the connection. message_body/1 in lib/mint/http1.ex selects chunked framing when chunked is the first coding listed in a response's Transfer-Encoding fields. RFC 9112 section 6.3 applies chunked framing only when chunked is the final coding, and otherwise reads the body until the server closes the connection. For a response such as Transfer-Encoding: chunked, gzip, an intermediary that follows the RFC treats every byte up to the close as the body, while Mint ends the body at the zero-length chunk and parses the remaining bytes as the response to the next request on the connection. Mint also keeps the connection open after an HTTP/1.0 response, final or 1xx, that carries Transfer-Encoding and Connection: keep-alive. RFC 9112 section 6.1 requires treating the framing of such a message as faulty and closing the connection after it, so bytes after its chunked body are parsed as the response to the next request in the same way. This issue affects mint: from 0.1.0 before 1.11.0. Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling') vulnerability in elixir-mint mint allows a malicious HTTP/1 server to desynchronize an intermediary and the Mint client on a pooled connection, poisoning the responses to subsequent requests that share the connection. message_body/1 in lib/mint/http1.ex selects chunked framing when chunked is the first coding listed in a response's Transfer-Encoding fields. RFC 9112 section 6.3 applies chunked framing only when chunked is the final coding, and otherwise reads the body until the server closes the connection. For a response such as Transfer-Encoding: chunked, gzip, an intermediary that follows the RFC treats every byte up to the close as the body, while Mint ends the body at the zero-length chunk and parses the remaining bytes as the response to the next request on the connection. Mint also keeps the connection open after an HTTP/1.0 response, final or 1xx, that carries Transfer-Encoding and Connection: keep-alive. RFC 9112 section 6.1 requires treating the framing of such a message as faulty and closing the connection after it, so bytes after its chunked body are parsed as the response to the next request in the same way. This issue affects mint: from 0.1.0 before 1.10.2.
References

Mon, 28 Sep 2026 11:30:00 +0000

Type Values Removed Values Added
Description Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling') vulnerability in elixir-mint mint allows a malicious HTTP/1 server to desynchronize an intermediary and the Mint client on a pooled connection, poisoning the responses to subsequent requests that share the connection. message_body/1 in lib/mint/http1.ex selects chunked framing when chunked is the first coding listed in a response's Transfer-Encoding fields. RFC 9112 section 6.3 applies chunked framing only when chunked is the final coding, and otherwise reads the body until the server closes the connection. For a response such as Transfer-Encoding: chunked, gzip, an intermediary that follows the RFC treats every byte up to the close as the body, while Mint ends the body at the zero-length chunk and parses the remaining bytes as the response to the next request on the connection. Mint also keeps the connection open after an HTTP/1.0 response, final or 1xx, that carries Transfer-Encoding and Connection: keep-alive. RFC 9112 section 6.1 requires treating the framing of such a message as faulty and closing the connection after it, so bytes after its chunked body are parsed as the response to the next request in the same way. This issue affects mint: from 0.1.0 before 1.11.0.
Title Mint HTTP/1 client applies chunked framing when chunked is not the final transfer coding, enabling response smuggling through intermediaries
First Time appeared Elixir-mint
Elixir-mint mint
Weaknesses CWE-444
CPEs cpe:2.3:a:elixir-mint:mint:*:*:*:*:*:*:*:*
Vendors & Products Elixir-mint
Elixir-mint mint
References
Metrics cvssV4_0

{'score': 6.3, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N'}


Subscriptions

Elixir-mint Mint
cve-icon MITRE

Status: PUBLISHED

Assigner: EEF

Published:

Updated: 2026-09-30T13:17:02.563Z

Reserved: 2026-09-24T13:45:02.496Z

Link: CVE-2026-94194

cve-icon Vulnrichment

Updated: 2026-09-30T13:16:34.129Z

cve-icon NVD

Status : Deferred

Published: 2026-09-28T12:17:42.220

Modified: 2026-09-30T14:17:43.763

Link: CVE-2026-94194

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-30T05:00:13Z

Weaknesses
  • CWE-444

    Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling')