---
id: CVE-2026-85601
title: >-
  Grav Admin before 2.0.20 fails to sanitize output from marked.parse() before
  injecting it into the DOM via Svelte's {@html} directive in MarkdownEditor and
  MarkdownModal components
summary: >-
  Grav Admin before 2.0.20 fails to sanitize output from marked.parse() before
  injecting it into the DOM via Svelte's {@html} directive in MarkdownEditor and
  MarkdownModal components. Attackers can inject javascript: URI schemes in
  plugin …
severity: medium
cvss: 5.4
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N'
cwe:
  - CWE-79
vendor: getgrav
product: grav
affected:
  - grav < 2.0.20
published: '2026-09-04'
updated: '2026-09-10'
sourceUpdated: '2026-09-10T16:17:59.650'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-85601'
references:
  - url: 'https://github.com/getgrav/grav/security/advisories/GHSA-752r-88j4-vxm3'
    label: disclosure@vulncheck.com
  - url: >-
      https://www.vulncheck.com/advisories/grav-admin-before-2.0.20-cross-site-scripting-via-marked-js
    label: disclosure@vulncheck.com
tags:
  - nvd
  - cve.org
ssvc:
  exploitation: none
  automatable: 'yes'
  technicalImpact: partial
  timestamp: '2026-09-10T14:23:05.498221Z'
epss: 0.0028
epssPercentile: 0.18172
ingestedAt: '2026-09-08T20:10:03.165Z'
---

## Overview

Grav Admin before 2.0.20 fails to sanitize output from marked.parse() before injecting it into the DOM via Svelte's {@html} directive in MarkdownEditor and MarkdownModal components. Attackers can inject javascript: URI schemes in plugin or theme changelogs to execute arbitrary code in authenticated admin sessions without requiring site access.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
