๐Ÿ” CVE Alert

CVE-2026-61607

MEDIUM 4.6

Grav API Plugin: Stored XSS via SVG Upload - API Media Pipeline Bypasses Sanitizer

CVSS Score
4.6
EPSS Score
0.0%
EPSS Percentile
0th

Grav API Plugin is a RESTful API for Grav CMS that provides full headless access to your site's content. Prior to 1.0.2, the Grav API plugin POST /api/v1/media pipeline in HandlesMediaUploads::processUploadedFile() validates an SVG filename extension but does not invoke Security::sanitizeSVG(). An attacker with api.media.write permission can store an SVG containing JavaScript, and the server returns the file as Content-Type: image/svg+xml so the script executes when a victim opens it, allowing session data theft and authenticated actions. This issue is fixed in version 1.0.2.

CWE CWE-79
Vendor getgrav
Product grav-plugin-api
Published Aug 19, 2026
Stay Ahead of the Next One

Get instant alerts for getgrav grav-plugin-api

Be the first to know when new medium vulnerabilities affecting getgrav grav-plugin-api are published โ€” delivered to Slack, Telegram or Discord.

Get Free Alerts โ†’ Free ยท No credit card ยท 60 sec setup

CVSS v3 Breakdown

CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N
Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
Required
Scope
Unchanged
Confidentiality
Low
Integrity
Low
Availability
None

Affected Versions

getgrav / grav-plugin-api
< 1.0.2

References

NVD โ†— CVE.org โ†— EPSS Data โ†—
github.com: https://github.com/getgrav/grav/security/advisories/GHSA-7vhm-8x52-2r5p github.com: https://github.com/getgrav/grav-plugin-api/commit/d25eedb84a387f2c71b12a374f2a4b3d74339a7e github.com: https://github.com/getgrav/grav-plugin-api/releases/tag/1.0.2