CVE-2026-45135

HIGH

Caddy: Unsafe Unicode Handling in FastCGI splitPos Allows Execution of Non-PHP Files

Title source: cna
STIX 2.1

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.

References (1)

Core 1
Core References

Scores

CVSS v3 8.1
EPSS 0.0050
EPSS Percentile 40.1%
Attack Vector NETWORK
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H

CISA SSVC

Vulnrichment
Exploitation poc
Automatable no
Technical Impact total

Details

CWE
CWE-176 CWE-178 CWE-20
Status published
Products (3)
caddyserver/caddy 2.7.0 - 2.11.3
caddyserver/caddy 2.7.0 - 2.11.3Go
caddyserver/caddy >= 2.7.0, < 2.11.3
Published Jun 23, 2026
Tracked Since Jun 24, 2026