CVE-2026-59710 showdown - Stored XSS via Unescaped Table Header ID Attribute Injection

Medium 5.3 Published Updated

Attackers can inject malicious scripts via markdown table headers, leading to stored XSS when rendered with default settings.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
A user has to click or open something
Fix
Available

What is CVE-2026-59710?

CVE-2026-59710 is a medium-severity cross-site scripting vulnerability in showdown, published on 6 Jul 2026. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.

Official description

showdown contains a stored cross-site scripting vulnerability in the parseHeaders function of src/subParsers/makehtml/tables.js that fails to properly escape table header ID attributes. Attackers can inject arbitrary HTML and script-executing SVG elements through double-quote characters in markdown table headers, achieving stored XSS when untrusted markdown is rendered with the default github flavor configuration.

Weakness: CWE-79

Which versions are affected by CVE-2026-59710?

2 open source packages ship an affected version, including showdown.

PackageAffectedFixed in
showdown npmAll versions to 2.1.0None
showdown npmAll versions to 2.1.0None

How do I fix CVE-2026-59710?

Apply the vendor's patch.

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-59710 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-59710 exists.

Sources

Also known as GHSA-22g5-r2x5-97cx, MINI-2fhh-8m2v-f3vv, MINI-4rmr-2742-mpf5, MINI-h37w-3g9v-9g8q, MINI-qm85-wcc2-329m, MINI-rcx3-rfv5-3223 and 1 more.

Is CVE-2026-59710 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free