CVE-2026-59710: showdown allows stored cross-site scripting through table header ID injection
Affects showdownSource GCVE Database
Not known to be exploited · CVSS 6.1 Medium.
Data as of 29 Oct 2026, 19:04 UTC
- EPSS
- 0.3% chance of exploitation in 30 days – higher than 27% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:NExploitation evidence
Disclosed: evidence found.
CVE published 7 Jul 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 29 Oct 2026.
What to do
Affected software
| Product | Affected | Fixed in |
|---|---|---|
npmshowdownpkg:npm/showdownOther threats | Affected
| Fixed in– |
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
AI-suggested
Monitoring vendor channels for updates is recommended.
Description
Showdown contains a stored cross-site scripting (XSS) vulnerability in its table header ID parsing function. The vulnerability arises because the parseHeaders function in src/subParsers/makehtml/tables.js does not properly escape double-quote characters in markdown table headers. This allows attackers to inject arbitrary HTML and script-executing SVG elements, leading to stored XSS when untrusted markdown is rendered using the default GitHub flavor configuration. The vulnerability affects all versions up to and including 2.1.0. The CVSS score is 6.1, indicating a medium severity issue.
References
- nvd.nist.gov/vuln/detail/CVE-2026-59710 (opens in a new tab)
- github.com/showdownjs/showdown/issues/1046 (opens in a new tab)
- github.com/showdownjs/showdown/commit/e5cab1e9a5dcea2bb3cbf888863fa7e65ab37edf (opens in a new tab)
- github.com/showdownjs/showdown (opens in a new tab)
- vulncheck.com/advisories/showdown-stored-xss-via-unescaped-table-header-id-attribute-injection (opens in a new tab)