Skip to content
OpenAdvisories
Medium · 6.1 CVE-2026-71478 EUVD-2026-54261GHSA-29pj-957v-52mc

league/commonmark: AttributesExtension href/src unsafe-link filter bypass via embedded control bytes

Published Aug 6, 2026 · Updated Aug 7, 2026 · Assigned by GitHub_M

Description

league/commonmark is a PHP library for parsing and rendering CommonMark Markdown. From 1.5.0 until 2.9.0, the AttributesExtension's href and src unsafe-link filter can be bypassed by embedding control bytes, such as a tab, carriage return, line feed, or leading C0 control character, in a javascript: URL that browsers discard before parsing the scheme, causing the browser to still execute the script even when the unsafe-link filter is enabled. This issue is fixed in 2.9.0.

Affected products

VendorProductAffectedFixed
thephpleague commonmark >= 1.5.0, <= 2.8.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 php-league-commonmark 2.9.0-1 —
Debian 13 php-league-commonmark No fix yet —
Debian 12 php-league-commonmark No fix yet —
ReleasePackageFixed inAdvisory
Ubuntu 26.10 markdown +1 No fix yet —
Ubuntu 26.04 LTS markdown +1 No fix yet —
Ubuntu 24.04 LTS markdown +1 No fix yet —
Ubuntu 22.04 LTS markdown +1 No fix yet —
Ubuntu 20.04 LTS markdown No fix yet —
Show 2 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu 18.04 LTS markdown No fix yet —
Ubuntu 16.04 LTS markdown No fix yet —

Affected packages

EcosystemPackageAffectedFixedRecord
Packagist league/commonmark >= 1.5.0, < 2.9.0 2.9.0 GHSA-29pj-957v-52mc

References