Track vulnerabilities like this one. Sign up free to get alerted when software you use is affected.
5.5

CVE-2025-69534: Python-Markdown 3.8 can crash when handling bad input

CVE-2025-69534 · published 8 months ago
Summary

Versions of Python-Markdown 3.8 used in Python 3.9 and 3.11 can stop working if they receive specially crafted Markdown text. This can cause web sites or documentation tools that render user‑provided Markdown to become unavailable. Upgrade to Python-Markdown 3.8.1 or later to stop the crash.

What to do
  • Update manfred stienstra markdown to version 3.8.1.
  • Update bellsoft python3 to version 3.11.13-r4.
  • Update debian rootio-python3.9 to version 3.9.2-1+deb11u5.root.io.10.
  • Update debian rootio-python3.11 to version 3.11.2-6+deb12u6.root.io.32.
  • Update manfred stienstra markdown to version 3.3.7+aikido.2.
  • Update rootio-markdown to version 3.3.7+root.io.2.
  • Update rootio-markdown to version 3.4.4+root.io.1.
  • Update debian rootio-python3.9 to version 3.9.2-1+deb11u7.root.io.13.
  • Update canonical python2.7 to version 2.7.12-1ubuntu0~16.04.18+esm21.
  • Update canonical python3.5 to version 3.5.2-2ubuntu0~16.04.13+esm24.
  • Update canonical python3.10 to version 3.10.12-1~22.04.16.
  • Update canonical python3.12 to version 3.12.3-1ubuntu0.15.
  • Update rootio-markdown to version 3.3.7+root.io.1.
  • Update debian rootio-python3.9 to version 3.9.2-1+deb11u7.root.io.16.
  • Update debian rootio-python3.9 to version 3.9.2-1+deb11u7.aikido.17.
  • Update debian rootio-python3.11 to version 3.11.2-6+deb12u6.root.io.25.
  • Update debian rootio-python3.11 to version 3.11.2-6+deb12u6.root.io.28.
  • Update debian rootio-python3.11 to version 3.11.2-6+deb12u6.root.io.31.
  • Update debian rootio-python3.11 to version 3.11.2-6+deb12u6.root.io.33.
  • Update debian rootio-python3.11 to version 3.11.2-6+deb12u7.root.io.34.
  • Update debian python3.11 to version 3.11.2-6+deb12u8.aikido.36.
  • Update debian rootio-python3.11 to version 3.11.2-6+deb12u8.aikido.36.
  • Update python3.11 to version 3.11.2-6+deb12u8.aikido.38.
  • Update python3-defaults to version 3.11.2-1.aikido.1.
  • Update rootio-python3.11 to version 3.11.2-6+deb12u8.aikido.38.
  • Update rootio-python3-defaults to version 3.11.2-1.aikido.1.
  • Update python3.9 to version 3.9.2-1+deb11u7.aikido.21.
  • Update python3-defaults to version 3.9.2-3.aikido.2.
  • Update rootio-python3.9 to version 3.9.2-1+deb11u7.aikido.21.
  • Update rootio-python3-defaults to version 3.9.2-3.aikido.2.
  • Update python3.9 to version 3.9.2-1+deb11u7.aikido.22.
  • Update rootio-python3.9 to version 3.9.2-1+deb11u7.aikido.22.
  • Update debian pypy3 to version 8.0.0+dfsg-1.
  • Update debian python3.11 to version 3.11.2-6+deb12u9.
  • Update debian python3.13 to version 3.13.4-1.
