Fabric.js: Improper escaping in fabric.Gradient colorStops leads to XSS in SVG serialization
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| fabricjs | fabric.js | affected |
|
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Fabricjs | Fabric.js |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-w22m-hvvm-xmwx | Fabric.js improper escaping in fabric.Gradient colorStops leads to XSS in SVG serialization |
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.271% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Fabricjs
Fabricjs fabric.js |
|
| Vendors & Products |
Fabricjs
Fabricjs fabric.js |
| Type | Values Removed | Values Added |
|---|---|---|
| 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. | |
| Title | Fabric.js: Improper escaping in fabric.Gradient colorStops leads to XSS in SVG serialization | |
| Weaknesses | CWE-116 CWE-79 |
|
| References |
| |
| Metrics |
cvssV3_1
|