Patchfirst
CVE-2026-48710 KEVPublic exploit Medium · 6.5 EPSS 70.3%

Kludex Starlette HTTP Request/Response Smuggling Vulnerability

Kludex · Starlette

Summary

Starlette, the lightweight ASGI framework and toolkit from Kludex, fails to validate the HTTP Host request header before using it to rebuild request.url, so a malformed Host header can make request.url.path diverge from the path actually routed. An unauthenticated remote attacker sending a crafted request can bypass security restrictions that middleware or endpoints enforce based on request.url rather than the raw scope path, with no user interaction or special configuration required.

Official description · NVD

Starlette is a lightweight ASGI framework/toolkit. Prior to version 1.0.1, the HTTP `Host` request header was not validated before being used to reconstruct `request.url`. Because the routing algorithm relies on the raw HTTP path while `request.url` is rebuilt from the `Host` header, a malformed header could make `request.url.path` differ from the path that was actually requested. Middleware and endpoints that apply security restrictions based on `request.url` (rather than the raw `scope` path) could therefore be bypassed. Users should upgrade to a version greater than or equal to version 1.0.1, which validates the `Host` header against the grammar of RFC 9112 §3.2 / RFC 3986 §3.2.2 when constructing `request.url` and falls back to `scope["server"]` for malformed values.

Breakdown
82.4 / 100
Exploited
Yes, in CISA KEV
Reports
0
Tactics
1/15

How an attack unfolds

Based on mappings. Select a step to see the evidence.
  1. How attackers get in

First seen exploited the day it was disclosed. Public exploit code (PoC-in-GitHub) was available 55 days before disclosure.

  1. Public exploit codePoC-in-GitHub55 days before
  2. DisclosedFirst seen exploitedVulnCheck KEV evidenceday 0
  3. Added to CISA KEVEU database agrees+3 mo

CISA KEV listing is when exploitation was confirmed, not necessarily the first attack.

7 fixes in starlette over 20 months. The latest fix listed for starlette is 1.3.1.

Fixes in starlettePyPI package, by fixed version. Earlier and later fixes in the same package, not necessarily the same bug.

  1. 0.40.0CVE-2024-4787415 Oct 2024
  2. 0.47.2CVE-2025-5412121 Jul 2025
  3. 0.49.1CVE-2025-6272728 Oct 2025
  4. 1.0.1CVE-2026-4871026 May 2026KEV
  5. 1.1.0CVE-2026-4881717 Jun 2026
  6. 1.1.0CVE-2026-4881817 Jun 2026
  7. 1.3.1CVE-2026-5428322 Jun 2026Latest listed

techniques

1 , grouped by in kill-chain order, 1 cited passage 1

Initial AccessTA0001

Exploit Public-Facing Application T1190 Medium
AI mapping from the description · how it is exploited

Remote HTTP request header manipulation exploits public-facing app

the HTTP `Host` request header was not validated before being used to reconstruct `request.url`
From the official description (NVD) Original (opens in a new tab) ↗

Detection

0 rules for this CVE · 149 general rules for its techniques

Rules for this CVE

0 that reference CVE-2026-48710 directly.

CVE-specific rules are not available in this build. Search SigmaHQ ↗

General rules for this CVE’s techniques

These detect the technique in general, not this specific vulnerability.

Sigma rules © SigmaHQ, Detection Rule License 1.1; linked, not reproduced.

Am I affected? What do I upgrade to?

From GitHub Security Advisories and OSV

1 package in 1 ecosystem. Main package: starlette.

Upgrade to 1.0.1 or later

pippip install "starlette>=1.0.1"

The first fix for CVE-2026-48710. No other CVE tracked by Patchfirst affects this package.

Affected versions

If you runUpgrade to
All versions before 1.0.11.0.1

“Up to” means the second version is the fix and is not affected.

Check your lockfile against all CVEs

What security researchers reported

Not named in any threat report yet

Also mentioned in 45 community threat pulses (AlienVault OTX)

Weaker evidence

Pulses are indicator collections that anyone can publish. A mention is not confirmation of exploitation.

References

29 links, grouped by NVD tag
↑ ↓ chooseEnter openEsc close