Description
markdown-it is a Markdown parser. Prior to 14.3.2 and 15.0.2, when typographer: true is enabled, specially crafted Markdown can cause quadratic processing time in the smartquotes rule, potentially leading to denial of service in applications processing untrusted input. Many opening double quotes followed by unmatched closing single quotes cause repeated scans of the entire opener stack. The same issue occurs with the quote types reversed. The default configuration (typographer: false) is not affected, but this option is enabled with high probability. This issue is fixed in versions 14.3.2 and 15.0.2.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| markdown-it | markdown-it | >= 15.0.0, < 15.0.2, < 14.3.2 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | node-markdown-it | No fix yet | — |
| Debian 13 | node-markdown-it | No fix yet | — |
| Debian 12 | node-markdown-it | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | node-markdown-it | No fix yet | — |
| Ubuntu 26.04 LTS | node-markdown-it | No fix yet | — |
| Ubuntu 24.04 LTS | node-markdown-it | No fix yet | — |
| Ubuntu 22.04 LTS | node-markdown-it | No fix yet | — |
Wolfi
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Wolfi rolling | renovate | 44.176.1-r0 | — |
| Wolfi rolling | vitess-24 | 24.0.5-r2 | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| npm | markdown-it | >= 15.0.0, < 15.0.2 | 15.0.2 | GHSA-r7fv-28h4-cvq7 |
| npm | markdown-it | < 14.3.2 | 14.3.2 | GHSA-r7fv-28h4-cvq7 |
References
- https://github.com/markdown-it/markdown-it/security/advisories/GHSA-r7fv-28h4-cvq7
- https://github.com/markdown-it/markdown-it/commit/1b379c1b6d0522421bd1a51b77337c79af2c8670
- https://github.com/markdown-it/markdown-it/commit/cf27366035edf9196667110c47d9d67b030a4152
- https://github.com/markdown-it/markdown-it/commit/daf5a3c32303e5d9de01b12eeb725fb5990b8162
- https://github.com/markdown-it/markdown-it/releases/tag/14.3.2
- https://github.com/markdown-it/markdown-it/releases/tag/15.0.2