CVE-2026-57531 Milkdown < 7.21.3 DOM XSS via innerHTML Assignment
Attackers can execute arbitrary JavaScript in the host application by tricking users into pasting malicious emoji content, affecting Milkdown users.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- A user has to click or open something
- Fix
- None listed
What is CVE-2026-57531?
CVE-2026-57531 is a medium-severity cross-site scripting vulnerability in milkdown, published on 24 Jul 2026. Any signed-in user can exploit it over the network, and only if a user opens a file or follows a link.
Official description
Milkdown before 7.21.3 contains a DOM cross-site scripting vulnerability in the @milkdown/plugin-emoji package that allows unauthenticated attackers to execute arbitrary JavaScript in the host application's origin by causing a victim to paste attacker-controlled content. The parseDOM.getAttrs handler stores raw innerHTML of pasted span elements with data-type="emoji" without sanitization, and the toMarkdown runner subsequently assigns this unsanitized value directly to a live DOM element's innerHTML, bypassing the DOMPurify sanitization used in the toDOM path, causing payload execution on every markdown serialization cycle.
Weakness: CWE-79
Which versions are affected by CVE-2026-57531?
How do I fix CVE-2026-57531?
No fix has been published for CVE-2026-57531 yet. Limit exposure of the affected software until one is available.
Escape output for the context it lands in and set a strict Content Security Policy. Upgrading the affected component is the real fix. More about Cross-site scripting.
Is CVE-2026-57531 being exploited?
There is no known exploitation of CVE-2026-57531 in the wild and no public exploit code.
Sources
Also known as GHSA-7jff-jg2j-4x95.