Incomplete url() filtering in svg-sanitizer allows remote URL requests
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Passive
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- —
- Confidentiality · integrity · availability
- Low · None · None
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA.
Summary
svg-sanitizer from 0.5.0 before 1.1.0 is affected by incomplete filtering of special elements (CWE-791). The sanitizer fails to remove remote URLs in url() when CSS escape sequences are used inside SVG presentation attributes such as fill. An unauthenticated remote attacker can supply an SVG file that browsers resolve to a remote URL, triggering external requests and enabling data exfiltration if a user opens the file.
Written with Claude Haiku 5.5 from the sources below · 2026-11-07
Description from the CNA
svg-sanitizer from 0.5.0 before 1.1.0 contains an incomplete filtering vulnerability that allows attackers to bypass remote URL removal by using CSS escape sequences inside url() in SVG presentation attributes. Attackers can supply SVG files with attributes like fill containing escaped slashes that browsers resolve to remote URLs, triggering external requests and enabling data exfiltration.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| darylldoyle | svg-sanitizer | 0.5.0 to before 1.1.0 | 1.1.0 | Patch available | CNA |
- svg-sanitizer Vendordarylldoyle Affected 0.5.0 to before 1.1.0 Fixed in 1.1.0 Patch available CNA
Remediation
Update svg-sanitizer to version 1.1.0, which fixes the flaw. The sources list no fixed version for svg-sanitizer other than 1.1.0.
Written with Claude Haiku 5.5 from the sources below · 2026-11-07
- Fix · CNA svg-sanitizer (darylldoyle) Fixed in 1.1.0
Fixed in the same release
Records fixed by the same vendor advisory or release, as the CNA lists them.
- Release ·
darylldoyle svg-sanitizer 1.1.0
4 records Highest priority Priority HIGH 1 HIGH, 2 MEDIUM, 1 LOW
Other records, highest priority first
- TI-2026-84327 svg-sanitizer ReDoS and Fail-Open via image-set CSS StrippingPriority HIGH 69
- TI-2026-84326 Algorithmic complexity denial of service in svg-sanitizer via use referencesPriority MEDIUM 44
- TI-2026-84329 Cross-site scripting in svg-sanitizer via animateTransform on SafariPriority LOW 23
Timeline
- 2026-11-03 Threatist record created from CVE-2026-121446
- 2026-11-03 Alias added: GHSA-3r85-4hm6-r357
- 2026-11-07 CISA SSVC decision points changed
- 2026-11-07 Priority changed: LOW → MEDIUM
References
More darylldoyle vulnerabilities
- TI-2026-81116 Quadratic CPU exhaustion in svg-sanitizer PHP tag stripping CVSS 4.0HIGH 8.7
- TI-2026-84327 svg-sanitizer ReDoS and Fail-Open via image-set CSS Stripping CVSS 4.0HIGH 8.2
- TI-2026-74075 Mixed-case xlink:HrEf bypasses use nesting limit in svg-sanitizer CVSS 3.1MEDIUM 6.5
- TI-2026-69645 Denial of service in enshrined/svg-sanitize via crafted SVG DTD CVSS 3.1MEDIUM 6.5
- TI-2026-81115 darylldoyle svg-sanitizer CSS Injection and Remote Reference Bypass CVSS 4.0MEDIUM 5.1
- TI-2025-34848 svg-sanitizer By-Passing Attribute Sanitization CVSS 4.0MEDIUM 5.1
Sources
- CVE-2026-121446 · CVE Program
- CVE-2026-121446 · NVD
- FIRST EPSS
- GHSA-3r85-4hm6-r357 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences