CVE-2026-117540
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 29 - wyżej niż 29% wszystkich znanych CVE
Streszczenie
Biblioteka svg-sanitizer w wersjach od 0.5.3 przed 1.1.0 zawiera podatność typu denial of service w metodzie Sanitizer::sanitize(), która wielokrotnie skanuje cały wejściowy tekst podczas usuwania tagów PHP. Nieuwierzytelniony atakujący może przesłać pliki SVG z wieloma nakładającymi się otwierającymi i zamykającymi tagami PHP, wymuszając kwadratowe przebiegi preg_replace i wyczerpując CPU procesu roboczego na wiele minut.
Ocena ryzyka
Atakujący może zdalnie wywołać wyczerpanie zasobów CPU, powodując niedostępność usługi dla legalnych użytkowników.
Rekomendacja
Zaktualizuj bibliotekę svg-sanitizer do wersji 1.1.0 lub nowszej. Do czasu aktualizacji rozważ ograniczenie rozmiaru i złożoności przesyłanych plików SVG.
Inne podatności w svg-sanitizer
Zobacz wszystkie- CVE-2026-117541Średnie
svg-sanitizer od wersji 0.11.0 przed 1.1.0 zawiera podatność nieprzechwyconego wyjątku, która pozwala atakującym na zawieszenie wywołujących poprzez przesłanie poprawnego XML bez głównego elementu svg. Atakujący mogą dostarczyć dokumenty z nie-svg korzeniem lub zagnieżdżonym elementem svg, powodując, że Sanitizer::sanitize() rzuca LogicException zamiast zwracać false, co prowadzi do awarii workerów lub obejścia odrzucenia uploadu.
- CVE-2026-117539Niskie
Biblioteka darylldoyle svg-sanitizer w wersjach przed 1.0.0 zawiera podatności polegające na wstrzyknięciu CSS i obejściu zdalnych odwołań, umożliwiające atakującym osadzanie zewnętrznych zasobów poprzez przesyłanie spreparowanych plików SVG. Atakujący mogą wykorzystać nieoczyszczoną zawartość stylów, niecytowane wartości url() lub atrybuty href obrazów do eksfiltracji danych strony, śledzenia użytkowników lub ujawniania adresów IP odwiedzających.
- CVE-2026-107381Średnie
svg-sanitizer to sanitizer SVG/XML w PHP. W wersjach przed 1.0.0 metoda Resolver::processReferences() w src/ElementReference/Resolver.php buduje graf referencji <use> z predykatem atrybutu href z rozróżnianiem wielkości liter, zanim cleanHrefAttributes() znormalizuje nazwy o mieszanej wielkości liter. Atakujący może podać xlink:HrEf w zagnieżdżonych elementach <use>, aby graf pominął te referencje, po czym sanitizer konwertuje atrybut do kanonicznego xlink:href i zwraca aktywną strukturę zagnieżdżenia bez zastosowania ochrony useNestingLimit. Aplikacja renderująca oczyszczony SVG może być narażona na wyczerpanie zasobów, któremu ma zapobiegać ta kontrola. Problem naprawiono w wersji 1.0.0.
Oryginalny opis (angielski, źródło NVD)
svg-sanitizer from 0.5.3 before 1.1.0 contains a denial of service vulnerability in Sanitizer::sanitize() that repeatedly rescans the whole input while stripping PHP tags. Unauthenticated attackers can upload SVGs with many overlapping PHP tag openers and closers, forcing quadratic preg_replace passes that exhaust worker CPU for minutes.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

