Description
Grav before 2.0.4 ships a default .htaccess (and reference webserver-configs/htaccess.txt) whose rules blocking access to sensitive file types (.yaml, .php, .json, etc.) lack the [NC] flag, making extension matching case-sensitive. On case-insensitive filesystems (Windows/NTFS, macOS/HFS+, or Docker volume mounts), an unauthenticated attacker can request these files with uppercase or mixed-case extensions (e.g., .YAML, .PHP) to bypass the restrictions and read sensitive configuration files that may contain API keys and credentials.
References (2)
Core 2
Core References
Vendor Advisory vendor-advisory
GitHub Security Advisory (GHSA-vwg3-w8w3-pc79)
https://github.com/getgrav/grav/security/advisories/GHSA-vwg3-w8w3-pc79
Third Party Advisory third-party-advisory
VulnCheck Advisory: Grav < 2.0.4 File Access Bypass via Case Variation
https://www.vulncheck.com/advisories/grav-file-access-bypass-via-case-variation
Scores
CVSS v3
7.5
EPSS
0.0028
EPSS Percentile
20.5%
Attack Vector
NETWORK
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
CISA SSVC
Vulnrichment
Exploitation
poc
Automatable
yes
Technical Impact
partial
Details
CWE
CWE-178
Status
published
Products (2)
getgrav/grav
< 2.0.4
getgrav/grav
2.0.4
Published
Jul 17, 2026
Tracked Since
Jul 17, 2026