Caddy: MatchPath %xx (escaped-path) branch skips case normalization, enabling path-based route/auth bypass
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| caddyserver | caddy | affected |
|
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Caddyserver | Caddy |
|
| Source | ID | Title |
|---|---|---|
Debian DLA |
DLA-4857-1 | caddy security update |
Debian DSA |
DSA-6429-1 | caddy security update |
Github GHSA |
GHSA-g7pc-pc7g-h8jh | Caddy: MatchPath %xx (escaped-path) branch skips case normalization, enabling path-based route/auth bypass |
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.425% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| CPEs | cpe:2.3:a:caddyserver:caddy:*:*:*:*:*:*:*:* | |
| Metrics |
cvssV3_1
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Caddyserver
Caddyserver caddy |
|
| Vendors & Products |
Caddyserver
Caddyserver caddy |
| Type | Values Removed | Values Added |
|---|---|---|
| Description | 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. | |
| Title | Caddy: MatchPath %xx (escaped-path) branch skips case normalization, enabling path-based route/auth bypass | |
| Weaknesses | CWE-178 | |
| References |
| |
| Metrics |
cvssV4_0
|