CVE-2026-59924
published 2026-07-08CVE-2026-59924: Mistune is a Python Markdown parser with renderers and plugins. Prior to 3.3.0, Include.parse() joins and normalizes user-supplied include paths without…
PriorityP336medium5.9CVSS 3.1
AVNACHPRNUINSUCHINAN
EPSS
0.46%
40.0th percentile
Mistune is a Python Markdown parser with renderers and plugins. Prior to 3.3.0, Include.parse() joins and normalizes user-supplied include paths without verifying that the result remains within the intended markdown directory, allowing crafted include paths to access files outside that directory when markdown files are processed using md.read(). This issue is fixed in version 3.3.0.
Affected
26 ranges· showing 25
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| lepture | mistune | < 3.3.0 | 3.3.0 |
| mistune_project | mistune | < 3.3.0 | 3.3.0 |
| mistune_project | mistune | >= 0 < 3.3.0 | 3.3.0 |
| mta | mta-solution-server-rhel9 | — | — |
| rhoai | odh-pipeline-runtime-datascience-cpu-py312-rhel9 | — | — |
| rhoai | odh-pipeline-runtime-minimal-cpu-py312-rhel9 | — | — |
| rhoai | odh-pipeline-runtime-pytorch-cuda-py312-rhel9 | — | — |
| rhoai | odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9 | — | — |
| rhoai | odh-pipeline-runtime-pytorch-rocm-py312-rhel9 | — | — |
| rhoai | odh-pipeline-runtime-tensorflow-cuda-py312-rhel9 | — | — |
| rhoai | odh-pipeline-runtime-tensorflow-rocm-py312-rhel9 | — | — |
| rhoai | odh-th06-cpu-torch210-py312-rhel9 | — | — |
| rhoai | odh-th06-cpu-torch291-py312-rhel9 | — | — |
| rhoai | odh-th06-cuda130-torch210-py312-rhel9 | — | — |
| rhoai | odh-th06-cuda130-torch291-py312-rhel9 | — | — |
| rhoai | odh-th06-rocm64-torch291-py312-rhel9 | — | — |
| rhoai | odh-workbench-jupyter-datascience-cpu-py312-rhel9 | — | — |
| rhoai | odh-workbench-jupyter-minimal-cpu-py312-rhel9 | — | — |
| rhoai | odh-workbench-jupyter-minimal-cuda-py312-rhel9 | — | — |
| rhoai | odh-workbench-jupyter-minimal-rocm-py312-rhel9 | — | — |
| rhoai | odh-workbench-jupyter-pytorch-cuda-py312-rhel9 | — | — |
| rhoai | odh-workbench-jupyter-pytorch-llmcompressor-cuda-py312-rhel9 | — | — |
| rhoai | odh-workbench-jupyter-pytorch-rocm-py312-rhel9 | — | — |
| rhoai | odh-workbench-jupyter-tensorflow-cuda-py312-rhel9 | — | — |
| rhoai | odh-workbench-jupyter-tensorflow-rocm-py312-rhel9 | — | — |
CVSS provenance
nvdv3.15.9MEDIUMCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
vendor_redhat5.9MEDIUM
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
GHSA
Mistune: Arbitrary File Read via Include directive path traversal
ghsa·2026-07-20
CVE-2026-59924 [MEDIUM] CWE-22 Mistune: Arbitrary File Read via Include directive path traversal
Mistune: Arbitrary File Read via Include directive path traversal
### Summary
A path traversal issue exists in mistune's `Include` directive when markdown files are processed using `md.read()`. A crafted include path can cause files outside the intended markdown directory to be accessed.
### Details
The issue occurs in the `Include.parse()` method where user-supplied paths are joined and normalized without verifying that the resulting path remains within an expected directory.
```python
relpath = self.parse_title(m)
dest = os.path.join(os.path.dirname(source_file), relpath)
dest = os.path.normpath(dest)
```
Because the final path is not restricted to a trusted base directory, path traversal sequences such as `../` may reference files outside the intended location.
### Proof of Conce
Red Hat
mistune: Mistune: Information disclosure via crafted include paths
vendor_redhat·2026-07-08·CVSS 5.9
CVE-2026-59924 [MEDIUM] CWE-22 mistune: Mistune: Information disclosure via crafted include paths
mistune: Mistune: Information disclosure via crafted include paths
Mistune is a Python Markdown parser with renderers and plugins. Prior to 3.3.0, Include.parse() joins and normalizes user-supplied include paths without verifying that the result remains within the intended markdown directory, allowing crafted include paths to access files outside that directory when markdown files are processed using md.read(). This issue is fixed in version 3.3.0.
A flaw was found in Mistune, a Python Markdown parser. The `Include.parse()` function does not properly verify user-supplied include paths, allowing an attacker to craft paths that can access files outside the intended markdown directory. This can lead to information disclosure when markdown files are processed.
Statement: This Moderate impac
No detection rules found.
No public exploits indexed.
Bugzilla
CVE-2026-59924 python-mistune: Mistune: Information disclosure via crafted include paths [fedora-all]
bugzilla·2026-07-28·CVSS 5.9
CVE-2026-59924 [MEDIUM] CVE-2026-59924 python-mistune: Mistune: Information disclosure via crafted include paths [fedora-all]
CVE-2026-59924 python-mistune: Mistune: Information disclosure via crafted include paths [fedora-all]
Disclaimer: Community trackers are created by Red Hat Product Security team on a best effort basis. Package maintainers are required to ascertain if the flaw indeed affects their package, before starting the update process.
Mistune is a Python Markdown parser with renderers and plugins. Prior to 3.3.0, Include.parse() joins and normalizes user-supplied include paths without verifying that the result remains within the intended markdown directory, allowing crafted include paths to access files outside that directory when markdown files are processed using md.read(). This issue is fixed in version 3.3.0.
Bugzilla
CVE-2026-59924 python-mistune: Mistune: Information disclosure via crafted include paths [epel-all]
bugzilla·2026-07-28·CVSS 5.9
CVE-2026-59924 [MEDIUM] CVE-2026-59924 python-mistune: Mistune: Information disclosure via crafted include paths [epel-all]
CVE-2026-59924 python-mistune: Mistune: Information disclosure via crafted include paths [epel-all]
Disclaimer: Community trackers are created by Red Hat Product Security team on a best effort basis. Package maintainers are required to ascertain if the flaw indeed affects their package, before starting the update process.
Mistune is a Python Markdown parser with renderers and plugins. Prior to 3.3.0, Include.parse() joins and normalizes user-supplied include paths without verifying that the result remains within the intended markdown directory, allowing crafted include paths to access files outside that directory when markdown files are processed using md.read(). This issue is fixed in version 3.3.0.
Bugzilla
CVE-2026-59924 python-mistune08: Mistune: Information disclosure via crafted include paths [epel-all]
bugzilla·2026-07-28·CVSS 5.9
CVE-2026-59924 [MEDIUM] CVE-2026-59924 python-mistune08: Mistune: Information disclosure via crafted include paths [epel-all]
CVE-2026-59924 python-mistune08: Mistune: Information disclosure via crafted include paths [epel-all]
Disclaimer: Community trackers are created by Red Hat Product Security team on a best effort basis. Package maintainers are required to ascertain if the flaw indeed affects their package, before starting the update process.
Mistune is a Python Markdown parser with renderers and plugins. Prior to 3.3.0, Include.parse() joins and normalizes user-supplied include paths without verifying that the result remains within the intended markdown directory, allowing crafted include paths to access files outside that directory when markdown files are processed using md.read(). This issue is fixed in version 3.3.0.
Bugzilla
CVE-2026-59924 mistune: Mistune: Information disclosure via crafted include paths
bugzilla·2026-07-08·CVSS 5.9
CVE-2026-59924 [MEDIUM] CVE-2026-59924 mistune: Mistune: Information disclosure via crafted include paths
CVE-2026-59924 mistune: Mistune: Information disclosure via crafted include paths
Mistune is a Python Markdown parser with renderers and plugins. Prior to 3.3.0, Include.parse() joins and normalizes user-supplied include paths without verifying that the result remains within the intended markdown directory, allowing crafted include paths to access files outside that directory when markdown files are processed using md.read(). This issue is fixed in version 3.3.0.
2026-07-08
Published