CVE-2026-111766: markdown-it: Quadratic-time denial of service in inline HTML parsing with html enabled

Published Oct 19, 2026
·
Updated

markdown-it is a Markdown parser. Prior to 14.3.3 and 15.0.3, when the html option or commonmark preset is enabled and the constructs occur inside a paragraph, attacker-controlled Markdown containing repeated unterminated inline HTML comments, processing instructions, declarations, or CDATA sections reaches src/rulesinline/htmlinline.ts. Its HTMLTAGRE match searches the remaining suffix for the appropriate terminator; when no terminator is present, parsing advances to the next opener and repeats the match over overlapping input, causing quadratic processing and denial of service through event-loop blocking or an unresponsive browser main thread. HTML blocks and the default HTML-disabled configuration are not affected by these payloads. This issue is fixed in versions 14.3.3 and 15.0.3.

Affected Software

1 affected component
npm/markdown-it<14.3.3, <15.0.3

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade markdown-it to a version that resolves this vulnerability.

    Fixed in 14.3.3
  2. Upgrade

    Upgrade markdown-it to a version that resolves this vulnerability.

    Fixed in 15.0.3

Event History

Oct 19, 2026
CVE Published
via MITRE·07:47 PM
Data Sourced
via MITRE·07:47 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·08:17 PM
DescriptionSeverityWeakness

Frequently Asked Questions

1

Which deployments are exposed to this denial-of-service condition?

Deployments using markdown-it before 14.3.3 or 15.0.3 are exposed only when the html option or the commonmark preset is enabled and attacker-controlled Markdown can be parsed inside a paragraph. The default configuration with HTML disabled is not affected by these payloads, and HTML blocks are not affected.

2

What input is required to trigger the issue?

An attacker needs to supply Markdown containing repeated unterminated inline HTML comments, processing instructions, declarations, or CDATA sections within a paragraph. Missing terminators cause repeated searches across overlapping remaining input, resulting in quadratic processing.

3

What is the practical impact of successful exploitation?

Processing the crafted Markdown can consume enough time to block the event loop or make a browser main thread unresponsive. The provided severity vector indicates availability impact only, with no confidentiality or integrity impact.

4

What should be done if an immediate upgrade is not possible?

Disable the html option and avoid the commonmark preset where feasible, since the default HTML-disabled configuration is not affected. Also prevent untrusted Markdown from containing the affected unterminated inline HTML constructs in paragraphs.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203