Уязвимость iSCSI ядра Linux позволяет повысить привилегии

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

Проблема вызвана ошибкой в ​​функции модуля libiscsi iscsi_host_get_param (), введенной еще в 2006 году при разработке подсистемы iSCSI. Из-за отсутствия надлежащих элементов управления размером некоторые строковые атрибуты iSCSI, такие как имя хоста или имя пользователя, могут превышать значение PAGE_SIZE (4 КБ).

Уязвимость может быть использована путем отправки сообщений Netlink. непривилегированным пользователем, который устанавливает для атрибутов iSCSI значения больше PAGE_SIZE. При чтении данных атрибутов через sysfs или seqfs вызывается код для передачи атрибутов в sprintf, чтобы они были скопированы в буфер размером PAGE_SIZE.

Конкретной рассматриваемой подсистемой является транспорт данных SCSI (интерфейс малых компьютерных систем), который является стандартом для передачи данных, предназначенных для подключения компьютеров к периферийным устройствам, первоначально через физический кабель, например жесткие диски. SCSI - это почтенный стандарт, первоначально опубликованный в 1986 году, и был золотым стандартом для конфигураций серверов, а iSCSI - это, по сути, SCSI поверх TCP. SCSI все еще используется сегодня, особенно в определенных ситуациях хранения, но как это становится поверхностью атаки в системе Linux по умолчанию?

Использование уязвимости в раздачах зависит от поддержки автозагрузки модуля ядра scsi_transport_iscsi при попытке создать сокет NETLINK_ISCSI.

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

Автоматическая загрузка модулей, необходимых для использования эксплойта поддерживает CentOS 8, RHEL 8 и Fedora путем установки пакета rdma-core в системе, который является зависимостью для некоторых популярных пакетов и устанавливается по умолчанию в конфигурациях для рабочих станций, серверных систем с графическим интерфейсом пользователя и виртуализации сред хоста.

При этом rdma-core не устанавливается при использовании сборки сервера, работающей только в режиме консоли, и при установке минимального установочного образа. Например, пакет включен в базовый дистрибутив Fedora 31 Workstation, но не включен в Fedora 31 Server.

Debian и Ubuntu менее подвержены этой проблемепоскольку пакет rdma-core загружает только модули ядра, необходимые для атаки, если доступно оборудование RDMA. Однако серверный пакет Ubuntu включает пакет open-iscsi, который включает файл /lib/modules-load.d/open-iscsi.conf, чтобы гарантировать автоматическую загрузку модулей iSCSI при каждой загрузке.

Рабочий прототип эксплойта доступен для попробуйте по ссылке ниже.

Уязвимость исправлена ​​в обновлениях ядра Linux 5.11.4, 5.10.21, 5.4.103, 4.19.179, 4.14.224, 4.9.260 и 4.4.260. Обновления пакетов ядра доступны в дистрибутивах Debian (oldstable), Ubuntu, SUSE / openSUSE, Arch Linux и Fedora, а для RHEL пока не выпущено никаких исправлений.

Также в подсистеме iSCSI исправлены две менее опасные уязвимости которые могут привести к утечке данных ядра: CVE-2021-27363 (утечка информации о транспортном дескрипторе iSCSI через sysfs) и CVE-2021-27364 (чтение из области за пределами буфера).

Эти уязвимости могут использоваться для связи через сокет сетевого соединения с подсистемой iSCSI без необходимых привилегий. Например, непривилегированный пользователь может подключиться к iSCSI и отправить команду выхода.

источник: https://blog.grimm-co.com


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

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

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

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

*

*

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