Linkify 4.3.1 - Prototype Pollution & HTML Attribute Injection (XSS)
Discovered by
Offensive Team, Fluid Attacks
Summary
Full name
Linkify 4.3.1 - Prototype Pollution & HTML Attribute Injection (XSS)
Code name
State
Public
Release date
25 jul 2025
Affected product
Linkify
Affected version(s)
4.3.1
Fixed version(s)
4.3.2
Vulnerability name
Prototype Pollution
Vulnerability type
Remotely exploitable
Yes
CVSS v4.0 vector string
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:H/VA:L/SC:N/SI:N/SA:N
CVSS v4.0 base score
8.8
Exploit available
Yes
CVE ID(s)
Description
Prototype Pollution in internal assign() helper in Linkify.js version 4.3.1 allows remote attackers to execute arbitrary JavaScript (Stored or Reflected XSS) via injection of event handlers through unfiltered proto property.
Vulnerability
Linkify.js is JavaScript library and ecosystem for automatically detecting links in text and converting them to HTML <a> elements.
The Linkify.js version 4.3.1 is vulnerable to Prototype Pollution via the internal assign() helper, which fails to filter __proto__.
An attacker can inject event handlers into every generated link, leading to Stored or Reflected XSS.
Insecure Merge
Prototype Pollution
By passing options.attributes.__proto__
, the attacker writes to the new object’s prototype:
Attribute Injection & XSS
Later, all enumerable keys (including inherited ones) are set on <a>
:
PoC
Exploit:
Our security policy
We have reserved the ID CVE-2025-8101 to refer to this issue from now on.
System Information
Linkify.js
Version 4.3.1
Operative System: Any
References
Github Repository: https://github.com/nfrasser/linkifyjs
Mitigation
Linkify version 4.3.2 has patched this vulnerability.
Credits
The vulnerability was discovered by Camilo Vera from Fluid Attacks' Offensive Team.
Timeline
Vulnerability discovered
15 jul 2025
Vendor contacted
23 jul 2025
Vendor replied
24 jul 2025
Follow-up with vendor
25 jul 2025
Vendor confirmed
25 jul 2025
Vulnerability patched
25 jul 2025
Public disclosure
25 jul 2025