Home

Description

Tinyproxy through 1.11.3 is vulnerable to HTTP request parsing desynchronization due to a case-sensitive comparison of the Transfer-Encoding header in src/reqs.c. The is_chunked_transfer() function uses strcmp() to compare the header value against "chunked", even though RFC 7230 specifies that transfer-coding names are case-insensitive. By sending a request with Transfer-Encoding: Chunked, an unauthenticated remote attacker can cause Tinyproxy to misinterpret the request as having no body. In this state, Tinyproxy sets content_length.client to -1, skips pull_client_data_chunked(), forwards request headers upstream, and transitions into relay_connection() raw TCP forwarding while unread body data remains buffered. This leads to inconsistent request state between Tinyproxy and backend servers. RFC-compliant backends (e.g., Node.js, Nginx) will continue waiting for chunked body data, causing connections to hang indefinitely. This behavior enables application-level denial of service through backend worker exhaustion. Additionally, in deployments where Tinyproxy is used for request-body inspection, filtering, or security enforcement, the unread body may be forwarded without proper inspection, resulting in potential security control bypass.

PUBLISHED Reserved 2026-03-09 | Published 2026-04-07 | Updated 2026-04-07 | Assigner TuranSec




HIGH: 8.7CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

HIGH: 7.5CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

7.8AV:N/AC:L/Au:N/C:N/I:N/A:C

Problem types

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

Product status

Default status
unaffected

Any version
affected

Credits

Muxammadiyev G'iyosiddin finder

References

github.com/tinyproxy/tinyproxy/issues/604 (Upstream issue report and reproduction details) issue-tracking technical-description third-party-advisory

github.com/tinyproxy/tinyproxy (Tinyproxy upstream project) product

datatracker.ietf.org/doc/html/rfc7230 (RFC 7230: transfer-coding names are case-insensitive) technical-description

cve.org (CVE-2026-31842)

nvd.nist.gov (CVE-2026-31842)

Download JSON