Skip to content
OpenAdvisories
Medium · 4.3 CVE-2026-46338 EUVD-2026-45003GHSA-62q4-447f-wv8hPYSEC-2026-2999

PyMdown Extensions: Regression in pymdownx.snippets reintroduces sibling-prefix path traversal bypass despite restrict_base_path

Published Jul 16, 2026 · Updated Jul 17, 2026 · Assigned by GitHub_M

Description

PyMdown Extensions is a set of extensions for the Python-Markdown markdown project. From 10.0.1 until 10.21.3, pymdownx.snippets uses a string-prefix containment check in SnippetPreprocessor.get_snippet_path() in pymdownx/snippets.py when `restrict_base_path: True`, allowing markdown snippet directives to read files from sibling paths that share the same base_path prefix, such as docs and docs_internal. This is a regression of CVE-2023-32309. This issue is fixed in version 10.21.3.

Affected products

VendorProductAffectedFixed
facelessuser pymdown-extensions >= 10.0.1, < 10.21.3 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 pymdown-extensions 11.0.1-1 —
Debian 13 pymdown-extensions No fix yet —
Debian 12 pymdown-extensions No fix yet —
ReleasePackageFixed inAdvisory
Ubuntu 26.10 pymdown-extensions No fix yet —
Ubuntu 26.04 LTS pymdown-extensions No fix yet —
Ubuntu 24.04 LTS pymdown-extensions No fix yet —

Wolfi

ReleasePackageFixed inAdvisory
Wolfi rolling open-webui 0.9.6-r1 —

Affected packages

EcosystemPackageAffectedFixedRecord
PyPI pymdown-extensions >= 10.0.1, < 10.21.3 10.21.3 GHSA-62q4-447f-wv8h

References