Caddy is an extensible server platform that uses TLS by default. Prior to version 2.11.1, Caddy's HTTP path request matcher is intended to be case-insensitive, but when the match pattern contains percent-escape sequences (%xx) it compares against the request's escaped path without lowercasing. An attacker can bypass path-based routing and any access controls attached to that route by changing the casing of the request path. Version 2.11.1 contains a fix for the issue.
{
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/27xxx/CVE-2026-27587.json",
"cna_assigner": "GitHub_M",
"cwe_ids": [
"CWE-178"
]
}{
"extracted_events": [
{
"introduced": "0"
},
{
"fixed": "2.11.1"
},
{
"introduced": "2.10.2"
}
],
"cpe": "cpe:2.3:a:caddyserver:caddy:*:*:*:*:*:*:*:*",
"source": [
"AFFECTED_FIELD",
"CPE_RANGE",
"REFERENCES"
]
}