Milkdown < 7.21.3 Stored XSS via javascript: URL in link href
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- Passive
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- Cross-site scripting
- Confidentiality · integrity · availability
- None · None · None
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA. Impact type from CWE-79.
Summary
Milkdown before 7.21.3 contains a stored cross-site scripting vulnerability in the @milkdown/preset-commonmark and @milkdown/components packages that allows attackers with document write access to execute arbitrary JavaScript in the browser context of any user who opens the document or clicks a rendered link. The parseMarkdown runner stores raw URL values from the remark AST as href mark attributes without URL scheme validation, and the ineffective DOMPurify.sanitize call in edit-view.ts treats the bare URL string as a text node and returns it unchanged, allowing javascript: payloads to pass through the link-tooltip preview component and read-only mode anchor elements unmodified.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
Remediation
- Fix · CNA milkdown (Milkdown) Fixed in 7.21.3
Fixed in the same release
Records fixed by the same vendor advisory or release, as the CNA lists them.
- Release ·
milkdown 7.21.3
2 records Highest priority Priority LOW 2 LOW
Other records, highest priority first
- TI-2026-41415 Milkdown < 7.21.3 DOM XSS via innerHTML AssignmentPriority LOW 23
Timeline
- 2026-10-02 Threatist record created from CVE-2026-57530
- 2026-10-03 Alias added: GHSA-f8jw-52vm-m867
References
More Milkdown vulnerabilities
- TI-2026-41415 Milkdown < 7.21.3 DOM XSS via innerHTML Assignment CVSS 4.0MEDIUM 5.1
Sources
- CVE-2026-57530 · CVE Program
- CVE-2026-57530 · NVD
- FIRST EPSS
- GHSA-f8jw-52vm-m867 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences