CVE-2026-42612 Grav: Publisher-Level Stored XSS via Unquoted Event Attributes

High 8.5 Published Updated

Publisher-level accounts can execute arbitrary JavaScript via stored XSS in Grav due to a blacklist bypass in event attribute handling.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2026-42612?

CVE-2026-42612 is a high-severity cross-site scripting vulnerability in Getgrav Grav, published on 11 May 2026. Any signed-in user can exploit it over the network, with no action from the victim.

Official description

Grav is a file-based Web platform. Prior to 2.0.0-beta.2, a stored Cross-Site Scripting (XSS) vulnerability in getgrav/grav allows publisher-level accounts to execute arbitrary JavaScript. The issue arises from a blacklist bypass in the detectXss() function when handling unquoted HTML event attributes. This vulnerability is fixed in 2.0.0-beta.2.

Weakness: CWE-79

Which versions are affected by CVE-2026-42612?

2 open source packages ship an affected version, including getgrav/grav. It affects 1 product.

PackageAffectedFixed in
getgrav/grav PackagistAll versions2.0.0-beta.2
getgrav/grav PackagistAll versions2.0.0-beta.2

Products include Getgrav Grav.

How do I fix CVE-2026-42612?

Upgrade getgrav/grav to 2.0.0-beta.2 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-2026-42612 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-42612 exists.

All Getgrav Grav vulnerabilities

Sources

Also known as GHSA-9695-8fr9-hw5q.

Is CVE-2026-42612 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free