Affected software
Ecosystem VendorProductAffected versions
pip manfred stienstra markdown < 3.8.1
Fix: upgrade to 3.8.1
– python-markdown markdown 3.8
cpe:2.3:a:python-markdown:markdown:3.8:*:*:*:*:python:*:*
Alpaquita:23 bellsoft python3 >= 3.11.3-r0, < 3.11.13-r4
Fix: upgrade to 3.11.13-r4
Root:Debian:11 debian rootio-python3.9 < 3.9.2-1+deb11u5.root.io.10
< 3.9.2-1+deb11u7.root.io.13
< 3.9.2-1+deb11u7.root.io.16
< 3.9.2-1+deb11u7.aikido.17
Fix: upgrade to 3.9.2-1+deb11u5.root.io.10
Root:Debian:12 debian rootio-python3.11 < 3.11.2-6+deb12u6.root.io.32
< 3.11.2-6+deb12u6.root.io.25
< 3.11.2-6+deb12u6.root.io.28
< 3.11.2-6+deb12u6.root.io.31
< 3.11.2-6+deb12u6.root.io.33
< 3.11.2-6+deb12u7.root.io.34
< 3.11.2-6+deb12u8.aikido.36
Fix: upgrade to 3.11.2-6+deb12u6.root.io.32
PyPI manfred stienstra markdown <= 3.8
Root:PyPI manfred stienstra markdown < 3.3.7+aikido.2
Fix: upgrade to 3.3.7+aikido.2
Root:PyPI – rootio-markdown < 3.3.7+root.io.2
< 3.4.4+root.io.1
< 3.3.7+root.io.1
Fix: upgrade to 3.3.7+root.io.2
Ubuntu:Pro:16.04:LTS canonical python2.7 < 2.7.12-1ubuntu0~16.04.18+esm21
Fix: upgrade to 2.7.12-1ubuntu0~16.04.18+esm21
Ubuntu:Pro:16.04:LTS canonical python3.5 < 3.5.2-2ubuntu0~16.04.13+esm24
Fix: upgrade to 3.5.2-2ubuntu0~16.04.13+esm24
Ubuntu:22.04:LTS canonical python3.10 < 3.10.12-1~22.04.16
Fix: upgrade to 3.10.12-1~22.04.16
Ubuntu:24.04:LTS canonical python3.12 < 3.12.3-1ubuntu0.15
Fix: upgrade to 3.12.3-1ubuntu0.15
BellSoft Hardened Containers:23 bellsoft python3 >= 3.11.3-r0, < 3.11.13-r4
Fix: upgrade to 3.11.13-r4
Ubuntu:Pro:14.04:LTS canonical python2.7 All versions
Ubuntu:Pro:14.04:LTS canonical python3.4 All versions
Ubuntu:Pro:14.04:LTS canonical python3.5 All versions
Ubuntu:Pro:18.04:LTS canonical python2.7 All versions
Ubuntu:Pro:18.04:LTS canonical python3.6 All versions
Ubuntu:Pro:18.04:LTS canonical python3.7 All versions
Ubuntu:Pro:18.04:LTS canonical python3.8 All versions
Ubuntu:Pro:20.04:LTS canonical python3.8 All versions
Ubuntu:20.04:LTS canonical pypy3 All versions
Ubuntu:Pro:20.04:LTS canonical python2.7 All versions
Ubuntu:Pro:20.04:LTS canonical python3.9 All versions
Ubuntu:22.04:LTS canonical pypy3 All versions
Ubuntu:Pro:22.04:LTS canonical python2.7 All versions
Ubuntu:Pro:22.04:LTS canonical python3.11 All versions
Ubuntu:24.04:LTS canonical pypy3 All versions
Ubuntu:25.10 canonical pypy3 All versions
Ubuntu:25.10 canonical python3.13 All versions
Ubuntu:25.10 canonical python3.14 All versions
Ubuntu:26.04:LTS canonical pypy3 All versions
Ubuntu:26.04:LTS canonical python3.14 All versions
Root:Debian:12 debian python3.11 < 3.11.2-6+deb12u8.aikido.36
Fix: upgrade to 3.11.2-6+deb12u8.aikido.36
Root:Debian:12 – python3.11 < 3.11.2-6+deb12u8.aikido.38
Fix: upgrade to 3.11.2-6+deb12u8.aikido.38
Root:Debian:12 – python3-defaults < 3.11.2-1.aikido.1
Fix: upgrade to 3.11.2-1.aikido.1
Root:Debian:12 – rootio-python3.11 < 3.11.2-6+deb12u8.aikido.38
Fix: upgrade to 3.11.2-6+deb12u8.aikido.38
Root:Debian:12 – rootio-python3-defaults < 3.11.2-1.aikido.1
Fix: upgrade to 3.11.2-1.aikido.1
Root:Debian:11 – python3.9 < 3.9.2-1+deb11u7.aikido.21
< 3.9.2-1+deb11u7.aikido.22
Fix: upgrade to 3.9.2-1+deb11u7.aikido.21
Root:Debian:11 – python3-defaults < 3.9.2-3.aikido.2
Fix: upgrade to 3.9.2-3.aikido.2
Root:Debian:11 – rootio-python3.9 < 3.9.2-1+deb11u7.aikido.21
< 3.9.2-1+deb11u7.aikido.22
Fix: upgrade to 3.9.2-1+deb11u7.aikido.21
Root:Debian:11 – rootio-python3-defaults < 3.9.2-3.aikido.2
Fix: upgrade to 3.9.2-3.aikido.2
Debian:12 debian pypy3 All versions
Debian:14 debian pypy3 < 8.0.0+dfsg-1
Fix: upgrade to 8.0.0+dfsg-1
Debian:12 debian python3.11 < 3.11.2-6+deb12u9
Fix: upgrade to 3.11.2-6+deb12u9
Debian:13 debian python3.13 < 3.13.4-1
Fix: upgrade to 3.13.4-1
Original advisory text
CVE-2025-69534 in python3.9 - Patched by Root
Python-Markdown version 3.8 contain a vulnerability where malformed HTML-like sequences can cause html.parser.HTMLParser to raise an unhandled AssertionError during Markdown parsing. Because Python-Markdown does not catch this exception, any application that processes attacker-controlled Markdown may crash. This enables remote, unauthenticated Denial of Service in web applications, documentation systems, CI/CD pipelines, and any service that renders untrusted Markdown. The issue was acknowledged by the vendor and fixed in version 3.8.1. This issue causes a remote Denial of Service in any application parsing untrusted Markdown, and can lead to Information Disclosure through uncaught exceptions.
References
Fix within
Internet-facing 14 days
Internal 60 days
  • Not known to be exploited
  • Can be exploited automatically
  • Gives an attacker partial control
Severity
5.5 Medium
Exploitation
<1% chance of attack within 30 days
Type
CWE-248Uncaught Exception
CWE-400Uncontrolled Resource Consumption
CWE-617Reachable Assertion
Timeline
Published5 Mar 2026
Updated4 Nov 2026
First seen6 Mar 2026
Track software like this
Free during beta