Naar inhoud
PatchBriefing

Zoek in PatchBriefing

Typ minimaal twee tekens. Resultaten worden direct bijgewerkt.

Zoek op CVE’s, producten, packages en artikeltitels.

Niets gevonden. Kenmerken zoals CVE en GHSA zijn in beide talen doorzoekbaar.

Inschrijven

Gemiddeld · 4.2 PHP-packages GHSA-m9xh-6747-9r6f CVE-2026-107381 PKSA-6j95-1jtb-x6wc

svg-sanitizer: Mixed-case xlink:HrEf omzeilt de <use>-nesting-DoS-controle (CVE-2026-107381)

Door case-gevoelige selectie slaat Resolver::processReferences mixed-case attributen zoals xlink:HrEf over, waarna de sanitizer later de naam weer normaliseert en zo een levende nesting-structuur teruggeeft. Een oplossing is beschikbaar in 1.0.0. (CVE-2026-107381, GHSA-m9xh-6747-9r6f)

Door AI gesynthetiseerd uit 3 bronnen · bijgewerkt 2 uur geleden

AI-samenvatting

Deze waarschuwing betreft CVE-2026-107381 in enshrined/svg-sanitize. De referentie-resolver selecteert <use>-elementen met case-gevoelige XPath-voorwaarde, waardoor gemengde hoofdlettergebruik-attributen (bijv. xlink:HrEf) niet in de referentiegraf worden opgenomen. Later normaliseert de sanitizer attributen naar kleine letters en levert dan nog steeds de geneste structuur op die de useNestingLimit juist had moeten neutraliseren. (Bronnen: OSV.dev, Packagist, GitHub Advisory Database.)

Wat er gebeurde

Resolver::processReferences() zoekt <use>-elementen met een case-gevoelige XPath-predicate (bijvoorbeeld use[@href or @xlink:href]); een gemengd-hoofdletter attribuut zoals xlink:HrEf wordt daardoor niet gevonden en niet aan de referentiegraf toegevoegd. Later in dezelfde sanitize-run zet Sanitizer::cleanHrefAttributes() de attribuutnaam terug naar kleine letters, waardoor de uitvoer canonieke xlink:href-waarden bevat maar de geneste <use>-structuur intact blijft. Het gevolg is een nesting-DoS die bij canonieke invoer wel zou zijn weggefilterd. (Bronnen: 3974, 4173, 8432)

Technische oorzaak

Het probleem is een combinatie van volgorde en case-gevoeligheid: de resolver bouwt eerst de referentiegraf met case-gevoelige naamselectie, en vervolgens vindt pas normalisatie van attribuutnamen plaats. Omdat de resolver de genormaliseerde naam niet ziet, worden knopen met gemengde hoofdletters overgeslagen en niet geneutraliseerd door de nesting-bescherming. De advisering noemt twee oplossingsrichtingen: naamvergelijking case-insensitief maken bij het bouwen van de graf of de attribuutnormalisatie vóór de resolver laten lopen. (Bronnen: 3974, 4173, 8432)

Waarom dit belangrijk is

Een aanvaller die een SVG kan uploaden of plakken kan een bestand aanleveren dat, ondanks sanitatie, een diep geneste <use>-structuur behoudt. De output bevat canonieke xlink:href-attributen maar houdt de oorspronkelijke nesting die de useNestingLimit had moeten neutraliseren. De advisering meette dat nullificatie werd overgeslagen en dat attributen weer canoniek werden gemaakt, maar heeft de werkelijke impact op renderer CPU/geheugen niet gemeten. (Bronnen: 3974, 4173, 8432)

Wie is getroffen

Applicaties en projecten die enshrined/svg-sanitize gebruiken om door gebruikers aangeleverde SVG's te sanitiseren en die een kwetsbare release draaien zijn getroffen. Misbruik vereist alleen de mogelijkheid om een SVG in te dienen; er zijn geen speciale rechten nodig. (Bronnen: 3974, 4173, 8432)

Ontdekking en tijdlijn

