Skip to content
OpenAdvisories
High · 8.2 CVE-2026-73650 EUVD-2026-58193GHSA-2p49-hgcm-8545

SVGO: removeScripts plugin leaves some executable scripts intact

Published Aug 13, 2026 · Updated Aug 18, 2026 · Assigned by GitHub_M

Description

SVGO, short for SVG Optimizer, is a Node.js library and command-line application for optimizing SVG files. From version 1.0.0 until versions 2.8.3, 3.3.4, and 4.0.2, the removeScripts plugin, named removeScriptElement in versions 1 through 3, can leave executable content in optimized SVGs because it does not remove namespaced or prefixed script elements such as <svg:script> and, in versions 3 and 4, matches JavaScript URIs case sensitively. Applications that process untrusted SVG input with this plugin enabled and serve the result can allow scripts to execute when another user opens the SVG, exposing local storage or cookies. This issue is fixed in versions 2.8.3, 3.3.4, and 4.0.2.

Affected products

VendorProductAffectedFixed
svg svgo >= 1.0.0, < 2.8.3, >= 3.0.0, < 3.3.4, >= 4.0.0, < 4.0.2 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 node-svgo 3.3.5+ds-1 —
ReleasePackageFixed inAdvisory
openSUSE Tumbleweed agama-web-ui 24+0.a836cced5-52.1 openSUSE-SU-2026:11680-1
openSUSE Tumbleweed velociraptor 0.76.7.0.git145.b60ef1146-1.1 openSUSE-SU-2026:12070-1

Affected packages

EcosystemPackageAffectedFixedRecord
npm svgo >= 1.0.0, < 2.8.3 2.8.3 GHSA-2p49-hgcm-8545
npm svgo >= 3.0.0, < 3.3.4 3.3.4 GHSA-2p49-hgcm-8545
npm svgo >= 4.0.0, < 4.0.2 4.0.2 GHSA-2p49-hgcm-8545

Advisories 2

References