Библиотека librsvg отвечает за отрисовку SVG в GTK и приложениях GNOME. В ней есть уязвимость, позволяющая выполнить произвольный код при разборе специально подготовленного изображения. Причина - обращение к памяти, которую библиотека уже освободила; помимо выполнения кода, это грозит аварийным завершением приложения. Затронуты и те, кто обрабатывает SVG через NPM-пакет sharp (NPM - менеджер пакетов для JavaScript): внутри он опирается на ту же библиотеку.
CVE-2026-96889 и повторяющиеся сущности XML при вложенных включениях
Разметку SVG библиотека разбирает не сама: этим занимается libxml2, библиотека на языке C. Документ SVG может включать другой XML-документ через механизм XInclude (XML-включение). Вложенный документ может объявить сущность XML (именованную подстановку в разметке) с уже занятым именем. Тогда обе операции разбора работают с одной таблицей сущностей на стороне librsvg. Вторая запись заменяет первую, и librsvg освобождает память под структурой, которую libxml2 продолжает использовать. Отсюда и обращение к освобождённой памяти: приложение либо завершается аварийно, либо исполняет чужой код.
Атакующему не нужен доступ к самой системе: достаточно, чтобы приложение или сервис отрисовал его файл. Поэтому в зоне риска оказываются серверы, которые принимают загруженные изображения, и настольные программы, открывающие SVG из внешних источников. Если файл приходит на сервер, обработка идёт без участия человека. Правка в самом коде разбора убирает причину сбоя, а не его следствие.
Оценку CVSS (общей шкалы серьёзности уязвимости) уведомление не приводит, уровня по ней тоже нет. Условия атаки вендор не описывает: неизвестно, нужен ли сетевой доступ и требуются ли учётные данные. Из описания следует только, что приложение должно принять SVG из недоверенного источника, иначе сбой не возникает. Сведений об эксплуатации в реальных атаках нет, а публичное раскрытие технических деталей этого не подтверждает.
Исправление вышло в librsvg 2.63.2, отдельные правки закрывают ветки 2.57.5, 2.60.3, 2.61.5 и 2.62.4. NPM-пакет sharp нужно обновить до 0.35.5. Его скачивают около 80 млн раз в неделю, и он входит в зависимости почти 11 тысяч проектов. Уведомление RUSTSEC-2026-0305 опубликовано 23 сентября 2026 года, последняя правка датируется 23 октября.
Debian закрыл уязвимость в trixie обновлением безопасности 2.60.0+dfsg-1+deb13u1 в составе DSA-6555-1. В forky и sid пакет собран как 2.63.3+dfsg-1. В bookworm версия 2.54.7+dfsg-1~deb12u1 по данным Debian остаётся уязвимой. Из приложений обновиться пришлось PeerTube: в выпуске 8.3.2 зависимость подтянута до безопасной версии.
Действия простые: обновить librsvg до исправленной ветки, обновить sharp до 0.35.5 и поставить PeerTube 8.3.2, если платформа используется. При сборке из исходников правка уже есть в основной ветке проекта. Официальных обходных мер, кроме обновления, уведомление не приводит. Сверять версии для своего дистрибутива удобно по DSA-6555-1, технические детали перечислены в RUSTSEC-2026-0305 и в рабочей задаче проекта GNOME.
Уязвимость сочетает два свойства: она повреждает память и срабатывает на файле, который приходит извне. Библиотека стоит в цепочке обработки изображений у множества проектов, поэтому обновление имеет смысл провести и там, где SVG кажется второстепенным форматом.