De advisering is gepubliceerd op 2026-10-08T19:41:10+02:00. De proof-of-concept is uitgevoerd tegen tag 0.22.0 en testobservaties werden gedaan op PHP 8.5.9: canonieke invoer ging van 201 <use>-elementen naar 0, terwijl de mixed-case invoer 201 behield en de uitvoer alsnog canonieke attributen vertoonde. De bronnen vermelden geen claim van actieve uitbuiting of een vendorverklaring. (Bronnen: 3974, 4173, 8432)

Getroffen versies

De advisering geeft aan dat releases tot en met 0.22.0 kwetsbaar zijn. Er is een gefixeerde release beschikbaar in 1.0.0. Zie de advisering voor details en controleer uw afhankelijkheden. (Bronnen: 3974, 4173, 8432)

Oplossingen en mitigatie

Een correctie is beschikbaar; 1.0.0 wordt als gefixeerde versie genoemd. De advisering adviseert ofwel case-insensitieve naamvergelijking bij het bouwen van de referentiegraf, ofwel attribuutnormalisatie vóór het verzamelen van referenties. Beide benaderingen voorkomen dat knopen met gemengde hoofdletters worden gemist. (Bronnen: 3974, 4173, 8432)

Aanbevolen actie

Werk enshrined/svg-sanitize bij naar 1.0.0 zodra dat mogelijk is. Als bijwerken niet direct kan, zorg dat attributen worden genormaliseerd vóórdat de referentiegraf wordt opgebouwd, of backport de resolver-wijziging die mixed-case attributen accepteert. Gebruik de testfixture (useDosTest.svg) om na te gaan dat de nesting-structuur daadwerkelijk wordt verwijderd. (Bronnen: 3974, 4173, 8432)

PatchBriefing-score

4.2 / 10 · Gemiddeld

Officiële CVSS: 6.5

CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H

Waarom deze score

CVSS v3.1 basisscore is 6.5 (CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H). Dit betekent: netwerk-aanvalsvector (AV:N), lage complexiteit (AC:L), geen privileges vereist (PR:N), vereist gebruikersinteractie (UI:R), scope onveranderd (S:U), geen vertrouwelijkheids- of integriteitsimpact (C:N/I:N) en een HOGE beschikbaarheidsimpact (A:H). De PatchWire-score van 4.2 combineert deze basiskenmerken met extra factoren zoals de mogelijkheid tot ongeauthentieke remote-aanval en het ontbreken van publieke exploits. (Bronnen: 3974, 4173, 8432)

Getroffen versies

enshrined/svg-sanitize ≥ 0 < 1.0.0
kwetsbaar
enshrined/svg-sanitize
kwetsbaar
enshrined/svg-sanitize <=0.22.0
kwetsbaar
enshrined/svg-sanitize <= 0.22.0
kwetsbaar
≥ 1.0.0
gepatcht

Gemelde oplossingen

Een correctie is beschikbaar; 1.0.0 wordt als gefixeerde versie genoemd. De advisering adviseert ofwel case-insensitieve naamvergelijking bij het bouwen van de referentiegraf, ofwel attribuutnormalisatie vóór het verzamelen van referenties. Beide benaderingen voorkomen dat knopen met gemengde hoofdletters worden gemist. (Bronnen: 3974, 4173, 8432)

Hoe dit rapport is gemaakt

3 bronrecords zijn opgehaald, gekoppeld en gebruikt om het rapport hierboven op te stellen.

  • OSV.dev database
  • Packagist Security Advisories registry
  • GitHub Advisory Database database
Eén rapport
svg-sanitizer: Mixed-case xlink:HrEf omzeilt de <use>-nesting-DoS-controle (CVE-2026-107381)
1 artikel · 3 bronnen geciteerd
Revisiegeschiedenis
  1. Gepubliceerd
  2. Gegenereerd
De Ochtendbriefing

Relevante veranderingen voor de stacks die je volgt.

Kies je stacks, onderwerpen en eventueel WordPress-plugins. Om 07:00 CEST worden passende meldingen en releases uit de rapportageperiode in één e-mail gegroepeerd.

✓ Kies stacks en onderwerpen✓ Pas voorkeuren altijd aan✓ Eén gebundelde e-mail