Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2026-86431— commonmark before 2.9.1 XSS via AttributesExtension form feed bypass

Quick assessment

Affected
thephpleague commonmark
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

的 版本中,版本号在 2.7.0 及以上且低于 2.9.1 的版本存在一个跨站脚本(XSS)漏洞,该漏洞位于 中。 在属性名称前添加单个 U+000C 换页符(Form Feed)字节(例如: 形式),可以绕过 中对 事件处理器的过滤机制。原因是 PHP 的 函数默认不会去除 U+000C 字符,导致该属性被原样写入输出 HTML,浏览器会将其解析为有效的事件处理程序。 此外,这种前缀还能绕过 检查,即使设置了 为 ,也能使 或 属性中的 URI 通过过滤。 利用条件:需要处理不可信的 Markdown 内容,且必

CVSS 7.2 · High

Possible ATT&CK Techniques 1 AI

T1190 · Exploit Public-Facing Application

Affected Version Matrix 2

VendorProduct Version RangeStatus
thephpleague commonmark 2.7.0< 2.9.1 affected
2.9.1 unaffected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-86431

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
commonmark before 2.9.1 XSS via AttributesExtension form feed bypass
Source: CVE Program / CVE List V5
Vulnerability Description
league/commonmark (thephpleague/commonmark) versions >= 2.7.0 and < 2.9.1 contain a cross-site scripting vulnerability in the AttributesExtension. Prefixing an attribute name with a single U+000C form feed byte (e.g. {\x0Conclick="alert(1)"}) bypasses the AttributesHelper::filterAttributes() 'on*' event-handler filter because PHP's trim() does not strip U+000C, causing the attribute to be written verbatim into the output where browsers parse it as a genuine event handler. The same prefix also defeats the allow_unsafe_links check, allowing javascript: URIs through href/src attributes even when allow_unsafe_links is false. Exploitation requires processing untrusted Markdown with the AttributesExtension enabled; the injected script executes when the rendered HTML is viewed. Fixed in 2.9.1.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N
Source: CVE Program / CVE List V5
Vulnerability Type
在Web页面生成时对输入的转义处理不恰当(跨站脚本)
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
thephpleague commonmark 2.7.0 ~ 2.9.1 -

II. Public POCs for CVE-2026-86431

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-86431

登录查看更多情报信息。

Patches & Fixes for CVE-2026-86431 (1)

Vendor Advisories for CVE-2026-86431 (2)

Same Patch Batch · thephpleague · 2026-09-07 · 8 CVEs total

CVE-2026-86430 7.5 HIGH league/commonmark before 2.9.1 Denial of Service via parsing
CVE-2026-86429 7.5 HIGH commonmark before 2.9.1 Denial of Service via SmartPunct and Attributes
CVE-2026-86435 7.5 HIGH commonmark 1.5.0 before 2.8.4 Denial of Service via Footnote
CVE-2026-86434 7.5 HIGH commonmark 2.0.0 through 2.8.3 Denial of Service via Slug Collision
CVE-2026-86433 7.5 HIGH commonmark 1.5.0 before 2.8.4 Denial of Service via Attributes
CVE-2026-86428 7.5 HIGH commonmark 1.5.0 before 2.10.0 Denial of Service via Attributes
CVE-2026-86432 5.3 MEDIUM commonmark 2.0.0 before 2.8.4 Denial of Service via XML

IV. Related Vulnerabilities

V. Comments for CVE-2026-86431

No comments yet


Leave a comment