Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconObtain admin.super credentials
-
DeliveryAuthenticate to Grav admin panel
-
ExploitNavigate to Direct Install tool
-
InstallUpload crafted zip bomb archive
-
C2Trigger unbound ZipArchive::extractTo
-
ExecuteExhaust disk or crash PHP process
-
ImpactGrav instance unavailable
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V2 - Validation and Business Logic Compression ratio limits
|
| Exploitation Conditions | Exploitation requires an authenticated session with the admin.super role in Grav - the highest privilege tier, not standard admin. The attack specifically requires access to the Direct Install tool (plugin/theme ZIP upload interface), which is gated behind this role. Non-admin users and users with roles below admin.super cannot reach the vulnerable Installer::unZip code path. No special server configuration or non-default feature flag is required beyond having the Direct Install functionality enabled, which is on by default. The limiting factors are: (1) possession of valid admin.super credentials, (2) the ability to upload a file through the Direct Install UI, and (3) sufficient disk I/O and time to complete extraction - large zip bombs may be slow to trigger. Impact is constrained to availability (DoS); no code execution or data exfiltration is possible through this path. |
| Impact | The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:H/UI:N/VC:N/VI:N/VA:H) scores 6.9, accurately reflecting the trade-off between network accessibility and the high-privilege prerequisite. PR:H is the dominant risk-limiting factor: exploitation requires a fully privileged admin.super Grav account, meaning the threat model is primarily insider abuse, account takeover of an existing admin, or a misconfigured multi-tenant deployment. The purely availability-focused impact (VA:H, no C or I) means no data exfiltration or code execution is possible through this vector alone. No EPSS score was provided in the input data, and the vulnerability is not listed in CISA KEV, indicating no confirmed or widespread exploitation. The absence of a public POC further reduces near-term opportunistic risk. In practice, this is a medium-priority hardening issue: organizations with strict admin account hygiene and a single-tenant Grav deployment face negligible real-world risk, whereas multi-tenant platforms granting admin.super access to untrusted users should treat this as urgent. |
| Exploit ScenarioDerived | An attacker who has obtained admin.super credentials - through credential stuffing, phishing, or insider access - navigates to Grav's Direct Install tool and uploads a crafted ZIP archive containing deeply nested or highly repetitive entries that expand to many gigabytes upon extraction. ZipArchive::extractTo proceeds without limit, writing data until available disk space is consumed or the PHP process is killed, taking the Grav site offline. No public POC has been identified, but constructing a zip bomb is trivial with widely available tooling. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 10, 2026
Disk exhaustion and crash vulnerability in Grav's Direct Install tool allows an authenticated admin.super user to upload a specially crafted ZIP archive that decompresses without bound, filling the server disk or crashing the process. Affecting all Grav releases prior to 2.0.0, the root cause is the Installer::unZip method invoking PHP's ZipArchive::extractTo with no enforced limits on uncompressed size, entry count, or directory depth - a classic zip bomb attack surface. No public exploit code or active exploitation has been identified at time of analysis; a vendor-released fix is available in version 2.0.0.
RemediationAI
Upgrade to Grav 2.0.0, which introduces extraction limits in Installer::unZip to prevent zip bomb decompression. The patched release and advisory are available at https://github.com/getgrav/grav/releases/tag/2.0.0 and https://github.com/getgrav/grav/security/advisories/GHSA-2vcx-h8p2-9pg9, and the fixing commit is https://github.com/getgrav/grav/commit/23d6f2adf4ce11889c088ac8557c8314baeef781. If an immediate upgrade is not feasible, restrict the admin.super role to the minimum number of trusted accounts and audit existing assignments, since this is the only role capable of triggering the vulnerable Direct Install code path. As an additional compensating control, consider disabling the Direct Install/plugin upload feature at the web server or application configuration level and requiring manual file-system-level plugin deployment, accepting the trade-off of increased operational friction for reduced attack surface.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in composer, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Grav (CPE: cpe:2.3:a:getgrav:grav:*:*:*:*:*:*:*:*) is a PHP-based flat-file CMS that uses a Direct Install feature allowing admins to install plugins and themes by uploading ZIP archives. The vulnerable code path is Installer::unZip, which delegates decompression to PHP's built-in ZipArchive::extractTo. CWE-409 (Improper Handling of Highly Compressed Data) describes this class of flaw: a maliciously crafted ZIP archive can encode a large volume of repetitive data at extreme compression ratios (zip bomb), causing the extraction routine to write gigabytes or more of output to disk. Without limits on uncompressed entry size, total extracted size, recursive entry count, or directory nesting depth, a single upload call can exhaust available disk space or trigger an out-of-memory crash, neither of which requires any post-upload interaction from the server.
Know when Grav gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Network-reachable upload endpoint but PR:H reflects mandatory admin.super authentication; purely availability impact with no scope change to other systems.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
Grav is a file-based Web platform. Prior to 2.0.0, an authenticated admin.super user can crash Grav or fill the disk by uploading a specially crafted ZIP archive through the Direct Install tool because Installer::unZip calls ZipArchive::extractTo without limits on uncompressed size, entry count, or directory depth. This issue is fixed in version 2.0.0.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Server-side template injection (SSTI) in Grav (getgrav/grav) prior to 1.8.0-beta.27 allows an authenticated attacker hol
Broken access control in Grav CMS (CWE-285) before 1.8.0-beta.27 lets an authenticated editor-level user escalate their
A Remote Code Execution (RCE) vulnerability in Grav CMS v1.7.48 allows an authenticated admin to upload a malicious plug
Grav is a file-based Web platform. Rated critical severity (CVSS 9.9), this vulnerability is remotely exploitable, low a
GravCMS 1.10.7 allows unauthenticated remote attackers to write arbitrary YAML configuration files, leading to full serv
Remote code execution in Grav CMS 2.0.4 (fixed in 2.0.7) lets an authenticated user holding the admin.pages or api.pages
Remote code execution in Grav CMS before 2.0.15 allows attackers holding page-edit or blueprint-config privileges to wri
Vertical privilege escalation in Grav CMS before 2.0.14 lets a delegated administrator holding only the admin.users perm
Stored cross-site scripting in Grav CMS before 2.0.15 lets authenticated editors smuggle JavaScript event handlers past
Server-side request forgery (SSRF) in Grav CMS versions prior to 1.7.49.5 allows remote authenticated attackers to make
Grav is a file-based Web platform. Prior to 1.8.0-beta.27, Grav CMS is vulnerable to a Server-Side Template Injection (S
Remote code execution in Grav CMS before 2.0.13 allows authenticated low-privilege users to plant and execute arbitrary
EUVD-2026-42951
GHSA-2vcx-h8p2-9pg9
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB