Vulnerability · Published Jun 23, 2026 · Assigned by GitHub_M
CVE-2026-45135Caddy: Unsafe Unicode Handling in FastCGI splitPos Allows Execution of Non-PHP Files
High 8.1
In plain English
A high-severity improper input validation in caddy from caddyserver. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.7% (higher than 52% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
Caddy is an extensible server platform that uses TLS by default. From 2.7.0 until 2.11.3, the FastCGI transport's splitPos() in modules/caddyhttp/reverseproxy/fastcgi/fastcgi.go misuses golang.org/x/text/search with search.IgnoreCase when the request path contains a non-ASCII byte. Two distinct flaws in that fallback let an attacker mislead Caddy's FastCGI splitting into treating a non-.php (or other configured split_path extension) file as a script. In any deployment where the attacker can place content into a file served via FastCGI (uploads, file storage, etc.), this can be escalated to remote code execution by crafting a URL whose path triggers either flaw. This vulnerability is fixed in 2.11.3.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Alpine:v3.23 | caddy | 2.11.4-r0 | ALPINE-CVE-2026-45135 |
| Alpine:v3.24 | caddy | 2.11.4-r0 | ALPINE-CVE-2026-45135 |
| Debian:14 | caddy | 2.11.4-1 | DEBIAN-CVE-2026-45135 |
| Go | github.com/caddyserver/caddy/v2 | 2.11.3 | GO-2026-5492 |
| Go | github.com/caddyserver/caddy/v2 | 2.11.3 | GHSA-m675-2p33-xv9g |
| Ubuntu:25.10 | caddy | no fix listed | UBUNTU-CVE-2026-45135 |
| Ubuntu:26.10 | caddy | no fix listed | UBUNTU-CVE-2026-45135 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| caddyserver | caddy | >= 2.7.0, < 2.11.3 |
Weakness: CWE-20, CWE-176, CWE-178 · Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
References
- https://github.com/caddyserver/caddy/security/advisories/GHSA-m675-2p33-xv9g x_refsource_CONFIRM