Skip to main content

Tinyproxy CVE-2026-54388

CRITICAL
HTTP Request/Response Smuggling (CWE-444)
2026-06-17 VulnCheck
9.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify exposed Tinyproxy instance
  2. Delivery
    Craft request with duplicate Content-Length headers
  3. Exploit
    Send through proxy to backend
  4. Execution
    Desynchronize proxy/backend parsers
  5. Persist
    Smuggle attacker-controlled request
  6. Impact
    Poison cache or bypass auth controls

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V4 - API and Web Service HTTP request consistency
Exploitation Conditions

Exploitation requires only network reachability to a Tinyproxy instance at or below version 1.11.3 that is forwarding HTTP traffic to a backend whose Content-Length parser disagrees with Tinyproxy's first-header preference (a near-universal condition given common backends like nginx, Apache, and Node-based services). No authentication, configuration toggle, or user interaction is required, matching the CVSS PR:N/UI:N/AT:N metrics. The principal limiting factors are: the deployment must actually proxy HTTP (not just HTTPS CONNECT tunnels, where the proxy does not parse request bodies), the backend must be one whose Content-Length handling differs from Tinyproxy's, and the impact value is bounded by what the backend trusts the proxy for (cache contents, IP-based ACLs, header-stamped identity), so pure stateless backends derive less benefit for the attacker.

Impact

The vendor-supplied CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N) and the 9.3 base score reflect that exploitation requires only an attacker-reachable Tinyproxy instance and crafted HTTP traffic, with no authentication, user interaction, or unusual conditions. EPSS and CISA KEV data are not provided in the input, so real-world exploitation prevalence cannot be confirmed; the issue is currently rated 'no public exploit identified at time of analysis,' though the patch diff itself reveals the smuggling primitive and request smuggling exploitation against proxies is well understood in the offensive community. Practical risk is highest where Tinyproxy fronts shared caches, authentication gateways, or microservice backends - environments where smuggled requests translate directly into cache poisoning or auth bypass - and somewhat lower for pure outbound NAT-style proxy use cases.

Exploit ScenarioDerived

An attacker who can reach a vulnerable Tinyproxy instance - for example, an internal user, a tenant on a shared proxy, or any client of an exposed forward proxy - sends a single TCP request containing two Content-Length headers with differing values plus a smuggled second request hidden in the body. Tinyproxy uses the first Content-Length to determine body length and forwards both headers to the backend, which uses the second value, causing the backend to interpret the trailing bytes as a new request attributed to the next legitimate client. The attacker leverages this desync to poison cached responses, bypass proxy-level authentication or ACLs, or hijack other users' in-flight requests.

Act Now Prioritize within 24-48h. Why: CRITICAL severity.
Patch available 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jun 17, 2026

HTTP request smuggling in Tinyproxy through 1.11.3 allows remote unauthenticated attackers to desynchronize the proxy and its backend by sending requests with multiple Content-Length headers having differing values. Because Tinyproxy forwards all duplicate Content-Length headers while parsing only the first value, downstream servers may interpret request boundaries differently, enabling cache poisoning, access control bypass, and request hijacking. No public exploit identified at time of analysis, but the underlying primitive is well documented and the upstream commit 364cdb6 clearly demonstrates the parsing flaw.

RemediationAI

Upstream fix available (PR/commit); released patched version not independently confirmed - apply the changes in commit 364cdb6 (https://github.com/tinyproxy/tinyproxy/commit/364cdb67e0ea00a8e4a7037e2693e0711e816adb) by upgrading to a build that includes the patch or by rebuilding from current main, since no tagged release beyond 1.11.3 is referenced in the input. If immediate patching is not possible, place Tinyproxy behind a strict HTTP-aware front-end (such as a hardened reverse proxy or WAF) configured to reject requests containing multiple Content-Length headers or simultaneous Content-Length and Transfer-Encoding: chunked, accepting the trade-off that this adds an extra hop and that some legitimate but quirky clients may be blocked. Additionally, restrict who can reach the proxy by binding it to trusted interfaces or enforcing network-layer ACLs, recognizing this only reduces exposure rather than fixing the parsing flaw.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Tinyproxy is a lightweight forward HTTP/HTTPS proxy daemon commonly deployed as an egress gateway in embedded, containerized, and small-network environments (cpe:2.3:a:tinyproxy:tinyproxy:*). The vulnerability is a classic CWE-444 Inconsistent Interpretation of HTTP Requests (HTTP Request/Response Smuggling) caused by the header-handling logic in src/reqs.c, specifically add_header_to_connection() and process_client_headers(). The upstream patch (commit 364cdb6, merged via PR #610) rejects additional Content-Length headers once one is already stored and strips Content-Length when chunked Transfer-Encoding is also present, eliminating the parser-state divergence between Tinyproxy and the backend.

Know when Tinyproxy gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 9.3 CRITICAL
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
vuln.today AI 10.0 CRITICAL

Remote unauthenticated smuggling via crafted headers (AV:N/AC:L/PR:N/UI:N); scope changes as the proxy mis-delivers requests to a separate backend authority (S:C); confidentiality and integrity of smuggled/poisoned traffic are high, availability not directly impacted.

3.1 AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
SUSE CRITICAL

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Tinyproxy through 1.11.3, fixed in commit 364cdb6, fails to reject requests containing multiple Content-Length headers with differing values, forwarding all duplicate headers to the backend while using the first value to determine how many request body bytes to consume. Remote attackers can desynchronize the proxy and backend parser state, allowing injection of arbitrary HTTP requests to the backend to enable cache poisoning, access control bypass, and request hijacking.

Executive ViewAI

Why It Matters

Tinyproxy versions through 1.11.3 contain a critical HTTP request smuggling vulnerability (CVSS 9.3) that allows unauthenticated attackers to desynchronize the proxy from backend servers, enabling cache poisoning and access control bypass. Organizations relying on Tinyproxy for request inspection and security controls face immediate risk of unauthorized content delivery and circumvention of proxy-enforced policies.

Business Impact: Severe
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.4%
Top 70% exploitable
Social Media
1
Sightings
Data Quality
7 sources
Confidence: High
NVD CVE.org EPSS Vulnrichment Vendor CIRCL GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity CRITICAL
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
CRITICAL severity
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Out-of-Cycle
Exploitation
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact
Very High
Technical Impact
Total

Priority Score

46
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +46
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

HTTP request smuggling exploits inconsistencies in how front-end and back-end servers parse HTTP message boundaries.

Affected Products (CPE)CVE.org

cpe:2.3:a:tinyproxy:tinyproxy:*:*:*:*:*:*:*:*

Vendor StatusVendor

SUSE

Severity: Critical
Product Status
openSUSE Tumbleweed Fixed

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy