Read the docs
TI-2026-53958 Aliases CVE-2026-77281GHSA-j8px-rmrx-76h9

Caddy: rewrite placeholder re-expansion

Priority LOW 35CWE-178Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
Low
Impact type
Denial of service, Code execution
Confidentiality · integrity · availability
Low · None · Low
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-770 and CWE-94.

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.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00491 42nd percentileScored 2026-11-07
Fix Fixed caddy (caddyserver): 2.11.4github.com/caddyserver/caddy/v2 (Go): 2.11.4

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
Yes
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
caddyservercaddybefore 2.11.42.11.4Patch availableCNA
—github.com/caddyserver/caddy/v2 (Go)before 2.11.42.11.4Patch availableGHSA-j8px-rmrx-76h9
  • caddy Vendorcaddyserver Affected before 2.11.4 Fixed in 2.11.4 Patch available CNA
  • github.com/caddyserver/caddy/v2 (Go) Vendor— Affected before 2.11.4 Fixed in 2.11.4 Patch available GHSA-j8px-rmrx-76h9

CPE names Threatist (inferred) · 1

Inferred from how NVD named this product before; not given by a source.

CPEVersionsRoleVendor
cpe:2.3:a:caddyserver:caddy:*:*:*:*:*:*:*:*——caddyserver
  • cpe:2.3:a:caddyserver:caddy:*:*:*:*:*:*:*:* Versions — — ·caddyserver

Remediation

  • Fix · CNA caddy (caddyserver) Fixed in 2.11.4
  • Fix · GHSA-j8px-rmrx-76h9 github.com/caddyserver/caddy/v2 (Go) Fixed in 2.11.4 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-77281
  2. 2026-10-03 Alias added: GHSA-j8px-rmrx-76h9

References

  • TI-2023-23979 The HTTP/2 protocol allows a denial of service (server resource consumption) because… KEVCVSS 3.1HIGH 7.5
  • TI-2026-21978 Improper input validation in caddyserver caddy CVSS 4.0HIGH 8.9
  • TI-2026-21974 Caddy's mTLS client authentication silently fails open when CA certificate file is missing or malformed CVSS 4.0HIGH 8.8
  • TI-2026-23680 Improper authentication in caddyserver caddy CVSS 3.1HIGH 8.8
  • TI-2026-21976 Caddy: MatchHost becomes case-sensitive for large host lists (>100), enabling host-based route/auth bypass CVSS 4.0HIGH 7.7
  • TI-2026-21975 Caddy: MatchPath %xx (escaped-path) branch skips case normalization, enabling path-based route/auth bypass CVSS 4.0HIGH 7.7
See all 23 →

Sources