CVE-2016-4472
WysokieStreszczenie
W Expat usunięto ochronę przed przepełnieniem przez kompilatory z określonymi ustawieniami optymalizacji, co pozwala zdalnym atakującym na spowodowanie awarii (denial of service) lub potencjalne wykonanie dowolnego kodu za pomocą spreparowanych danych XML.
Ocena ryzyka
Organizacje mogą być narażone na ataki, które prowadzą do awarii systemów lub nieautoryzowanego wykonania kodu, co może skutkować utratą danych lub dostępem do wrażliwych informacji.
Rekomendacja
Zaleca się aktualizację Expat do najnowszej wersji, która zawiera poprawki zabezpieczeń, aby zminimalizować ryzyko związane z tą podatnością.
Inne podatności w Expat
Zobacz wszystkie- CVE-2016-0718Krytyczne
Expat umożliwia atakującym zależnym od kontekstu spowodowanie odmowy usługi (awarii) lub potencjalne wykonanie dowolnego kodu poprzez złośliwy dokument wejściowy, co prowadzi do przepełnienia bufora.
- CVE-2009-3720Średnie
Funkcja updatePosition w pliku lib/xmltok_impl.c biblioteki Expat 2.0.1 zawiera podatność na odczyt poza zakresem bufora. Specjalnie spreparowane sekwencje UTF-8 w dokumencie XML mogą spowodować awarię aplikacji.
- CVE-2026-76641Wysokie
Biblioteka Expat do wersji 2.8.3 zawiera podatność odczytu poza zakresem, która pozwala atakującym na wywołanie uszkodzenia pamięci podczas przetwarzania XML z zewnętrznymi parserami encji utworzonymi przez XML_ExternalEntityParserCreate. Niezgodność rozmiaru struktury między elementami ELEMENT_TYPE powoduje, że storeAtts odczytuje człon attIndex poza przydzieloną pamięcią, co prowadzi do nieprawidłowej normalizacji białych znaków w atrybutach niebędących CDATA lub do dzikiego wskaźnika powodującego segfault. Podatność została wprowadzona przez poprawkę dla CVE-2026-66046.
- CVE-2026-66046Wysokie
Podatność na odmowę usługi w bibliotece Expat do wersji 2.8.3. Funkcja storeAtts() w xmlparse.c ma złożoność kwadratową, co przy przetwarzaniu dokumentu XML z wieloma atrybutami o nieznormalizowanych wartościach prowadzi do nadmiernego zużycia CPU.
Oryginalny opis (angielski, źródło NVD)
The overflow protection in Expat is removed by compilers with certain optimization settings, which allows remote attackers to cause a denial of service (crash) or possibly execute arbitrary code via crafted XML data. NOTE: this vulnerability exists because of an incomplete fix for CVE-2015-1283 and CVE-2015-2716.

