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.
Published: 2026-07-17
Score: 8.7 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability arises because Grav’s default .htaccess lacks the [NC] flag, making file extension checks case-sensitive. An unauthenticated attacker can request files with uppercase or mixed‑case extensions (e.g., .YAML, .PHP) on case‑insensitive filesystems to bypass the restrictions and retrieve sensitive files that may contain API keys or credentials.

Affected Systems

The affected product is Grav by getgrav. All releases before version 2.0.4 are affected; any deployment using the default .htaccess configuration on a case‑insensitive filesystem (Windows, macOS, Docker volumes) is vulnerable.

Risk and Exploitability

The CVSS score of 8.7 classifies this as high severity, and the EPSS score of less than 1% indicates a low but nonzero likelihood of exploitation. The vulnerability is not listed in the CISA KEV catalog. The likely attack vector is an unauthenticated HTTP request that uses a non‑standard file extension case to circumvent server‑side access controls and read unauthorized configuration files.

Generated by OpenCVE AI on July 31, 2026 at 00:48 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Grav to version 2.0.4 or later, which includes a corrected .htaccess pattern.
  • If the upgrade cannot be performed immediately, modify the server’s .htaccess rules to include the [NC] flag on extension checks or remove the default .htaccess altogether.
  • Configure the web server or filesystem to enforce case-sensitive file matching, or relocate sensitive configuration files outside the web‑root to prevent direct URL access.

Generated by OpenCVE AI on July 31, 2026 at 00:48 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 17 Jul 2026 14:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Fri, 17 Jul 2026 00:30:00 +0000

Type Values Removed Values Added
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.
Title Grav < 2.0.4 File Access Bypass via Case Variation
First Time appeared Getgrav
Getgrav grav
Weaknesses CWE-178
CPEs cpe:2.3:a:getgrav:grav:*:*:*:*:*:*:*:*
Vendors & Products Getgrav
Getgrav grav
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N'}

cvssV4_0

{'score': 8.7, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-07-17T14:09:15.233Z

Reserved: 2026-07-13T16:40:10.961Z

Link: CVE-2026-62230

cve-icon Vulnrichment

Updated: 2026-07-17T14:09:07.452Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-31T01:00:14Z

Weaknesses
  • CWE-178

    Improper Handling of Case Sensitivity