Уязвимость в gettext, позволяющая выполнить код при обработке po-файлов

В библиотеке gettext, применяемой для создания многоязычных приложений, выявлена опасная уязвимость (CVE-2018-18751), которая может использоваться для организации выполнения произвольного кода при обработке специально оформленных сообщений в po-файлах. Проблема вызвана двойным освобождением блока памяти (double free) в функции default_add_message, определённой в файле read-catalog.c. В сети уже доступны варианты po-файлов, эксплуатирующие уязвимость.

Проблема проявляется только в актуальном выпуске gettext 0.19.8. В кодовой базе gettext проблема была устранена ещё в сентябре 2016 года, без акцента на наличие возможной уязвимости, но данное изменение пока не вошло в состав релиза (последний выпуск gettext 0.19.8 датирован июнем 2016 года) и новая версия с исправлением ещё не доступна. Уязвимость устранена в Ubuntu и Fedora, но остаётся неисправленной в Debian и RHEL 7. RHEL 5, RHEL 6, SUSE и openSUSE проблеме не подвержены так как используют старые версии gettext без файла «read-catalog.c».

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.