Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:L/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
Requires a separately leaked valid token (AC:H) and a browser loading attacker script (UI:R); wildcard CORS yields high-confidentiality read and limited write (I:L), no availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
3DescriptionCVE.org
The Grav API plugin (getgrav/grav-plugin-api) before 1.0.0-rc.16 shipped Access-Control-Allow-Origin: * as its default CORS configuration on all responses, including authenticated endpoints and preflight (OPTIONS) responses. Because the plugin accepts credentials via the Authorization and X-API-Token headers (set programmatically by JavaScript rather than via cookies), an attacker who obtains a valid access token (e.g., via log leakage, Referer headers, browser history, or network capture) can issue fully authenticated cross-origin requests from any malicious website to read sensitive data and perform write operations as the token's user. Fixed in 1.0.0-rc.16.
AnalysisAI
Cross-origin data exposure in the Grav API plugin (getgrav/grav-plugin-api) before 1.0.0-rc.16 stems from a hardcoded 'Access-Control-Allow-Origin: *' header returned on every response, including authenticated endpoints and preflight (OPTIONS) responses. Because the plugin authenticates via the Authorization and X-API-Token request headers rather than cookies, any malicious website scripting a leaked access token can read the response bodies of authenticated endpoints and perform write actions as that token's user. Reported by VulnCheck with no public exploit identified at time of analysis; not listed in CISA KEV.
Technical ContextAI
Grav is a flat-file, database-free PHP CMS, and the API plugin exposes REST-style endpoints for programmatic content and administrative operations. The root cause is CWE-942 (Permissive Cross-domain Policy with Untrusted Domains): the plugin statically emits a wildcard CORS policy instead of validating against an allowlist of trusted origins. Normally a wildcard ACAO blocks cookie-based credentialed requests, but this plugin carries credentials in the custom Authorization and X-API-Token headers that JavaScript sets explicitly, so the wildcard policy directly permits arbitrary origins to both send those headers and read the returned responses. The affected CPE is cpe:2.3:a:getgrav:grav (the API plugin component) across all versions prior to the fix.
RemediationAI
Vendor-released patch: upgrade the Grav API plugin to 1.0.0-rc.16 or later, which removes the default wildcard CORS policy; this is the primary and recommended fix, per advisory GHSA-93px-98wh-6fj2. If immediate upgrade is not possible, place the API behind a reverse proxy (nginx/Apache) that strips or overrides the plugin's 'Access-Control-Allow-Origin: *' header and reflects only an explicit allowlist of trusted origins, with the trade-off that legitimate cross-origin browser clients must then be enumerated and whitelisted. Additionally restrict network access to the API endpoints to trusted hosts or VPN, and rotate any access tokens that may have been exposed while tightening token handling to reduce leakage via logs and Referer headers, accepting that these controls reduce but do not eliminate exposure until the plugin is patched.
More in Cors Misconfiguration
View allCasdoor is a UI-first Identity and Access Management (IAM) / Single-Sign-On (SSO) platform. Rated high severity (CVSS 8.
In Eclipse Theia 0.3.9 to 1.8.1, the "mini-browser" extension allows a user to preview HTML files in an iframe inside th
Bruno is an open source IDE for exploring and testing APIs. Rated high severity (CVSS 8.7), this vulnerability is no aut
memos is a privacy-first, lightweight note-taking service. Rated high severity (CVSS 8.1), this vulnerability is remotel
Cross-origin read bypass in Electron's custom protocol handler exposes sensitive application data to remote pages via fe
Information disclosure in Progress MOVEit Transfer (all versions before 2025.1.5, and 2026.0.0 before 2026.0.3) stems fr
Sensitive-data exposure in Cohere North AI v1.1.5 stems from the server accepting cross-origin requests without validati
SCG Policy Manager, all versions, contains an overly permissive Cross-Origin Resource Policy (CORP) vulnerability. Rated
In Directus before 9.7.0, the default settings of CORS_ORIGIN and CORS_ENABLED are true. Rated critical severity (CVSS 9
A malicious website could have learned the size of a cross-origin resource that supported Range requests. Rated critical
Remote code execution in SiYuan desktop application (versions prior to 3.6.2) allows unauthenticated remote attackers to
Permissive CORS policy in ericc-ch copilot-api up to version 0.7.0 allows remote attackers to access the Token Endpoint
Same technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-45087
GHSA-h4x5-fmw9-97f9