CVE-2026-111766: markdown-it: Quadratic-time denial of service in inline HTML parsing with html enabled
With html: true, markdown-it takes quadratic time to parse repeated unterminated HTML constructs inside a paragraph. This affects HTML comments (<!--), processing instructions (<?), declarations (<!A), and CDATA sections (<![CDATA[).
An attacker-controlled input of a few hundred kilobytes can block the Node.js event loop for seconds or tens of seconds. The default configuration has HTML disabled, but the commonmark preset enables it.
The issue was reported against the published markdown-it@15.0.2 package on Node.js 20 and reproduced on the current source with Node.js 24.16.0.
References
- github.com/advisories/GHSA-vfgh-jcmw-g37q
- github.com/markdown-it/markdown-it/commit/928bc8c11ded60181c0e7fc5aa954eec582e8e79
- github.com/markdown-it/markdown-it/commit/d99f48839d37af6fd8a2617516c43dab90755503
- github.com/markdown-it/markdown-it/releases/tag/14.3.3
- github.com/markdown-it/markdown-it/releases/tag/15.0.3
- github.com/markdown-it/markdown-it/security/advisories/GHSA-vfgh-jcmw-g37q
- nvd.nist.gov/vuln/detail/CVE-2026-111766
Code Behaviors & Features
Detect and mitigate CVE-2026-111766 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →