CVE-2026-45135

NameCVE-2026-45135
DescriptionCaddy 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.
SourceCVE (at NVD; CERT, ENISA, LWN, oss-sec, fulldisc, Debian ELTS, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)
Debian Bugs1140773

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
caddy (PTS)bookworm2.6.2-5fixed
trixie2.6.2-12fixed
trixie (security)2.6.2-12+deb13u1fixed
forky, sid2.11.4-1fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
caddysourcebookworm(not affected)
caddysourcetrixie(not affected)
caddysource(unstable)2.11.4-11140773

Notes

[trixie] - caddy <not-affected> (Vulnerable code introduced later)
[bookworm] - caddy <not-affected> (Vulnerable code introduced later)
https://github.com/caddyserver/caddy/security/advisories/GHSA-m675-2p33-xv9g
Fixed by: https://github.com/caddyserver/caddy/commit/fb324331f40782ac7a48d83f591c2bb7615d7eed (v2.11.3)
Introduced with: https://github.com/caddyserver/caddy/commit/7c28c0c07ac70a8960a166c7126150a408ba7464 (v2.11.0)
the vulnerable window is 2.11.0 to 2.11.2. 2.6.2's splitPos() is a plain
strings.Index() over a lower-cased copy; that separate flaw is CVE-2026-27590.

Search for package or bug name: Reporting problems