Vulnerability · Published Jun 22, 2026 · Assigned by GitHub_M

CVE-2026-44311Fabric.js: Improper escaping in fabric.Gradient colorStops leads to XSS in SVG serialization

Medium 5.4

In plain English

A medium-severity cross-site scripting in fabric.js from fabricjs. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.3% (higher than 20% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)5.4Medium
Exploit odds (30 days)0.3%top 80.4% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

Official description

Fabric.js is a Javascript HTML5 canvas library. Prior to 7.4.0, a potential Cross-Site Scripting (XSS) vulnerability exists in Fabric.js due to improper escaping of user-controlled input during SVG serialization via the toSVG() method. Specifically, the color field within the colorStops array of a fabric.Gradient object is not properly escaped when converted into SVG <stop> elements. If an application renders the generated SVG string into the DOM, this may allow an attacker to inject arbitrary HTML/SVG and execute JavaScript in the victim's browser. This vulnerability is fixed in 7.4.0.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
npmfabric7.4.0GHSA-w22m-hvvm-xmwx

Affected products (as reported)

VendorProductVersions
fabricjs fabric.js < 7.4.0

Weakness: CWE-79, CWE-116 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N

References