Уязвимость в Linux Netfilter позволяет выполнить код на уровне ядра

Уязвимость в Linux Netfilter позволяет выполнить код на уровне ядра

Уязвимость в Linux Netfilter позволяет выполнить код на уровне ядра

В подсистеме Netfilter ядра Linux выявлена уязвимость, позволяющая локальному пользователю повысить привилегии и выполнить произвольный код, выйти за пределы контейнера или вызвать в системе состояние отказа в обслуживании (DoS).

Проблема CVE-2022-25636 (7,8 балла CVSS) классифицируется как запись за границами буфера в куче. Опасная ошибка возникает при выполнении функции nft_fwd_dup_netdev_offload, отвечающей за настройку правил пакетного фильтра и проверку поддержки аппаратного ускорения обработки пакетов (offload).

Уязвимости подвержены версии ядра Linux с 5.4 по 5.6.10. Патч уже создан, но корректирующие выпуски ядра пока не появились. Списки затронутых пакетов в дистрибутивах с указанием статуса опубликованы на сайтах Red Hat, Ubuntu и SUSE.

Как оказалось, в Ubuntu новую дыру оперативно залатали, притом одновременно с Dirty Pipe (CVE-2022-0847). Эта раскрытая в начале марта уязвимость тоже позволяет локально повысить привилегии и грозит захватом контроля над системой.

Два дня назад автор новой находки в ядре Linux раскрыл подробности CVE-2022-25636 и рассказал, как ему удалось создать PoC-код, который подходит и для сетевых устройств, не поддерживающих offload. Исследователь также отметил, что пока он готовил блог-запись, на GitHub появился похожий эксплойт, но проверить работоспособность чужого инструмента он не успел.

Подпишитесь на новости

Обновите Telegram для Android: версия 13.2.2 закрыла опасную уязвимость

Telegram исправил уязвимость в HTML-виджетах, которые мессенджер открыл для ботов 9 ноября. Через ошибку скрипт из обычного сообщения мог выйти за пределы песочницы и выполнить машинный код на устройстве. Проблема находилась в движке JavaScript QuickJS, который Telegram использует в собственном форке QuickJS-ng.

Патч описан в журнале изменений песочницы виджетов Telegram на GitHub. Парсер QuickJS принимал конструкцию await using в заголовке цикла даже внутри обычных, неасинхронных функций.

В таком случае движок завершал функцию по пути для асинхронного кода и не закрывал ссылки на ее локальные переменные. Вложенные функции после возврата продолжали обращаться к уже освобожденному участку стека. Такой класс ошибок называют use-after-return.

О проблеме сообщили применительно к Telegram для Android 13.2.1, но, по данным Telegram, она затрагивала все платформы, где собирается форк движка. Исправление внесли 10 ноября: теперь парсер выдает синтаксическую ошибку на такую конструкцию. В тот же день вышла версия Telegram для Android 13.2.2.

Уязвимый код попал в основную ветку QuickJS-ng 16 мая вместе с поддержкой явного управления ресурсами. Ошибку описал разработчик Андреас Рёсдал.

9 ноября он опубликовал в репозитории QuickJS-ng аудит безопасности всего движка, проведенный с помощью модели Claude от Anthropic. В отчете 27 находок, уязвимость с await using в нем третья, с высоким уровнем опасности.

RSS: Новости на портале Anti-Malware.ru