Description
markdown-it is a Markdown parser. From versions 14.1.0 to before 14.3.3, and 15.0.0 to before 15.0.3, a link reference definition whose label or title is never closed is O(n²) with default options. Continuation lines are pulled lazily with str += lineContent in src/rules_block/reference.ts, and the subsequent charCodeAt and slice calls flatten the V8 cons-string, copying everything collected so far; this runs before the rule decides the definition is invalid. No options are required to trigger it. This issue has been patched in versions 14.3.3 and 15.0.3.
Published: 2026-10-20
Score: 7.5 High
EPSS: < 1% Very Low
KEV: No
Impact: Denial of Service via resource exhaustion
Action: Apply Patch
AI Analysis

Impact

The vulnerability arises when markdown-it parses a link reference definition whose label or title is never closed. The parser’s default algorithm concatenates lines using lazy pull‑in and then performs charCodeAt and slice operations that trigger V8’s cons‑string flattening, causing a quadratic‑time growth in CPU and memory usage. This can lead to a denial of service by exhausting server resources. The weakness is classified as CWE-1046, CWE-400 and CWE-407.

Affected Systems

markdown‑it, the JavaScript Markdown parser, is known to be vulnerable in versions 14.1.0 through 14.3.2 and 15.0.0 through 15.0.2 when using the default options. The issue has been addressed in v14.3.3 and v15.0.3, so any application that imports these earlier releases is at risk, especially web servers or services that render user‑supplied markdown.

Risk and Exploitability

With a CVSS score of 7.5 the vulnerability is considered high severity. The EPSS score is 0.00455, indicating a very low exploit probability, and the flaw is not in the CISA KEV catalog. Attack conditions are minimal: an attacker can embed a crafted, unclosed link reference definition in markdown sent to a parsing endpoint, triggering excessive CPU consumption. The exploit does not require privileged access or authentication, and no network or local privilege escalation is possible beyond the service’s process limits.

Generated by OpenCVE AI on October 22, 2026 at 20:23 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade markdown‑it to version 14.3.3 or later, or 15.0.3 or later if using a 15.x release.
  • If an upgrade cannot be performed immediately, reject or severely limit the size of markdown documents that are parsed, especially those that could contain large or complex link reference definitions.
  • Deploy server‑side monitoring to detect sudden spikes in CPU or memory usage by the markdown parser and trigger alerts or automated throttling.

Generated by OpenCVE AI on October 22, 2026 at 20:23 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-gfr2-rv44-r23c markdown-it: Quadratic-time rendering of a single multi-line link reference definition with default options (regression since 14.0)
History

Wed, 28 Oct 2026 17:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Thu, 22 Oct 2026 14:00:00 +0000

Type Values Removed Values Added
First Time appeared Markdown-it
Markdown-it markdown-it
Vendors & Products Markdown-it
Markdown-it markdown-it

Wed, 21 Oct 2026 00:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-1046
References
Metrics threat_severity

None

threat_severity

Important


Tue, 20 Oct 2026 20:45:00 +0000

Type Values Removed Values Added
Description markdown-it is a Markdown parser. From versions 14.1.0 to before 14.3.3, and 15.0.0 to before 15.0.3, a link reference definition whose label or title is never closed is O(n²) with default options. Continuation lines are pulled lazily with str += lineContent in src/rules_block/reference.ts, and the subsequent charCodeAt and slice calls flatten the V8 cons-string, copying everything collected so far; this runs before the rule decides the definition is invalid. No options are required to trigger it. This issue has been patched in versions 14.3.3 and 15.0.3.
Title markdown-it: Quadratic-time rendering of a single multi-line link reference definition with default options (regression since 14.0)
Weaknesses CWE-400
CWE-407
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'}


Subscriptions

Markdown-it Markdown-it
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-28T16:40:33.483Z

Reserved: 2026-10-16T17:52:09.081Z

Link: CVE-2026-111758

cve-icon Vulnrichment

Updated: 2026-10-28T16:40:26.580Z

cve-icon NVD

Status : Awaiting Analysis

Published: 2026-10-20T21:17:17.110

Modified: 2026-10-28T17:17:39.977

Link: CVE-2026-111758

cve-icon Redhat

Severity : Important

Publid Date: 2026-10-20T20:28:40Z

Links: CVE-2026-111758 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-22T20:30:12Z

Weaknesses
  • CWE-1046

    Creation of Immutable Text Using String Concatenation

  • CWE-400

    Uncontrolled Resource Consumption

  • CWE-407

    Inefficient Algorithmic Complexity