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.
Fix
Patch, vendor advisory and mitigation references on NVD 2
- https://github.com/caddyserver/caddy/security/advisories/GHSA-m675-2p33-xv9g Exploit, Vendor Advisory
- https://github.com/caddyserver/caddy/security/advisories/GHSA-m675-2p33-xv9g Exploit, Vendor Advisory
Every line above is quoted from NVD, CISA, Microsoft, the vendor's own advisory or DISA; nothing is generated.
Change history 1
- First seenCVSS 8.1 · caddyserverNVD modified 2026-10-25 23:10
Affected (CPE criteria) 1
cpe:2.3:a:caddyserver:caddy:*:*:*:*:*:*:*:*
References 2
- https://github.com/caddyserver/caddy/security/advisories/GHSA-m675-2p33-xv9g Exploit, Vendor Advisory
- https://github.com/caddyserver/caddy/security/advisories/GHSA-m675-2p33-xv9g Exploit, Vendor Advisory