Investigate in your agent.

Turn this advisory into a focused investigation. Ask your agent to check your project’s versions, explain the evidence, and suggest a compatible fix.

Your agent needs remote MCP support and access to https://cve.new/mcp.

Read the setup guide

Skip to content
Check your stack
CVE-2019-25781high8.7

Python-Markdown 3.0 through 3.11.2 Denial of Service via Link Bracket Parsing

Impact

Python-Markdown versions 3.0 through 3.11.2 contain an algorithmic complexity vulnerability in inline link parsing, allowing attackers to exhaust CPU through unmatched brackets. Attackers can submit short Markdown containing repeated [ or ![ characters. This forces LinkInlineProcessor into quadratic scans, keeping workers busy for minutes.

Summarized by @cf/meta/llama-3.3-70b-instruct-fp8-fast. Verify details against the original sources.

Affected packages

This source has no supported package-version data for matching. You can read the advisory here, but this record alone cannot power a dependency check.

Affected products

Vendor version evidence. Product records are separate from automatic dependency matching.

Python-Markdown · VulnCheck

Markdown

1 range

Package identity

pkg:pypi/markdownExplore markdown →

Identity supplied by VulnCheck. Version matching requires compatible range evidence.

Compare with this publisher’s ranges. This does not inspect your installation.

affected

3.0 → through 3.11.2

custom versions

unaffected

unknown

Other versions: unaffected

Original source description

Python-Markdown 3.0 through 3.11.2 contains an algorithmic complexity vulnerability in inline link parsing that allows remote attackers to exhaust CPU through unmatched brackets. Attackers can submit short Markdown containing repeated [ or ![ characters, forcing LinkInlineProcessor.getText() and getLink() into quadratic scans that keep workers busy for minutes.

Inside the record

Evidence available

Package identity
Version evidence
Remediation guidance · not supplied
Weakness classification
Additional publishers · not supplied

Describes the evidence in this view, not whether the product is safe.

Original records

CVE-2019-25781

View the latest unmodified CVE JSON from the official source. It may be newer than this imported page.

cve.new JSON →

Underlying weaknesses

The source’s classification of what caused the vulnerability.

CWE-407 ↗

Inefficient Algorithmic Complexity

VulnCheck

Related →

Environment requirements

These conditions apply together as specified by the publisher. A matching product name alone does not establish exposure.

VulnCheck · platform conditions

Any condition may hold

Vulnerable product

cpe:2.3:a:python-markdown2_project:python-markdown2:*:*:*:*:*:*:*:*

From (inclusive): 3.0

Through (inclusive): 3.11.2

Original applicability statements
[
  {
    "nodes": [
      {
        "operator": "OR",
        "negate": false,
        "cpeMatch": [
          {
            "vulnerable": true,
            "criteria": "cpe:2.3:a:python-markdown2_project:python-markdown2:*:*:*:*:*:*:*:*",
            "versionStartIncluding": "3.0",
            "versionEndIncluding": "3.11.2"
          }
        ]
      }
    ]
  }
]
Contributing organizations · 1
VulnCheck

Assigning organization

2026-10-29

What changed

Follow changes
No substantive changes have been recorded here yet. History starts when cve.new observes a change after tracking is enabled; earlier edits are not reconstructed.

Large field values are marked as truncated previews. Original source snapshots remain retained.

References

5 sources