CVE-2026-59924: lepture Mistune path traversal in Include directive

CVE-2026-59924 · Severity: medium · CVSS 5.9 · Published 2026-07-08

Mistune, a popular Python library for parsing Markdown, contains a vulnerability in its 'Include' directive. If an application uses this library to process Markdown files from untrusted sources, an attacker could potentially read sensitive files from the server's local storage. This could lead to the exposure of configuration files, credentials, or other private data.

Technologies: mistune (PyPI). Vendors: PyPI.

Quick answers

Is CVE-2026-59924 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-59924 being exploited in the wild.
How severe is CVE-2026-59924?
Medium severity, with a CVSS score of 5.9, published 8 July 2026.
Which products and versions are affected?
mistune (PyPI) < 3.3.0, ECOSYSTEM:introduced=0,fixed=3.3.0.
Is there a fix for CVE-2026-59924?
Yes. mistune (PyPI): upgrade to 3.3.0 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-59924 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-59924?
Check whether you run mistune (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • mistune (PyPI): upgrade to 3.3.0 or later
    pip install "mistune>=3.3.0"

Technical details

A path traversal vulnerability exists in the `Include.parse()` method of the Mistune library. The root cause is the lack of validation when joining and normalizing user-supplied paths in the `Include` directive, allowing the use of `../` sequences to escape the intended directory. An attacker can exploit this by providing a crafted Markdown file that includes local system files. This vulnerability is reachable if the `RSTDirective` with `Include` is enabled and the application processes untrusted Markdown via `md.read()`. The issue is fixed in version 3.3.0.

Affected products

  • lepture mistune < 3.3.0

Identifiers

  • CVE-2026-59924
  • GHSA-r4rv-85jg-w4mf
  • PYSEC-2026-2212

Timeline

  • 2026-06-21: disclosed: Initial disclosure by reporter 0x5t4l1n
  • 2026-07-08: advisory: NVD publication date
  • 2026-07-20: advisory: GitHub Advisory Database publication date
  • 2026-07-20: patched: Version 3.3.0 released

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.