W bibliotece Libxml2, rozwijanej przez projekt GNOME i wykorzystywanej do przetwarzania treści w formacie XML, zidentyfikowano 5 luk bezpieczeństwa, z których dwie mogą potencjalnie prowadzić do wykonania kodu podczas przetwarzania specjalnie sformatowanych danych zewnętrznych. Biblioteka Libxml2 jest szeroko stosowana w projektach open source i jest na przykład zależnością w ponad 800 pakietach systemu Ubuntu.
Pierwsza luka (CVE-2025-6170) jest spowodowana przepełnieniem bufora w implementacji interaktywnej powłoki xmllint, używanej do przetwarzania plików XML. Przepełnienie występuje podczas przetwarzania bardzo długich argumentów poleceń z powodu braku odpowiedniego sprawdzenia rozmiaru danych wejściowych przed skopiowaniem danych przez funkcję strcpy(). Aby wykorzystać lukę, atakujący musi mieć możliwość wpływania na polecenia przekazywane do narzędzia xmllint. Łatka naprawiająca lukę nie jest obecnie dostępna.
Druga luka (CVE-2025-6021) występuje w implementacji funkcji xmlBuildQName() i prowadzi do zapisu danych poza buforem z powodu przepełnienia całkowitego podczas obliczania rozmiaru buforu na podstawie prefiksu i lokalnej nazwy. Aby wykorzystać lukę, atakujący musi osiągnąć podstawienie swoich danych w argumentach prefix i ncname przekazywanych do funkcji xmlBuildQName(). Przygotowano łatkę do usunięcia tej luki. Poprawka została zawarta w wersji libxml2 2.14.4. Stan nowej wersji pakietu lub przygotowania poprawki w dystrybucjach można sprawdzić na następujących stronach (jeśli strona jest niedostępna, oznacza to, że deweloperzy dystrybucji jeszcze nie podjęli się rozpatrzenia problemu): Debian, Ubuntu, Fedora, SUSE/openSUSE, RHEL, Gentoo i Arch (1, 2).
Pozostałe trzy problemy prowadzą do awaryjnego zakończenia działania z powodu dostępu do już zwolnionego obszaru pamięci w funkcji xmlSchematronGetNode (CVE-2025-49794), dereferencji wskaźnika null w funkcji xmlXPathCompiledEval (CVE-2025-49795) oraz niewłaściwego przetwarzania typów (Type Confusion) w funkcji xmlSchematronFormatReport (CVE-2025-49796). W celu usunięcia tych luk rozważa się możliwość usunięcia wsparcia dla języka znaczników Schematron z libxml2.
Dodatkowo odnotowano trzy niezałatane luki w bibliotece libxslt, której wsparcie zostało zakończone. Informacje na temat tych problemów nie są jeszcze ujawnione i są planowane do publikacji 9 lipca, 13 lipca i 6 sierpnia. Niezałatane i publicznie nieujawnione luki są również zauważane w projektach powiązanych z GNOME, takich jak gvfs, libgxps, gdm, glib, GIMP i libsoup.
Uzupełnienie: Wsparcie libxml2 ogłosiło, że od teraz będzie traktować luki jako zwykłe błędy, nie nadając im większego priorytetu, naprawiając je w miarę możliwości czasu i od razu ujawniając informacje o naturze luki bez wprowadzania embarga i dawania czasu na naprawę w zewnętrznych produktach.
Źródło: opennet.ru
