Read the docs
TI-2026-50098 Aliases CVE-2026-71488GHSA-2q4p-g7hv-5rgv

league/commonmark: Quadratic-time denial of service when parsing crafted Markdown

Priority MEDIUM 40CWE-1050Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
Low
Impact type
Denial of service
Confidentiality · integrity · availability
None · None · High
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-407.

Summary

league/commonmark is a PHP library for parsing and rendering CommonMark Markdown. From 0.6.0 until 2.9.0, specially crafted Markdown lines can cause the parser to have quadratic time complexity when converting, because several parsing paths repeatedly rescan growing portions of a line to translate between character positions and byte positions, and the Autolink extension can also copy and validate the remaining line at every URL-like prefix, allowing an attacker who can submit Markdown for conversion to consume disproportionate CPU time with a comparatively small request. This issue is fixed in 2.9.0.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.0063 50th percentileScored 2026-11-07
Fix Fixed commonmark (thephpleague): 2.9.0league/commonmark (Packagist): 2.9.0

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
Yes
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
thephpleaguecommonmark0.6.0 to before 2.9.02.9.0Patch availableCNA
—league/commonmark (Packagist)0.6.0 to before 2.9.02.9.0Patch availableGHSA-2q4p-g7hv-5rgv
  • commonmark Vendorthephpleague Affected 0.6.0 to before 2.9.0 Fixed in 2.9.0 Patch available CNA
  • league/commonmark (Packagist) Vendor— Affected 0.6.0 to before 2.9.0 Fixed in 2.9.0 Patch available GHSA-2q4p-g7hv-5rgv

CPE names Threatist (inferred) · 1

Inferred from how NVD named this product before; not given by a source.

CPEVersionsRoleVendor
cpe:2.3:a:thephpleague:commonmark:*:*:*:*:*:*:*:*——thephpleague
  • cpe:2.3:a:thephpleague:commonmark:*:*:*:*:*:*:*:* Versions — — ·thephpleague

Remediation

  • Fix · CNA commonmark (thephpleague) Fixed in 2.9.0
  • Fix · GHSA-2q4p-g7hv-5rgv league/commonmark (Packagist) Fixed in 2.9.0 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-71488
  2. 2026-10-03 Alias added: GHSA-2q4p-g7hv-5rgv
  3. 2026-10-28 EPSS moved to the 50th–90th percentile

References

  • TI-2026-69535 league/commonmark Quadratic DoS via TableStartParser CVSS 4.0HIGH 8.7
  • TI-2026-50093 league/commonmark: AttributesExtension href/src unsafe-link filter bypass via embedded control bytes CVSS 3.1MEDIUM 6.1
  • TI-2026-69534 Cross-site scripting in League CommonMark bypasses DisallowedRawHtml CVSS 4.0MEDIUM 5.3
  • TI-2026-65445 Flysystem: WhitespacePathNormalizer's control-character (CorruptedPathDetected) check is… CVSS 3.1LOW 3.5
  • TI-2021-12376 Time-of-check Time-of-use (TOCTOU) Race Condition in league/flysystem CVSS 3.1CRITICAL 9.8
  • TI-2026-59143 commonmark 1.5.0 before 2.8.4 Denial of Service via Footnote CVSS 4.0HIGH 8.7
See all 20 →

Sources