CVE-2026-94545
Satori-generated SVG has improper escaping
Satori is a library to convert HTML and CSS to SVG. Starting in version 0.0.27 and prior to version 0.33.5, Satori does not properly escape certain values before including them in generated SVG output. This can allow crafted values to be interpreted as SVG markup. The impact depends on how the generated SVG is consumed. Version 0.33.5 contains a patch. No complete workaround exists besides upgrading. Applications that cannot immediately upgrade should not render attacker-controlled content with Satori.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- Passive
What an attacker can affect
- Confidentiality
- None
- Integrity
- None
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
5.3
Satori-generated SVG has improper escaping
Satori is a library to convert HTML and CSS to SVG. Starting in version 0.0.27 and prior to version 0.33.5, Satori does not properly escape certain values before including them in generated SVG output. This can allow crafted values to be interpreted as SVG markup. The impact depends on how the generated SVG is consumed. Version 0.33.5 contains a patch. No complete workaround exists besides upgrading. Applications that cannot immediately upgrade should not render attacker-controlled content with Satori.
- Record
CVE-2026-94545- CVSS 4.0
- 5.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:N/VI:N/VA:N/SC:H/SI:H/SA:N - Weakness
- CWE-116
- Updated
- 2026-11-02
EUVDEUVD-2026-89994
5.3
Satori is a library to convert HTML and CSS to SVG. Starting in version 0.0.27 and prior to version 0.33.5, Satori does not properly escape certain values before including them in generated SVG output. This can allow crafted values to be interpreted as SVG markup. The impact depends on how the generated SVG is consumed. Version 0.33.5 contains a patch. No complete workaround exists besides upgrading. Applications that cannot immediately upgrade should not render attacker-controlled content with Satori.
- Record
EUVD-2026-89994- CVSS 4.0
- 5.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:N/VI:N/VA:N/SC:H/SI:H/SA:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-wx4j-mvgx-mqwp
5.3
Satori-generated SVG has improper escaping
Impact
Satori does not properly escape certain values before including them in generated SVG output. This can allow crafted values to be interpreted as SVG markup.
The impact depends on how the generated SVG is consumed.
Workaround
No complete workaround exists besides upgrading. Applications that cannot immediately upgrade should not render attacker-controlled content with Satori.
- Record
GHSA-wx4j-mvgx-mqwp- CVSS 4.0
- 5.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:N/VI:N/VA:N/SC:H/SI:H/SA:N - Weakness
- CWE-116
- Updated
- 2026-11-02
NVD
5.3
Satori is a library to convert HTML and CSS to SVG. Starting in version 0.0.27 and prior to version 0.33.5, Satori does not properly escape certain values before including them in generated SVG output. This can allow crafted values to be interpreted as SVG markup. The impact depends on how the generated SVG is consumed. Version 0.33.5 contains a patch. No complete workaround exists besides upgrading. Applications that cannot immediately upgrade should not render attacker-controlled content with Satori.
- Record
CVE-2026-94545- CVSS 4.0
- 5.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:N/VI:N/VA:N/SC:H/SI:H/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - Weakness
- CWE-116
- Updated
- 2026-11-02
OSV
5.3
Satori-generated SVG has improper escaping
Satori is a library to convert HTML and CSS to SVG. Starting in version 0.0.27 and prior to version 0.33.5, Satori does not properly escape certain values before including them in generated SVG output. This can allow crafted values to be interpreted as SVG markup. The impact depends on how the generated SVG is consumed. Version 0.33.5 contains a patch. No complete workaround exists besides upgrading. Applications that cannot immediately upgrade should not render attacker-controlled content with Satori.
- Record
CVE-2026-94545- CVSS 4.0
- 5.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:N/VI:N/VA:N/SC:H/SI:H/SA:N - Weakness
- CWE-116
- Updated
- 2026-11-02
OSVGHSA-wx4j-mvgx-mqwp
5.3
Satori-generated SVG has improper escaping
Impact
Satori does not properly escape certain values before including them in generated SVG output. This can allow crafted values to be interpreted as SVG markup.
The impact depends on how the generated SVG is consumed.
Workaround
No complete workaround exists besides upgrading. Applications that cannot immediately upgrade should not render attacker-controlled content with Satori.
- Record
GHSA-wx4j-mvgx-mqwp- CVSS 4.0
- 5.3 Medium
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:N/VI:N/VA:N/SC:H/SI:H/SA:N - Weakness
- CWE-116
- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
satorinpm |
0.0.27 up to 0.33.5 | 0.33.5 |
Public exploits
Links only. Every CVE stores no exploit code.
| Source | Link | Date |
|---|---|---|
| PoC in GitHub | EQSTLab/CVE-2026-94545 | 2026-09-29 |
| PoC in GitHub | HORKimhab/CVE-2026-94545 | 2026-09-23 |
| PoC in GitHub | Hassham1/CVE-2026-94545-nextjs-og-poc | 2026-09-23 |
| PoC in GitHub | MRdark-ops/CVE-2026-94545- | 2026-09-30 |
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV, PoC in GitHub |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-94545 is a medium vulnerability (CVSS 5.3) in Vercel Satori, published September 30, 2026. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 1.08%, the 65th percentile. Fixed in satori 0.33.5.
References
github.com/vercel/satori/security/advisories/GHSA-wx4j-mvgx-mqwp
github.com/vercel/next.js/security/advisories/GHSA-vcvr-r3jv-pc5j
github.com/vercel/satori/pull/814
github.com/vercel/next.js/commit/868fad38690d72088868f299fa2bef339b26838e
github.com/vercel/satori/commit/26a52affc031216fee5882b6e965c8dbc7ac1782
github.com/vercel/next.js/releases/tag/v16.3.6