Fabric.js Affected by Stored XSS via SVG Export
Description
Fabric.js is a Javascript HTML5 canvas library. Prior to version 7.2.0, Fabric.js applies escapeXml() to text content during SVG export (src/shapes/Text/TextSVGExportMixin.ts:186) but fails to apply it to other user-controlled string values that are interpolated into SVG attribute markup. When attacker-controlled JSON is loaded via loadFromJSON() and later exported via toSVG(), the unescaped values break out of XML attributes and inject arbitrary SVG elements including event handlers. Any application that accepts user-supplied JSON (via loadFromJSON(), collaborative sharing, import features, CMS plugins) and renders the toSVG() output in a browser context (SVG preview, export download rendered in-page, email template, embed) is vulnerable to stored XSS. An attacker can execute arbitrary JavaScript in the victim's browser session. Version 7.2.0 contains a fix.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
Affected packages
Versions sourced from the GitHub Security Advisory.
| Package | Affected versions | Patched versions |
|---|---|---|
fabricnpm | < 7.2.0 | 7.2.0 |
Affected products
2Patches
Vulnerability mechanics
References
5- github.com/advisories/GHSA-hfvx-25r5-qc3wghsaADVISORY
- nvd.nist.gov/vuln/detail/CVE-2026-27013ghsaADVISORY
- github.com/fabricjs/fabric.js/commit/7e1a122defd8feefe4eb7eaf0c180d7b0aeb6feeghsax_refsource_MISCWEB
- github.com/fabricjs/fabric.js/releases/tag/v720ghsax_refsource_MISCWEB
- github.com/fabricjs/fabric.js/security/advisories/GHSA-hfvx-25r5-qc3wghsax_refsource_CONFIRMWEB
News mentions
0No linked articles in our index yet.