Обнаружена уязвимость в реализации TIPC ядра Linux.

Недавно стало известно, что исследователь безопасности обнаружил критическую уязвимость (уже указан в CVE-2021-43267) в реализации сетевого протокола TIPC поставляется в ядре Linux, что позволяет удаленно выполнять код с привилегиями ядра путем отправки специально созданного сетевого пакета.

Опасность проблемы снижается за счет того, что для атаки требуется явное включение поддержки TIPC в системе (путем загрузки и настройки модуля ядра tipc.ko), что по умолчанию не выполняется в дистрибутивах, отличных от Linux.

CodeQL - это механизм анализа, который позволяет выполнять запросы к вашему коду. С точки зрения безопасности это может позволить вам находить уязвимости, просто описывая их внешний вид. Затем CodeQL запустится и найдет все экземпляры этой уязвимости.

TIPC поддерживается начиная с ядра Linux 3.19, но код, приводящий к уязвимости, был включен в ядро ​​5.10.. Протокол TIPC изначально был разработан Ericsson, он предназначен для организации межпроцессного взаимодействия в кластере и в основном активируется на узлах кластера.

ТИПК может работать как по Ethernet, так и по UDP (сетевой порт 6118). В случае работы через Ethernet атака может быть проведена из локальной сети, а при использовании UDP - из глобальной сети, если порт не защищен межсетевым экраном. Атака также может быть проведена локальным пользователем без привилегий на хосте. Чтобы включить TIPC, вы должны загрузить модуль ядра tipc.ko и настроить связь с сетевым интерфейсом с помощью netlink или утилиты tipc.

Протокол реализован в модуле ядра, поставляемом со всеми основными дистрибутивами Linux. Когда он загружен пользователем, он может использоваться в качестве соединителя и может быть настроен в интерфейсе с использованием netlink (или с помощью инструмента пользовательского пространства tipc, который будет выполнять эти вызовы netlink) в качестве непривилегированного пользователя.

TIPC можно настроить для работы по протоколу передачи, например Ethernet или UDP (в последнем случае ядро ​​прослушивает порт 6118 на предмет входящих сообщений с любой машины). Поскольку пользователь с низкими привилегиями не может создавать необработанные кадры Ethernet, установка канала-носителя на UDP упрощает создание локального эксплойта.

Уязвимость проявляется в функции tipc_crypto_key_rc и вызвана отсутствием надлежащей проверки. соответствия между тем, что указано в заголовке, и фактическим размером данных при анализе пакетов с типом MSG_CRYPTO, используемых для получения ключей шифрования от других узлов в кластере, чтобы впоследствии расшифровать сообщения, отправленные с этих узлов.

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

Предполагается, что размер имени алгоритма фиксирован, и, кроме того, для ключа передается отдельный атрибут с размером, и злоумышленник может указать значение в этом атрибуте, которое отличается от фактического значения, что приведет к записи в очередь сообщения вне выделенного буфера.

Уязвимость исправлена ​​в ядрах 5.15.0, 5.10.77 и 5.14.16., хотя проблема появляется и еще не устранена в Debian 11, Ubuntu 21.04 / 21.10, SUSE (в еще не выпущенной ветке SLE15-SP4), RHEL (еще не подробно описано, обновлено ли уязвимое решение) и Fedora.

Хотя для Arch Linux уже выпущено обновление ядра и дистрибутивы с ядрами до 5.10, такие как Debian 10 и Ubuntu 20.04, не затронуты.

В конце концов если вам интересно узнать об этом больше, вы можете проверить подробности По следующей ссылке.


Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

Будьте первым, чтобы комментировать

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован.

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.