Skip to main content
← All vulnerabilities
CVE-2026-77281GHSA-J8PX-RMRX-76H9GO-2026-6512

Caddy: rewrite placeholder re-expansion

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 2.11.4
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: yes
  • Technical impact: partial

Summary

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.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: yes · Technical impact: partial

  3. Record last updated

Affected versions

  • caddyserver caddy

    fixed in 2.11.4

  • github.com/caddyserver/caddy/v2Go

    fixed in 2.11.4

References 4

GitHub · caddyserver/caddy