Skip to content
OpenAdvisories
Medium · 6.1 CVE-2026-59923 EUVD-2026-42331GHSA-8c25-4j27-2rv3PYSEC-2026-2211

Mistune: XSS via percent-encoded javascript URI bypass in safe_url()

Published Jul 8, 2026 · Updated Jul 8, 2026 · Assigned by GitHub_M

Description

Mistune is a Python Markdown parser with renderers and plugins. Prior to 3.3.0, HTMLRenderer.safe_url() does not block percent-encoded javascript URIs, allowing attacker-supplied Markdown links or images to bypass URL protections and execute script in rendered HTML. This issue is fixed in version 3.3.0.

Affected products

VendorProductAffectedFixed
lepture mistune < 3.3.0 —

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 mistune No fix yet —
Debian 13 mistune No fix yet —
Debian 12 mistune No fix yet —
ReleasePackageFixed inAdvisory
Ubuntu 26.10 mistune No fix yet —
Ubuntu 26.04 LTS mistune No fix yet —
Ubuntu 25.10 mistune No fix yet —
Ubuntu 24.04 LTS mistune No fix yet —
Ubuntu 22.04 LTS mistune No fix yet —
Show 3 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu 20.04 LTS mistune No fix yet —
Ubuntu 18.04 LTS mistune No fix yet —
Ubuntu 16.04 LTS mistune No fix yet —
ReleasePackageFixed inAdvisory
SLES for SAP 16.0 python-mistune 3.1.3-160000.5.1 SUSE-SU-2026:22655-1
SLES 16.0 python-mistune 3.1.3-160000.5.1 SUSE-SU-2026:22655-1
ReleasePackageFixed inAdvisory
openSUSE Leap 16.0 python-mistune 3.1.3-160000.5.1 openSUSE-SU-2026:21339-1

Affected packages

EcosystemPackageAffectedFixedRecord
PyPI mistune < 3.3.0 3.3.0 GHSA-8c25-4j27-2rv3

Advisories 2

References