CVE-2026-48710 | Starlette has missing Host header validation that poisons request.url.path, bypassing path-based security checks

Exp

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.

Published: 2026-05-26 Last update: 2026-06-03 Assigner: [email protected] Source: [email protected]

Conclusion & alert: CVE-2026-48710 is rated High Exploit Risk (61.6/100): CVSS Medium severity, with medium exploitation likelihood (EPSS 0.35%). Core evidence: 2 public exploit reference(s) are indexed (Exploit-DB). Mandatory action: Public exploits are available—assess exposure, apply mitigations, and prioritize patching.

Risk is dynamic; we continuously reassess and refresh what is shown on this page as upstream context changes.

Public exploit references (Exploit-DB) for CVE-2026-48710

EDB-ID Source Kind Published Link
nvd_ref exploit_tag Exploit-DB ↗
nvd_ref exploit_tag Exploit-DB ↗

Exploit prediction scoring system (EPSS) score for CVE-2026-48710

EPSS lead: Daily EPSS estimates relative likelihood of exploitation; percentile ranks this CVE among scored vulnerabilities (higher = more severe relative rank).

# Date Old EPSS score New EPSS score Delta (New - Old)
1 2026-06-03 0.03% 0.35% +0.32%
2 2026-05-27 0.03%

Full EPSS history (2 records total)

Common vulnerability scoring system (CVSS) metrics for CVE-2026-48710

CVSS metrics for this CVE.

Base score Version Severity Vector Exploitability Impact Score source
6.5 3.1 MEDIUM
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N Click to expand
Attack vector (AV:N)
Could be attacked over the internet or any normal routed network—not just someone sitting at the machine.
Attack complexity (AC:L)
Once they can reach the bug, pulling it off is straightforward—no weird race conditions or rare setup.
Privileges required (PR:N)
No account or special rights needed—anonymous or random user is enough.
User interaction (UI:N)
Nobody has to click “OK” or open a trap file; it can work without a victim helping.
Scope (S:U)
Damage stays in the same “trust bubble” as the broken component—no big spill into unrelated systems.
Confidentiality (C:L)
Some sensitive info could get out, but not a total data dump.
Integrity (I:L)
Attackers could change some data, but it’s limited—not everything goes.
Availability (A:N)
Service keeps running; no real outage angle.
3.9 2.5 [email protected]
6.5 3.1 MEDIUM
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N Click to expand
Attack vector (AV:N)
Could be attacked over the internet or any normal routed network—not just someone sitting at the machine.
Attack complexity (AC:L)
Once they can reach the bug, pulling it off is straightforward—no weird race conditions or rare setup.
Privileges required (PR:N)
No account or special rights needed—anonymous or random user is enough.
User interaction (UI:N)
Nobody has to click “OK” or open a trap file; it can work without a victim helping.
Scope (S:U)
Damage stays in the same “trust bubble” as the broken component—no big spill into unrelated systems.
Confidentiality (C:L)
Some sensitive info could get out, but not a total data dump.
Integrity (I:L)
Attackers could change some data, but it’s limited—not everything goes.
Availability (A:N)
Service keeps running; no real outage angle.
3.9 2.5 [email protected]

Weakness enumeration for CVE-2026-48710

GitHub Security Advisory for CVE-2026-48710

GHSA-86qp-5c8j-p5mr · Severity: medium · Ecosystem: pip — Starlette has missing Host header validation that poisons request.url.path, bypassing path-based security checks

OS Trackers for CVE-2026-48710

vendor priority summary link
debian not yet assigned CVE-2026-48710 not yet assigned priority: Debian including 1 source packages (starlette), 5 status rows across 5 suites (bookworm, bullseye, forky, sid, trixie): resolved 4, open 1. https://security-tracker.debian.org/tracker/CVE-2026-48710
redhat critical https://access.redhat.com/security/cve/CVE-2026-48710
suse medium https://www.suse.com/security/cve/CVE-2026-48710/
ubuntu medium CVE-2026-48710 medium priority: Ubuntu including 1 source packages (starlette), 5 status rows across 5 suites (jammy, noble, questing, resolute, upstream): needs-triage 5. https://ubuntu.com/security/CVE-2026-48710

Affected software / configurations for CVE-2026-48710

Vendor Product Version Raw CPE
encode starlette >= 0.8.3, < 1.0.1 cpe:2.3:a:encode:starlette:*:*:*:*:*:python:*:*

References for CVE-2026-48710

cvelogic Threat Intelligence