Sceawere

Vulnerability Detail

CVE-2026-73650UPDATED Verified Sceawere Triage Sources: NVD / CISA KEV

SVGO removeScripts Plugin Bypass Vulnerability

Vulnerability Metadata

Severity
High
Score / CVSS
8.2
Creation Date
2h ago
Vendor
svg
Product
svgo
Attack Type
CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
Vector String
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:L/A:N
Attack Complexity
LOW

Narrative and Response

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.

Executive Summary

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Executive Summary Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

Technical Details

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Detailed Technical Analysis Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

Mitigations

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Remediation & Mitigations Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

References

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Intelligence References Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

Additional Metadata

{
  "score": "8.2",
  "pubDate": "2026-08-13T19:17:38.460Z",
  "pubdate": "2026-08-13T19:17:38.460Z",
  "executiveSummary": "SVGO versions 1.0.0 through 2.8.3, 3.3.4, and 4.0.2 contain a vulnerability in the removeScripts plugin (known as removeScriptElement in versions 1 through 3) that allows executable content to persist within optimized SVG files. This security deficiency arises from inadequate sanitization of namespaced or prefixed script elements (such as <svg:script>) and case-sensitive matching of JavaScript URIs in versions 3 and 4.\nWhen applications process untrusted SVG input using the vulnerable plugin and subsequently serve the optimized output to users, attackers can achieve arbitrary script execution within the context of the victim's browser. This enables unauthorized access to sensitive client-side data, including local storage and cookies.\nThe vulnerability exposes web applications handling user-supplied vector graphics to Cross-Site Scripting (XSS) attacks. Exploitation requires no authentication or special privileges from the attacker, provided the target application processes untrusted SVG files and serves them directly to other users who subsequently open the rendered output.",
  "technicalDetails": "The vulnerability resides in the removeScripts plugin of the SVGO library, specifically within the parsing and filtering logic designated to strip executable script elements and attributes from SVG documents. The root cause stems from two distinct sanitization bypass vectors present in the affected version ranges.\nFirst, across versions 1.0.0 through 2.8.3, 3.3.4, and 4.0.2, the filtering mechanism fails to account for namespaced or prefixed script elements. By leveraging XML namespaces—such as utilizing the <svg:script> tag—malicious payloads evade detection because the filter strictly evaluates standard, non-prefixed element names.\nSecond, in versions 3 and 4, the parser implements case-sensitive matching when evaluating JavaScript URIs within attributes or element properties. An attacker can bypass this restriction by obfuscating URI schemes using mixed-case characters (e.g., jAvAsCrIpT:), which prevents the sanitizer from recognizing and stripping the malicious execution vector.\nThe step-by-step attack flow proceeds as follows: An attacker crafts a malicious SVG file containing either a namespaced script element (<svg:script>) or a case-obfuscated JavaScript URI. The attacker submits this untrusted SVG file to a vulnerable application utilizing SVGO for processing. The application executes the removeScripts plugin, which fails to neutralize the hidden or obfuscated payload due to the aforementioned logic flaws. The application then saves or serves the resulting optimized SVG file to end users.\nWhen another user opens the processed SVG file within a web browser, the embedded script executes under the origin of the serving application. This leads to post-exploitation impacts such as session hijacking, exposure of sensitive tokens stored in local storage, or access to sensitive cookies. The affected components include SVGO versions 1.0.0 through 2.8.3, 3.3.4, and 4.0.2, impacting the removeScripts and removeScriptElement plugins."
}
CVE-2026-73650: SVGO removeScripts Plugin Bypass Vulnerability (HIGH Severity, CVSS: 8.2) - Sceawere