Skip to content
OpenAdvisories
Medium · 6.5 CVE-2026-107381 EUVD-2026-101125GHSA-m9xh-6747-9r6f

svg-sanitizer: Mixed-case xlink:HrEf skips the `<use>` nesting-DoS check in Resolver::processReferences

Published Oct 14, 2026 · Updated Oct 18, 2026 · Assigned by GitHub_M

Description

svg-sanitizer is a PHP SVG/XML sanitizer. Prior to 1.0.0, Resolver::processReferences() in src/ElementReference/Resolver.php builds the SVG <use> reference graph with a case-sensitive href attribute predicate before cleanHrefAttributes() normalizes mixed-case names. An attacker can provide xlink:HrEf on nested <use> elements so the graph omits those references, after which the sanitizer converts the attribute to canonical xlink:href and returns the live nesting structure without applying the useNestingLimit protection. A consuming application that renders the sanitized SVG can therefore be exposed to the resource exhaustion that control is designed to prevent. This issue is fixed in version 1.0.0.

Affected products

VendorProductAffectedFixed
darylldoyle svg-sanitizer < 1.0.0 —

Affected packages

EcosystemPackageAffectedFixedRecord
Packagist enshrined/svg-sanitize < 1.0.0 1.0.0 GHSA-m9xh-6747-9r6f

References