CVE-2025-66309 Grav is vulnerable to Cross-Site Scripting (XSS) Reflected endpoint /admin/pages/[page], parameter data[header][content][items], located in the "Blog Config" tab
Attackers can inject malicious scripts via the Blog Config tab in Grav admin, potentially leading to code execution or account takeover.
- Exploited in the wild
- Not known
- Login needed
- An administrator
- Attackable
- Over the internet
- Victim action needed
- A user has to click or open something
- Fix
- Available
What is CVE-2025-66309?
CVE-2025-66309 is a medium-severity cross-site scripting vulnerability in getgrav grav, published on 1 Dec 2025. An attacker needs administrator access to exploit it, and only if a user opens a file or follows a link.
Official description
This admin plugin for Grav is an HTML user interface that provides a convenient way to configure Grav and easily create and modify pages. Prior to 1.11.0-beta.1, a Reflected Cross-Site Scripting (XSS) vulnerability was identified in the /admin/pages/[page] endpoint of the Grav application. This vulnerability allows attackers to inject malicious scripts into the data[header][content][items] parameter. This vulnerability is fixed in 1.11.0-beta.1.
Weakness: CWE-79
Which versions are affected by CVE-2025-66309?
2 open source packages ship an affected version, including getgrav/grav. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
getgrav/grav Packagist | All versions | 1.8.0-beta.27 |
getgrav/grav Packagist | All versions | 1.8.0-beta.27 |
Products include Getgrav Grav-Plugin-Admin.
How do I fix CVE-2025-66309?
Upgrade getgrav/grav to 1.8.0-beta.27 or later.
Escape output for the context it lands in and set a strict Content Security Policy. Upgrading the affected component is the real fix. More about Cross-site scripting.
Is CVE-2025-66309 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2025-66309 exists.
Other vulnerabilities in getgrav grav
- CVE-2021-21425 Unauthenticated Arbitrary YAML Write/Update leads to Code Execution
- CVE-2025-66308 Grav Admin Plugin vulnerable to Cross-Site Scripting (XSS) Stored endpoint `/admin/config/site` parameter `data[taxonomies]`
- CVE-2025-66307 Grav Admin Plugin vulnerable to User Enumeration & Email Disclosure
- CVE-2025-66310 Grav vulnerable to Cross-Site Scripting (XSS) Stored endpoint `/admin/pages/[page]` parameter `data[header][template]` in Advanced Tab
- CVE-2025-66311 Grav vulnerable to Cross-Site Scripting (XSS) Stored endpoint `/admin/pages/[page]` in Multiples parameters
Sources
Also known as GHSA-65mj-f7p4-wggq.