lovell/sharp · Security
sharp : Vulnerability in librsvg dependency CVE-2026-96889
- GHSA ID
- GHSA-wq5f-xc86-pv6w
- Severity
- high
- Published
- Updated
- CVSS v4
- 8.9 · CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H
Description
Impact
A memory-related vulnerability has been discovered and fixed in the upstream librsvg dependency. When certain runtime-specific conditions apply, this vulnerability can lead to possible remote code execution (RCE) on glibc-based Linux.
Patches
Using prebuilt binaries provided by sharp?
Most people rely on the prebuilt binaries provided by sharp.
Please upgrade sharp to the latest version, currently 0.35.5, which provides librsvg 2.63.2.
Using a globally-installed librsvg?
Please ensure you are using the latest librsvg 2.63.2.
Workarounds
Add the following to your code to prevent sharp from decoding SVG images.
sharp.block({ operation: ["VipsForeignLoadSvg"] });
To avoid RCE, ensure you are using a node executable binary compiled as a Position Independent Executable (PIE). Most Linux package managers already use this security-hardening feature however be warned that the "official" Node.js binaries do not.
1
CWEs
- CWE-416 · Use After Free
- CWE-1395 · Dependency on Vulnerable Third-Party Component
References
- https://github.com/lovell/sharp/security/advisories/GHSA-wq5f-xc86-pv6w ↗
- https://github.com/lovell/sharp/commit/96de105d9d36ab04c76c2b78b97255171630d236 ↗
- https://github.com/lovell/sharp/releases/tag/v0.35.5 ↗
- https://gitlab.gnome.org/GNOME/librsvg/-/work_items/1241 ↗
- https://www.cve.org/CVERecord?id=CVE-2026-96889 ↗
- https://github.com/advisories/GHSA-wq5f-xc86-pv6w ↗