30.06.2022

Уязвимости в библиотеке Expat, приводящие к выполнению кода при обработке XML-данных

В библиотеке Expat 2.4.5, используемой для разбора формата XML во многих проектах, включая Apache httpd, OpenOffice, LibreOffice, Firefox, Chromium, Python и Wayland, устранено пять опасных уязвимостей, четыре из которых потенциально позволяют организовать выполнение своего кода при обработке специально оформленных XML-данных в приложениях, использующих libexpat. Для двух уязвимостей сообщается о наличии рабочих эксплоитов. Проследить за публикаций обновления пакетов в дистрибутивах можно на данных страницах Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux.

Выявленные уязвимости:

  • CVE-2022-25235 — переполнение буфера из-за некорректной проверки кодирования Unicode-символов, которое может привести (имеется эксплоит) к выполнению кода при обработке специально оформленных последовательностей 2- и 3-байтовых символов UTF-8 в именах XML-тегов.
  • CVE-2022-25236 — возможность подстановки символов разделения пространств имён в значения атрибутов «xmlns[:prefix]» в URI. Уязвимость позволяет организовать выполнение кода при обработке данных атакующего (имеется эксплоит).
  • CVE-2022-25313 — исчерпание стека при разборе блока «doctype» (DTD), проявляющиеся в файлах размером более 2 МБ, включающих очень большое число открывающихся скобок. Не исключено использование уязвимости для организации выполнения своего кода в системе.
  • CVE-2022-25315 — целочисленное переполнение в функции storeRawNames, которое проявляется только на 64-разрядных системах и требуется обработки гигабайтов данных. Не исключено использование уязвимости для организации выполнения своего кода в системе.
  • CVE-2022-25314 — целочисленное переполнение
    в функции copyString, которое проявляется только на 64-разрядных системах и требуется обработки гигабайтов данных. Проблема может привести к отказу в обслуживании.

Источник.