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.
CVE-2026-48710
This medium-severity CVE scores 6.5 under the CNA's CVSS (NVD's own analysis pending). EPSS exploit probability: 1.4%, top 30% of all CVEs by exploit prediction. GitHub Security Advisory data not yet ingested — confidence will rise once GHSA publishes (typical lag: hours to days for open-source ecosystem CVEs; never for infrastructure-only CVEs).
- Lower severity and no public exploit yet
A fix is available — apply it.
- CVSS v3
- 6.5
- EG Score
- 6.5(medium)
- EPSS
- 70.1%
- KEV
- Not listed
Published
May 26, 2026
Last Modified
July 15, 2026
Advisory Details (7)
Auto-updated Jun 15, 2026Advisory X41-2026-002: Request Host Header not Validated in Starlette | X41 D-Sec - Penetration Tests and Source Code Audits
https://www.x41-dsec.de/lab/advisories/x41-2026-002-starlettestarlette - secwest.net - secure virtual engagement
https://www.secwest.net/starletteDisclosing the BADHOST Vulnerability in Starlette – OSTIF.org
https://ostif.org/disclosing-the-badhost-vulnerability-in-starletteadvisory-database/vulns/starlette/PYSEC-2026-161.yaml at main · pypa/advisory-database · GitHub
https://github.com/pypa/advisory-database/tree/main/vulns/starlette/PYSEC-2026-161.yamlMissing Host header validation poisons request.url.path, bypassing path-based security checks · Advisory · Kludex/starlette · GitHub
https://github.com/Kludex/starlette/security/advisories/GHSA-86qp-5c8j-p5mrcommit 764dab0dcfb9 (Kludex/starlette)
Patch available: Kludex/starlette 1.0.1 (contains commit 764dab0dcfb9)
https://github.com/Kludex/starlette/commit/764dab0dcfb9033d75442d7a359645c9f94648c6Vendor Advisories for CVE-2026-48710(12)
These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.
- RHSA-2026:37275Red Hat Product SecurityCritical
Red Hat Security Advisory: RHOAI 3.3.5 - Red Hat OpenShift AI
- RHSA-2026:34532Red Hat Product SecurityMedium
Red Hat Security Advisory: General availability of the satellite/iop-host-inventory-rhel9 container image
- RHSA-2026:34526Red Hat Product SecurityHigh
Red Hat Security Advisory: Technical preview of the satellite/iop-vmaas-rhel9 container image
- RHSA-2026:34456Red Hat Product SecurityCritical
Red Hat Security Advisory: RHOAI 3.4.2 - Red Hat OpenShift AI
- RHSA-2026:30089Red Hat Product SecurityCritical
Red Hat Security Advisory: Red Hat AI Inference Server 3.3.5 (CUDA)
- RHSA-2026:30088Red Hat Product SecurityCritical
Red Hat Security Advisory: Red Hat AI Inference Server 3.3.5 (ROCm)
- RHSA-2026:26226Red Hat Product SecurityHigh
Red Hat Security Advisory: General availability of the satellite/iop-host-inventory-rhel9 container image
- RHSA-2026:24866Red Hat Product SecurityCritical
Red Hat Security Advisory: Red Hat Ansible Automation Platform 2.6 Container Release Update
- +4 more
Patch Availability(7)
| Vendor / Ecosystem | Fixed in / Patch | Released | Source |
|---|---|---|---|
| redhat | rhaiis/vllm-cuda-rhel9:1782352847 | 2026-06-25 | redhat |
| redhat | rhaiis/vllm-rocm-rhel9:1782353093 | 2026-06-25 | redhat |
| redhat | satellite/iop-host-inventory-rhel9:1780414237 | 2026-06-16 | redhat |
| redhat | ansible-automation-platform-26/lightspeed-chatbot-rhel9:1780102732 | 2026-06-09 | redhat |
| redhat | ansible-automation-platform-27/lightspeed-chatbot-rhel9:1780099185 | 2026-06-04 | redhat |
| redhat | satellite/foreman-mcp-server-rhel9:1780492008 | 2026-06-03 | redhat |
| redhat | satellite/foreman-mcp-server-rhel9:1780492012 | 2026-06-03 | redhat |
Patches are aggregated from vendor advisories (Red Hat, Microsoft, Cisco, GitHub) and package ecosystems (OSV, GHSA). Multiple rows for the same upstream release have been deduplicated.
Affected Packages
(1 across 1 ecosystem)
PyPI(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| starlette | 0.1.0 ... 1.0.0rc1 (191 versions) | 1.0.1 | — |
Weakness Classification(2)
MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.
Data Freshness Timeline
(refreshed 7× in last 7d / 51× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
Showing the most recent 100 of 115 total refreshes for this CVE.
- 2026-07-15 16:57 UTCEPSS rescore
- 2026-07-15 02:00 UTCEPSS rescore
- 2026-07-13 22:30 UTCEPSS rescore
- 2026-07-13 06:13 UTCEPSS rescore
- 2026-07-12 05:46 UTCEPSS rescore
- 2026-07-11 08:27 UTCEPSS rescore
- 2026-07-09 19:10 UTCEPSS rescore
- 2026-07-08 15:16 UTCEPSS rescore
- 2026-07-07 13:46 UTCEPSS rescore
- 2026-07-06 16:27 UTCEPSS rescore
- 2026-07-06 02:23 UTCEPSS rescore
- 2026-07-05 02:30 UTCEPSS rescore
- 2026-07-04 06:31 UTCEPSS rescore
- 2026-07-01 15:07 UTCEPSS rescore
- 2026-07-01 12:01 UTCEG score recompute
- 2026-07-01 12:01 UTCVendor advisory
- 2026-06-30 23:22 UTCEPSS rescore
- 2026-06-29 22:22 UTCEG score recompute
- 2026-06-29 22:22 UTCVendor advisory
- 2026-06-28 22:36 UTCEG score recompute
- 2026-06-28 22:36 UTCVendor advisory
- 2026-06-28 14:07 UTCEPSS rescore
- 2026-06-28 04:56 UTCEPSS rescore
- 2026-06-28 04:56 UTCEPSS rescore
- 2026-06-27 18:49 UTCEG score recompute
Show 75 moreShow fewer
- 2026-06-27 18:49 UTCVendor advisory
- 2026-06-27 03:08 UTCEPSS rescore
- 2026-06-26 17:29 UTCEG score recompute
- 2026-06-26 17:29 UTCVendor advisory
- 2026-06-25 13:49 UTCEPSS rescore
- 2026-06-25 09:47 UTCEG score recompute
- 2026-06-25 09:47 UTCVendor advisory
- 2026-06-24 14:05 UTCEPSS rescore
- 2026-06-23 21:33 UTCEPSS rescore
- 2026-06-23 21:33 UTCEPSS rescore
- 2026-06-22 14:25 UTCEPSS rescore
- 2026-06-22 14:25 UTCEPSS rescore
- 2026-06-21 14:56 UTCEPSS rescore
- 2026-06-21 14:56 UTCEPSS rescore
- 2026-06-21 01:59 UTCEPSS rescore
- 2026-06-21 01:59 UTCEPSS rescore
- 2026-06-19 19:26 UTCEPSS rescore
- 2026-06-19 19:26 UTCEPSS rescore
- 2026-06-18 17:52 UTCEPSS rescore
- 2026-06-18 17:52 UTCEPSS rescore
- 2026-06-17 21:56 UTCEG score recompute
- 2026-06-17 21:56 UTCVendor advisory
- 2026-06-17 17:53 UTCEPSS rescore
- 2026-06-16 22:11 UTCEG score recompute
- 2026-06-16 22:11 UTCVendor advisory
- 2026-06-16 17:53 UTCEPSS rescore
- 2026-06-15 22:27 UTCEG score recompute
- 2026-06-15 22:27 UTCVendor advisory
- 2026-06-15 17:49 UTCEPSS rescore
- 2026-06-15 17:49 UTCEPSS rescore
- 2026-06-14 23:18 UTCEPSS rescore
- 2026-06-14 22:18 UTCEG score recompute
- 2026-06-14 22:18 UTCVendor advisory
- 2026-06-13 23:00 UTCEPSS rescore
- 2026-06-13 22:34 UTCEG score recompute
- 2026-06-13 22:34 UTCVendor advisory
- 2026-06-12 23:12 UTCEPSS rescore
- 2026-06-12 23:12 UTCEPSS rescore
- 2026-06-12 22:49 UTCEG score recompute
- 2026-06-12 22:49 UTCVendor advisory
- 2026-06-11 23:05 UTCEG score recompute
- 2026-06-11 23:05 UTCVendor advisory
- 2026-06-11 14:00 UTCEPSS rescore
- 2026-06-10 23:21 UTCEG score recompute
- 2026-06-10 23:21 UTCVendor advisory
- 2026-06-10 22:18 UTCEPSS rescore
- 2026-06-10 13:22 UTCEPSS rescore
- 2026-06-10 13:22 UTCEPSS rescore
- 2026-06-09 23:36 UTCEG score recompute
- 2026-06-09 23:36 UTCVendor advisory
- 2026-06-08 23:52 UTCEG score recompute
- 2026-06-08 23:52 UTCVendor advisory
- 2026-06-08 14:17 UTCEPSS rescore
- 2026-06-08 14:17 UTCEPSS rescore
- 2026-06-08 00:08 UTCEG score recompute
- 2026-06-08 00:08 UTCVendor advisory
- 2026-06-07 15:25 UTCEPSS rescore
- 2026-06-07 15:25 UTCEPSS rescore
- 2026-06-07 00:24 UTCEG score recompute
- 2026-06-07 00:24 UTCVendor advisory
- 2026-06-06 13:47 UTCEPSS rescore
- 2026-06-06 13:47 UTCEPSS rescore
- 2026-06-06 00:39 UTCEG score recompute
- 2026-06-06 00:39 UTCVendor advisory
- 2026-06-05 22:47 UTCEPSS rescore
- 2026-06-05 06:10 UTCEPSS rescore
- 2026-06-05 06:10 UTCEPSS rescore
- 2026-06-05 00:55 UTCEG score recompute
- 2026-06-05 00:55 UTCVendor advisory
- 2026-06-04 13:12 UTCEPSS rescore
- 2026-06-04 13:12 UTCEPSS rescore
- 2026-06-04 01:11 UTCEG score recompute
- 2026-06-04 01:11 UTCVendor advisory
- 2026-06-03 01:26 UTCEG score recompute
- 2026-06-02 20:13 UTCEPSS rescore
Publicly available exploits
(2 references)Working exploit code is in the public domain (1 GitHub PoC). Defenders should treat patch urgency accordingly — public PoCs typically lead to mass-exploitation within 24-72 hours.
- GitHub PoCeris-ths/supply-chain-guardFirst seen Apr 1, 2026
Detect, assess, and respond to supply chain attacks across npm/yarn and Python (pip/poetry/uv). Claude Code skill + standalone scripts. Built during axios RAT (2026-03-31) and Starlette BadHost CVE-2026-48710 (2026-05-22).
Open source ↗ - Nucleihttp/cves/2026/CVE-2026-48710.yamlFirst seen Jan 1, 2026
Starlette - Improper Validation of Unsafe Equivalence in Input
Open source ↗
Frequently asked(5)
What is CVE-2026-48710?
When was CVE-2026-48710 disclosed?
Is CVE-2026-48710 actively exploited?
What is the CVSS score of CVE-2026-48710?
How do I remediate CVE-2026-48710?
Dependency Blast Radius
See which npm, PyPI, Go, and Maven packages are affected by CVE-2026-48710
Is Your Infrastructure Affected by CVE-2026-48710?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.