CVE-2026-30852

7.5 HIGH
Published: March 07, 2026 Modified: March 11, 2026
View on NVD

Description

Caddy is an extensible server platform that uses TLS by default. From version 2.7.5 to before version 2.11.2, the vars_regexp matcher in vars.go:337 double-expands user-controlled input through the Caddy replacer. When vars_regexp matches against a placeholder like {http.request.header.X-Input}, the header value gets resolved once (expected), then passed through repl.ReplaceAll() again (the bug). This means an attacker can put {env.DATABASE_URL} or {file./etc/passwd} in a request header and the server will evaluate it, leaking environment variables, file contents, and system info. This issue has been patched in version 2.11.2.

AI Explanation

Get an AI-powered plain-language explanation of this vulnerability and remediation steps.

Login to generate AI explanation

CVSS v3.x Details

0.0 Low Medium High Critical 10.0
Vector String
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

References to Advisories, Solutions, and Tools

Patch Vendor Advisory Exploit Third Party Advisory
https://github.com/caddyserver/caddy/pull/5408
Source: security-advisories@github.com
Issue Tracking Patch
https://github.com/caddyserver/caddy/releases/tag/v2.11.2
Source: security-advisories@github.com
Product Release Notes
https://github.com/caddyserver/caddy/security/advisories/GHSA-m2w3-8f23-hxxf
Source: security-advisories@github.com
Exploit Mitigation Vendor Advisory

3 reference(s) from NVD

Quick Stats

CVSS v3 Score
7.5 / 10.0
EPSS (Exploit Probability)
0.0%
11th percentile
Exploitation Status
Not in CISA KEV

Weaknesses (CWE)

Affected Vendors

caddyserver