Caddy: rewrite placeholder re-expansion
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.
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Caddyserver | Caddy |
|
| Source | ID | Title |
|---|---|---|
Debian DLA |
DLA-4857-1 | caddy security update |
Github GHSA |
GHSA-j8px-rmrx-76h9 | Caddy: rewrite placeholder re-expansion, unbounded body buffer DoS, and fileHidden case-sensitivity bypass |
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.491% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| 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. In version 2.11.3 and earlier, three configuration-dependent weaknesses affect the handler and placeholder layer. In modules/caddyhttp/rewrite/rewrite.go, Rewrite.Rewrite() can pass attacker-controlled replacement bytes through buildQueryString for a second placeholder expansion when a rewrite URI ends with a literal question mark, allowing injected environment or request-variable placeholders to disclose data and, when the file provider is registered, allowing injected file placeholders to disclose readable files. The issue is fixed in version 2.11.4. | |
| Title | Caddy: rewrite placeholder re-expansion | |
| Weaknesses | CWE-178 CWE-770 CWE-94 |
|
| References |
| |
| Metrics |
cvssV3_1
|