ZeroHour

CVE-2026-85603

moderate

Path Traversal in Grav CMS Admin Plugin 'Save As' Enables Arbitrary File Write

CVSS 4.0
7.1 high
EPSS
<1%p33
Published
()
Modified
AI analysis

Grav CMS before 1.10.55 contains a path traversal flaw (CWE-73) in the Admin plugin's 'Save As' action, where the 'lang' POST parameter is accepted without validation of the language code. An authenticated user holding the admin.pages.create permission can send directory traversal sequences in that field to write .md files outside the pages directory with attacker-controlled content. Successful exploitation gives the attacker an arbitrary file-write primitive on the server, which the CVSS 4.0 score (7.1, High) treats as high impact on the vulnerable system given the network attack vector, low required privileges, and no user interaction. Only Grav deployments running the Admin plugin and granting admin.pages.create to an account an attacker can obtain (e.g., a low-trust or compromised admin) are practically exposed. There is no public proof-of-concept, the flaw is not in CISA's KEV catalog, and EPSS puts 30-day exploitation probability at just 0.4% (33rd percentile), so no exploitation is currently known.

What to do: Upgrade Grav to version 1.10.55 or later and keep the Admin plugin on its latest release; as interim mitigations, restrict admin.pages.create to trusted administrators. Defenders should also audit for unexpected .md files outside the pages directory as a sign of possible exploitation.

Affected
Grav (getgrav) Grav CMS — Admin plugin 'Save As' actionAll Grav versions before 1.10.55
Estimated exposure
moderateon the order of 10,000–100,000 installations (estimate; niche flat-file CMS, only deployments running the Admin plugin are affected) — Public scans and market-share trackers have long placed live Grav CMS sites at roughly the tens of thousands, and only the subset running the Admin plugin with admin.pages.create users granted to others is practically exposed, so this is…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

Grav versions before 1.10.55 contain a path traversal vulnerability in the admin plugin's Save As action that fails to validate the language code parameter. An authenticated admin user with admin.pages.create permission can supply directory traversal sequences in the lang POST field to write arbitrary .md files outside the pages directory with attacker-controlled content.

Weakness
CWE-73
Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

In the news

No ingested article mentions this CVE yet.