В Linux TIPC пропатчили RCE-уязвимость, привнесенную 5,5 лет назад

В Linux TIPC пропатчили RCE-уязвимость, привнесенную 5,5 лет назад

В Linux TIPC пропатчили RCE-уязвимость, привнесенную 5,5 лет назад

Новая уязвимость, выявленная в модуле TIPC ядра Linux, позволяет удаленно вызвать в системе состояние отказа в обслуживании (DoS), а также выполнить вредоносный код с высокими привилегиями. Обновления с патчем для ОС версий 4 и 5 вышли неделю назад.

Проблему TIPC, связанную с переполнением буфера стека (CVE-2022-0435), эксперт Appgate Сэмьюэл Пейдж (Samuel Page) обнаружил, когда искал способ исполнить сторонний код в Linux с помощью недавно опубликованной CVE-2021-43267 (все созданные PoC пока годятся лишь для локального повышения привилегий).

Оказалось, что находка позволяет спровоцировать панику ядра, приводящую к DoS, а в отсутствие надежной защиты от эксплойта (контроль целостности стека, KASLR) — подменить поток управления произвольной полезной нагрузкой. Уязвимость можно использовать локально или удаленно, но только при работающем TIPC.

Виновником уязвимости является фреймворк для мониторинга узлов в кластере (эта возможность появилась в Linux в июне 2016 года, с выходом версии ядра 4.8), а точнее — некорректно реализованная функция tipc_mon_rcv().

Дело в том, что в режиме мониторинга состояние пиров отслеживается через обмен сообщениями (STATE_MSG) с отсылкой к ресурсной записи домена. Для обработки таких пакетов вызывается функция tipc_mon_rcv(), которая выполняет ряд базовых проверок, но при этом, как выяснилось, не фиксирует превышение лимита на количество членов домена в DNS-записи.

В итоге злоумышленник может отправить на целевой хост TIPC-пакет с вредоносным контентом, указав значение member_cnt выше 64, а потом создать новую ресурсную запись. При получении обновления прежние данные кешируются — для сравнения; в результате возникает ошибка, позволяющая перезаписать содержимое стека за границей буфера.

Уязвимость актуальна для Linux выпусков с 4.8 по 5.17-rc3. Патч вышел 10 февраля и включен в состав новых сборок ядра:  

  • 5.16.9
  • 5.15.23
  • 5.10.100
  • 5.4.179
  • 4.19.229
  • 4.14.266
  • 4.9.301

В дистрибутивы Linux изменения пока не внесены. Чтобы предотвратить эксплойт, участники проекта Ubuntu советуют отключить автозагрузку TIPC. Разработчики из Red Hat рекомендуют также разграничить коммуникации между узлами на транспортном уровне и усилить защиту с помощью шифрования и аутентификации.

Новый стилер крадёт сессии Telegram без паролей и СМС-кодов

Исследователи обнаружили новый экспериментальный стилер, который охотится не за паролями и cookies браузера, а за сессиями десктопной версии Telegram. Инструмент прятался в PowerShell-скрипте на Pastebin под видом исправленного обновления Windows.

Зловред ещё явно находится на стадии тестирования, поэтому аналитикам удалось проанализировать его «черновик» с открытыми токенами Telegram-бота, идентификатором чата и следами отладки.

Скрипт использует жёстко заданные учётные данные Telegram-бота и отправляет украденные данные через Telegram Bot API. Бот при этом назывался afhbhfsdvfh_bot, а в его описании значится «Telegram attacker» — не самый тонкий подход к маскировке.

После запуска скрипт собирает базовую информацию о системе: имя пользователя, хост и публичный IP-адрес через api.ipify[.]org. Эти данные он добавляет в подпись к архиву, чтобы оператор сразу понимал, откуда пришла добыча.

Главная цель — папки tdata у Telegram Desktop и Telegram Desktop Beta в AppData. Именно там хранятся долгоживущие ключи аутентификации MTProto. Если злоумышленник получает к ним доступ, он может перехватить сессию Telegram без пароля и СМС-кода.

Если такие папки находятся, скрипт завершает процесс Telegram.exe, чтобы снять блокировку файлов, упаковывает найденные данные в архив diag.zip во временной директории и отправляет его через метод sendDocument Telegram Bot API. Если основной способ отправки ломается, предусмотрен резервный вариант через WebClient: подпись с метаданными может потеряться, но сам архив всё равно уйдёт атакующему.

 

Исследователи нашли две версии скрипта. Первая содержала ошибку в механизме загрузки, а вторая уже корректно формировала запрос и добавляла базовую обработку ошибок. Кроме того, если Telegram на машине не найден, вторая версия всё равно отправляет уведомление оператору, фактически превращая каждый запуск в проверку доступности цели.

Признаков массового распространения пока не видно. Скрипт не обфусцирован, не содержит механизма закрепления в системе и не имеет полноценной схемы доставки. Более того, телеметрия по раскрытому токену не показала реальных отправок архивов diag.zip в период наблюдения. Всё это похоже скорее на лабораторные испытания, чем на активную кампанию.

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