Skip to content
CVE PROGRAM SOURCE RECORD8.7 High

CVE-2026-86434

commonmark 2.0.0 through 2.8.3 Denial of Service via Slug Collision

Description

league/commonmark versions >= 2.0.0 and < 2.8.4 (patched in 2.9.0) contain a denial of service vulnerability in UniqueSlugNormalizer::normalize(), which restarts its numeric-suffix search from 1 on every slug collision, resulting in O(K^2) time complexity for K headings that collapse to the same base slug. The vulnerable path is reached when HeadingPermalinkExtension, FootnoteExtension, or TableOfContentsExtension is registered. An unauthenticated attacker can force many headings onto a single base slug (e.g., via empty ATX headings, identical heading text, or punctuation-only headings) in a small Markdown document, consuming excessive CPU and denying service.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

thephpleague commonmark

Default version status: unaffected

  • 2.0.0 to < 2.8.4affected
  • 2.8.4unaffected
pkg:composer/league/commonmark

References