Grav vulnerable to Information Disclosure via IDOR in Grav Admin Panel
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- High · None · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · NVD. Fix status from CNA and GitHub. Impact type from CWE-639.
Summary
Grav is a file-based Web platform. Prior to 1.8.0-beta.27, there is an IDOR (Insecure Direct Object Reference) vulnerability in the Grav CMS Admin Panel which allows low-privilege users to access sensitive information from other accounts. Although direct account takeover is not possible, admin email addresses and other metadata can be exposed, increasing the risk of phishing, credential stuffing, and social engineering. This vulnerability is fixed in 1.8.0-beta.27.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| getgrav | grav | before 1.8.0-beta.27 | 1.8.0-beta.27 | Patch available | CNA |
| — | getgrav/grav (Packagist) | before 1.8.0-beta.27 | 1.8.0-beta.27 | Patch available | GHSA-4cwq-j7jv-qmwg |
- grav Vendorgetgrav Affected before 1.8.0-beta.27 Fixed in 1.8.0-beta.27 Patch available CNA
- getgrav/grav (Packagist) Vendor— Affected before 1.8.0-beta.27 Fixed in 1.8.0-beta.27 Patch available GHSA-4cwq-j7jv-qmwg
CPE configurations NVD · 27
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:getgrav:grav:*:*:*:*:*:*:*:* | 1.7.48 to before 1.8.0 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta1:*:*:*:*:*:* | 1.8.0 beta1 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta10:*:*:*:*:*:* | 1.8.0 beta10 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta11:*:*:*:*:*:* | 1.8.0 beta11 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta12:*:*:*:*:*:* | 1.8.0 beta12 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta13:*:*:*:*:*:* | 1.8.0 beta13 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta14:*:*:*:*:*:* | 1.8.0 beta14 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta15:*:*:*:*:*:* | 1.8.0 beta15 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta16:*:*:*:*:*:* | 1.8.0 beta16 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta17:*:*:*:*:*:* | 1.8.0 beta17 | Vulnerable | getgrav |
- cpe:2.3:a:getgrav:grav:*:*:*:*:*:*:*:* Versions 1.7.48 to before 1.8.0 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta1:*:*:*:*:*:* Versions 1.8.0 beta1 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta10:*:*:*:*:*:* Versions 1.8.0 beta10 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta11:*:*:*:*:*:* Versions 1.8.0 beta11 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta12:*:*:*:*:*:* Versions 1.8.0 beta12 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta13:*:*:*:*:*:* Versions 1.8.0 beta13 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta14:*:*:*:*:*:* Versions 1.8.0 beta14 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta15:*:*:*:*:*:* Versions 1.8.0 beta15 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta16:*:*:*:*:*:* Versions 1.8.0 beta16 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta17:*:*:*:*:*:* Versions 1.8.0 beta17 Vulnerable ·getgrav
Show 17 more CPE
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:getgrav:grav:1.8.0:beta18:*:*:*:*:*:* | 1.8.0 beta18 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta19:*:*:*:*:*:* | 1.8.0 beta19 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta2:*:*:*:*:*:* | 1.8.0 beta2 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta20:*:*:*:*:*:* | 1.8.0 beta20 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta21:*:*:*:*:*:* | 1.8.0 beta21 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta22:*:*:*:*:*:* | 1.8.0 beta22 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta23:*:*:*:*:*:* | 1.8.0 beta23 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta24:*:*:*:*:*:* | 1.8.0 beta24 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta25:*:*:*:*:*:* | 1.8.0 beta25 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta26:*:*:*:*:*:* | 1.8.0 beta26 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta3:*:*:*:*:*:* | 1.8.0 beta3 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta4:*:*:*:*:*:* | 1.8.0 beta4 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta5:*:*:*:*:*:* | 1.8.0 beta5 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta6:*:*:*:*:*:* | 1.8.0 beta6 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta7:*:*:*:*:*:* | 1.8.0 beta7 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta8:*:*:*:*:*:* | 1.8.0 beta8 | Vulnerable | getgrav |
| cpe:2.3:a:getgrav:grav:1.8.0:beta9:*:*:*:*:*:* | 1.8.0 beta9 | Vulnerable | getgrav |
- cpe:2.3:a:getgrav:grav:1.8.0:beta18:*:*:*:*:*:* Versions 1.8.0 beta18 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta19:*:*:*:*:*:* Versions 1.8.0 beta19 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta2:*:*:*:*:*:* Versions 1.8.0 beta2 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta20:*:*:*:*:*:* Versions 1.8.0 beta20 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta21:*:*:*:*:*:* Versions 1.8.0 beta21 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta22:*:*:*:*:*:* Versions 1.8.0 beta22 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta23:*:*:*:*:*:* Versions 1.8.0 beta23 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta24:*:*:*:*:*:* Versions 1.8.0 beta24 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta25:*:*:*:*:*:* Versions 1.8.0 beta25 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta26:*:*:*:*:*:* Versions 1.8.0 beta26 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta3:*:*:*:*:*:* Versions 1.8.0 beta3 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta4:*:*:*:*:*:* Versions 1.8.0 beta4 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta5:*:*:*:*:*:* Versions 1.8.0 beta5 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta6:*:*:*:*:*:* Versions 1.8.0 beta6 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta7:*:*:*:*:*:* Versions 1.8.0 beta7 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta8:*:*:*:*:*:* Versions 1.8.0 beta8 Vulnerable ·getgrav
- cpe:2.3:a:getgrav:grav:1.8.0:beta9:*:*:*:*:*:* Versions 1.8.0 beta9 Vulnerable ·getgrav
Remediation
- Fix · CNA grav (getgrav) Fixed in 1.8.0-beta.27
- Fix · GHSA-4cwq-j7jv-qmwg getgrav/grav (Packagist) Fixed in 1.8.0-beta.27 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2025-66306
- 2026-10-03 Alias added: GHSA-4cwq-j7jv-qmwg
References
More getgrav Grav vulnerabilities
- TI-2025-28971 Cross Site Scripting vulnerability in grav v.1.7.48 and before allows an attacker to… CVSS 3.1CRITICAL 9.8
- TI-2021-22428 GravCMS 1.10.7 - Arbitrary YAML Write/Update (Unauthenticated) (2) CVSS 4.0CRITICAL 9.3
- TI-2025-41064 In grav <1.7.49.5, a SSRF (Server-Side Request Forgery) vector may be triggered via Twig… CVSS 3.1CRITICAL 9.1
- TI-2026-30888 Grav: Unauthenticated Path Traversal & Arbitrary File Write in FormFlash component. CVSS 4.0HIGH 8.8
- TI-2025-40773 Security Sandbox Bypass with SSTI (Server Side Template Injection) in the Grav CMS CVSS 3.1HIGH 8.8
- TI-2025-40768 Grav is vulnerable to RCE via SSTI through Twig Sandbox Bypass CVSS 4.0HIGH 8.7
Sources
- CVE-2025-66306 · CVE Program
- CVE-2025-66306 · NVD
- FIRST EPSS
- GHSA-4cwq-j7jv-qmwg · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences