VulnSea

getgrav has 90 CVEs on record between 2025 and 2026. Disclosure cadence is accelerating: 71 in the last 90 days against 4 in the 90 before. The busiest recent month was August 2026 with 33. The median CVSS is 6.8 (medium), with 6 rated critical. None have a confirmed exploitation report. The dominant weakness classes are CWE-79 (23) and CWE-22 (11). Most affected products: getgrav/grav (52), grav (30), grav-plugin-admin (3).

CVEs per month

Last 12 months, by publish date

101112010203040506070809
Exploited share
0% vs 1% corpus
Median CVSS
6.8
Publish → KEV
—
Last 90 days
71 prev 4

Products

  • getgrav/grav 52
  • grav 30
  • grav-plugin-admin 3
  • grav-plugin-api 3
  • grav-plugin-form 1
  • grav-plugin-shortcode-core 1
90
Total CVEs
6
Critical
0
CISA KEV
0
Exploited

getgrav vulnerabilities

CVEs affecting getgrav, newest first. Open any entry for full detail, references, and exploit status.

90 CVEsRSS

CVE-2026-85604High· 8.8PoC
3w ago

Grav before 2.0.18 (affected versions <= 2.0.17) contains a remote code execution vulnerability in the Twig sort filter

Grav before 2.0.18 (affected versions <= 2.0.17) contains a remote code execution vulnerability in the Twig sort filter. The sortFunc wrapper in GravExtension.php hardcodes Twig's isSandboxed argument to false, so unlike |map/|filter/|re…

▾ Midnightgetgrav · gravEPSS 0.86%via NVD
CVE-2026-85599High· 7.2PoC
3w ago

Grav Shortcode Core before 6.2.5 contains stored cross-site scripting vulnerabilities in the [lorem] tag parameter and [details] summary parameter that are written to rendered pages without escaping

Grav Shortcode Core before 6.2.5 contains stored cross-site scripting vulnerabilities in the [lorem] tag parameter and [details] summary parameter that are written to rendered pages without escaping. Attackers with page-edit access can i…

▾ Midnightgetgrav · grav-plugin-shortcode-coreEPSS 0.26%via NVD
CVE-2026-85598Medium· 6.4
3w ago

Grav versions 2.0.0 through 2.0.17 fail to apply save-time XSS detection to modular pages, allowing authenticated page editors to store Twig-assembled XSS payloads

Grav versions 2.0.0 through 2.0.17 fail to apply save-time XSS detection to modular pages, allowing authenticated page editors to store Twig-assembled XSS payloads. Attackers with page-edit rights can create modular pages with malicious …

▾ Sunlitgetgrav · gravEPSS 0.26%via NVD
GHSA-896w-cw95-xq7wHigh· 8.1
1mo ago

Duplicate Advisory: Grav: Path Traversal in MediaUploadTrait::deleteFile() Allows Arbitrary File Deletion

Duplicate Advisory: Grav: Path Traversal in MediaUploadTrait::deleteFile() Allows Arbitrary File Deletion

▾ Twilightgetgrav · getgrav/gravvia GHSA
GHSA-qh7h-6c7g-x8m6Critical· 5.4
1mo ago

Duplicate Advisory: Grav: Origin validation bypass in Uri::referrer() and Pages::referrerRoute() via unanchored prefix match

Duplicate Advisory: Grav: Origin validation bypass in Uri::referrer() and Pages::referrerRoute() via unanchored prefix match

▾ Midnightgetgrav · getgrav/gravvia GHSA
GHSA-px9v-979x-qmh9Medium· 3.7
1mo ago

Duplicate Advisory: Grav: Non constant time nonce comparison in Utils::verifyNonce() used for CSRF protection

Duplicate Advisory: Grav: Non constant time nonce comparison in Utils::verifyNonce() used for CSRF protection

▾ Sunlitgetgrav · getgrav/gravvia GHSA
GHSA-rj4c-4q9x-543xHigh· 6.5
1mo ago

Duplicate Advisory: Grav: media_directory() Twig function allows filesystem path traversal and file content disclosure from sandboxed page content

Duplicate Advisory: Grav: media_directory() Twig function allows filesystem path traversal and file content disclosure from sandboxed page content

▾ Twilightgetgrav · getgrav/gravvia GHSA
GHSA-mw85-cjh9-8hp7High· 6.5
1mo ago

Duplicate Advisory: Grav: The system, site, and theme Twig variables bypass the content sandbox entirely and are never covered by config_denied_paths

Duplicate Advisory: Grav: The system, site, and theme Twig variables bypass the content sandbox entirely and are never covered by config_denied_paths

▾ Twilightgetgrav · getgrav/gravvia GHSA
GHSA-crrc-vpp2-f5x7High· 7.5
1mo ago

Duplicate Advisory: Grav: config_denied_paths default list omits `system`, exposing real secrets (e.g. system.cache.redis.password) via the Twig sandbox when config_access is enabled

Duplicate Advisory: Grav: config_denied_paths default list omits `system`, exposing real secrets (e.g. system.cache.redis.password) via the Twig sandbox when config_access is enabled

▾ Twilightgetgrav · getgrav/gravvia GHSA
GHSA-8vp7-8q4w-vv7mHigh· 6.5
1mo ago

Duplicate Advisory: Grav: UserInterface offsetget/offsetexists allow-listed in Twig sandbox let editor-authored content leak hashed_password and 2FA secrets via offsetGet()

Duplicate Advisory: Grav: UserInterface offsetget/offsetexists allow-listed in Twig sandbox let editor-authored content leak hashed_password and 2FA secrets via offsetGet()

▾ Twilightgetgrav · getgrav/gravvia GHSA
GHSA-8hgv-xc77-jmcrMedium
1mo ago

Grav: Page editors can inject arbitrary script into rendered pages via the Twig sandbox's assets.addJs/addCss allowlist, escalating to super-admin

Grav: Page editors can inject arbitrary script into rendered pages via the Twig sandbox's assets.addJs/addCss allowlist, escalating to super-admin

▾ Sunlitgetgrav · getgrav/gravvia GHSA
CVE-2026-62672Medium· 6.0PoC
1mo ago

Grav is a file-based Web platform

Grav is a file-based Web platform. Prior to 2.0.4, Grav allowlists the regex_replace filter and function in system/config/security.yaml, and GravExtension::regexReplace() passes an editor-controlled pattern directly to preg_replace(). Wh…

▾ Twilightgetgrav · gravEPSS 0.38%via NVD
CVE-2026-62669High· 7.4
1mo ago

Grav Login Plugin adds login, basic ACL, and session wide messages to Grav

Grav Login Plugin adds login, basic ACL, and session wide messages to Grav. Prior to 3.8.11, the Grav Login plugin login.regenerate2FASecret task checks only that the pending-session user exists rather than requiring $user->authorized. A…

▾ Twilightgetgrav · getgrav/gravEPSS 0.50%via NVD
CVE-2026-61690Medium· 6.5
1mo ago

Grav is a file-based Web platform

Grav is a file-based Web platform. Prior to 2.0.1, Grav ZipArchiver::extract() in system/src/Grav/Common/Filesystem/ZipArchiver.php passes archives to ZipArchive::extractTo() without enforcing the system.gpm.archive uncompressed-size, fi…

▾ Sunlitgetgrav · getgrav/gravEPSS 0.53%via NVD
CVE-2026-61842Medium· 6.5
1mo ago

Grav is a file-based Web platform

Grav is a file-based Web platform. Prior to 2.0.2, the Grav Twig content sandbox permits grav.offsetGet('config') to return the raw configuration object and permits json_encode, print_r, yaml_encode, and string filters to serialize that …

▾ Sunlitgetgrav · getgrav/gravEPSS 0.44%via NVD
CVE-2026-64850High
1mo ago

Grav is a file-based Web platform

Grav is a file-based Web platform. Prior to 2.0.7, Grav Blueprint::dynamicData() in system/src/Grav/Common/Data/Blueprint.php sends an editor-controlled Class::method provider and arguments to call_user_func_array() without rejecting dan…

▾ Twilightgetgrav · getgrav/gravEPSS 0.47%via NVD
CVE-2026-62673High
1mo ago

Grav is a file-based Web platform

Grav is a file-based Web platform. Prior to 2.0.4, the Grav .htaccess and webserver-configs/htaccess.txt security rules omit the Apache [NC] flag and therefore compare sensitive directory and file-extension patterns case-sensitively. On …

▾ Twilightgetgrav · getgrav/gravEPSS 0.54%via NVD
GHSA-fwwx-3362-3947Critical· 8.8
1mo ago

Duplicate Advisory: Grav: Blueprint dynamic-data bare-function branch is denylist-gated and omits error_log, giving arbitrary file write

Duplicate Advisory: Grav: Blueprint dynamic-data bare-function branch is denylist-gated and omits error_log, giving arbitrary file write

▾ Midnightgetgrav · getgrav/gravvia GHSA
GHSA-9pr6-8r9w-wvmjCritical· 8.7
1mo ago

Duplicate Advisory: Grav: detectXss() misses an event-handler attribute after an unpaired quote in an unquoted attribute value, giving stored XSS

Duplicate Advisory: Grav: detectXss() misses an event-handler attribute after an unpaired quote in an unquoted attribute value, giving stored XSS

▾ Midnightgetgrav · getgrav/gravvia GHSA
GHSA-993v-76jg-67xrMedium· 5.4
1mo ago

Duplicate Advisory: Grav: Single invalid UTF-8 byte disables every rule in Security::detectXss(), bypassing the page-content XSS safety gate

Duplicate Advisory: Grav: Single invalid UTF-8 byte disables every rule in Security::detectXss(), bypassing the page-content XSS safety gate

▾ Sunlitgetgrav · getgrav/gravvia GHSA
GHSA-m97h-2qj3-5773Critical· 9.1
1mo ago

Duplicate Advisory: Grav: Missing admin.super guard on core group blueprint access field allows admin.users operator to escalate to super-admin

Duplicate Advisory: Grav: Missing admin.super guard on core group blueprint access field allows admin.users operator to escalate to super-admin

▾ Midnightgetgrav · getgrav/gravvia GHSA
GHSA-2rhw-8953-48q3High· 5.9
1mo ago

Duplicate Advisory: Grav: Unauthenticated Path Traversal via Missing Directory-Boundary Check in `plugin-asset-map.php` Static Asset Server (`index.php`)

Duplicate Advisory: Grav: Unauthenticated Path Traversal via Missing Directory-Boundary Check in `plugin-asset-map.php` Static Asset Server (`index.php`)

▾ Twilightgetgrav · getgrav/gravvia GHSA
GHSA-q8cg-5m48-5c25Medium· 7.6
1mo ago

Duplicate Advisory: Grav: Stored XSS via Markdown audio/video media <source> URL

Duplicate Advisory: Grav: Stored XSS via Markdown audio/video media <source> URL

▾ Sunlitgetgrav · getgrav/gravvia GHSA
CVE-2026-75837Critical· 9.1
1mo ago

Grav before 2.0.14 fails to guard the access field in the core group blueprint with the required security@: admin.super restriction

Grav before 2.0.14 fails to guard the access field in the core group blueprint with the required security@: admin.super restriction. A delegated admin.users operator can save a group with access[admin][super]=true to escalate to super-ad…

▾ Midnightgetgrav · getgrav/gravEPSS 0.49%via NVD
CVE-2026-75834Medium· 5.4
1mo ago

Grav before 2.0.14 contains a stored cross-site scripting vulnerability in the Security::detectXss() function (system/src/Grav/Common/Security.php)

Grav before 2.0.14 contains a stored cross-site scripting vulnerability in the Security::detectXss() function (system/src/Grav/Common/Security.php). All XSS detection patterns use the PCRE /u (UTF-8) modifier, so a single invalid UTF-8 b…

▾ Sunlitgetgrav · getgrav/gravEPSS 0.26%via NVD
CVE-2026-75831High· 7.6
1mo ago

Grav before 2.0.15 contains a stored cross-site scripting vulnerability in the audio and video media rendering through the sourceParsedownElement method

Grav before 2.0.15 contains a stored cross-site scripting vulnerability in the audio and video media rendering through the sourceParsedownElement method. The media URL fragment is concatenated unescaped into rawHtml source elements, allo…

▾ Twilightgetgrav · getgrav/gravEPSS 0.35%via NVD
CVE-2026-75828High· 8.7
1mo ago

Grav before 2.0.15 contains a stored cross-site scripting vulnerability in the detectXss() function where unpaired quotes in unquoted attribute values bypass event-handler detection

Grav before 2.0.15 contains a stored cross-site scripting vulnerability in the detectXss() function where unpaired quotes in unquoted attribute values bypass event-handler detection. Authenticated editors can inject event handlers like o…

▾ Twilightgetgrav · getgrav/gravEPSS 0.39%via NVD
CVE-2026-75827High· 8.8PoC
1mo ago

Grav before 2.0.15 contains an arbitrary file write vulnerability in the Blueprint dynamic-data bare-function validation that uses an incomplete denylist instead of a positive allowlist

Grav before 2.0.15 contains an arbitrary file write vulnerability in the Blueprint dynamic-data bare-function validation that uses an incomplete denylist instead of a positive allowlist. Attackers with page-edit or blueprint-config acces…

▾ Midnightgetgrav · getgrav/gravEPSS 0.86%via NVD
CVE-2026-75107Medium· 5.4PoC
1mo ago

Grav Form Plugin before 9.1.19 fails to escape field-definition properties including prepend, append, spacer text, section text, and select option labels in form templates

Grav Form Plugin before 9.1.19 fails to escape field-definition properties including prepend, append, spacer text, section text, and select option labels in form templates. Attackers with form authoring privileges can inject arbitrary HT…

▾ Twilightgetgrav · gravEPSS 0.24%via NVD
CVE-2026-74907Medium· 5.9
1mo ago

Grav before 2.0.15 contains a path traversal vulnerability in the static asset server within index.php that uses string prefix matching instead of directory-boundary validation

Grav before 2.0.15 contains a path traversal vulnerability in the static asset server within index.php that uses string prefix matching instead of directory-boundary validation. Unauthenticated attackers can access files in sibling direc…

▾ Sunlitgetgrav · getgrav/gravEPSS 0.43%via NVD
getgrav vulnerabilities (CVEs) — page 2 · VulnSea