CVE-2026-45135

Summary

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 Software

VendorProductVersion RangeStatus
caddyservercaddy>= 2.7.0, < 2.11.3affected

Weaknesses

  • CWE-20: CWE-20: Improper Input Validation
  • CWE-176: CWE-176: Improper Handling of Unicode Encoding
  • CWE-178: CWE-178: Improper Handling of Case Sensitivity

ADP Enrichment

CISA ADP Vulnrichment

  • SSVC:
  • Exploitation: poc
    • Automatable: no
    • Technical Impact: total

Additional References

References