CVE-2026-48818 Starlette: SSRF and NTLM credential theft via UNC paths in StaticFiles on Windows
Attackers can trigger SSRF and steal NTLM credentials via UNC paths in Starlette StaticFiles on Windows, affecting default configurations.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-48818?
CVE-2026-48818 is a high-severity server-side request forgery vulnerability in Kludex starlette, published on 17 Jun 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
Starlette is a lightweight ASGI framework/toolkit. In versions 1.0.1 and earlier, StaticFiles on Windows is vulnerable to SSRF. An UNC path such as \\attacker.com\share can cause os.path.realpath to initiate an outbound SMB connection before the path is rejected, exposing the service account’s NTLMv2 credentials for offline cracking or relay even though the HTTP response is only a 404. The issue affects default follow_symlink=False deployments, including frameworks built on Starlette such as FastAPI; POSIX systems and follow_symlink=True are unaffected. The issue is fixed in 1.1.0.
Weakness: CWE-918
Which versions are affected by CVE-2026-48818?
3 open source packages ship an affected version, including starlette. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
starlette PyPI | All versions | 1.1.0 |
starlette PyPI | All versions | 1.1.0 |
starlette PyPI | All versions | 1.1.0 |
Linux distribution packages (1)
python-graphifyy openSUSE:Tumbleweed | All versions | 0.9.48-1.1 |
Products include Encode Starlette.
How do I fix CVE-2026-48818?
Upgrade starlette to 1.1.0 or later.
Upgrade, and send outbound requests through an allow-list that blocks internal addresses. More about Server-side request forgery.
Is CVE-2026-48818 being exploited?
There is no known exploitation of CVE-2026-48818 in the wild and no public exploit code.
Other vulnerabilities in Kludex starlette
- CVE-2026-48710 Kludex Starlette HTTP Request/Response Smuggling
- CVE-2026-54283 Starlette: request.form() limits silently ignored for application/x-www-form-urlencoded enable DoS
- CVE-2023-29159 Starlette has Path Traversal vulnerability in StaticFiles
- CVE-2023-30798 MultipartParser DOS with too many fields or files in Starlette Framework
- CVE-2026-48817 Starlette: Arbitrary HTTP method dispatched to `HTTPEndpoint` attributes via `getattr`
Sources
Also known as CLEANSTART-2026-EH91942, CLEANSTART-2026-GY64291, ECHO-e56a-8ef3-f017, GHSA-wqp7-x3pw-xc5r, MINI-2wgq-m46h-g8h8, MINI-34qp-cvjp-8jf7 and 17 more.