Уязвимости в модуле ksmbd ядра Linux, позволяющие удалённо выполнить свой код
В модуле ksmbd, предлагающем встроенную в ядро Linux реализацию файлового сервера на базе протокола SMB, выявлено 14 уязвимостей, из которых четыре позволяют удалённо добиться выполнения своего кода с правами ядра. Атака может быть проведена без аутентификации, достаточно чтобы на системе был активирован модуль ksmbd. Проблемы проявляются начиная с ядра 5.15, в состав которого был принят модуль ksmbd. Уязвимости устранены в обновлениях ядра 6.3.2, 6.2.15, 6.1.28 и 5.15.112. Проследить за исправлением в дистрибутивах можно на следующих страницах: Debian, Ubuntu, Gentoo, RHEL, SUSE, Fedora, Arch.
Выявленные проблемы:

CVE-2023-32254, CVE-2023-32250, CVE-2023-32257, CVE-2023-32258 - удалённое выполнение кода с правами ядра из-за отсутствия должных блокировок объектов при обработке внешних запросов, содержащих команды SMB2_TREE_DISCONNECT, SMB2_SESSION_SETUP, SMB2_LOGOFF и SMB2_CLOSE, что приводит к эксплуатируемому состоянию гонки. Атака может быть осуществлена без прохождения аутентифицикации.
CVE-2023-32256 - утечка содержимого областей памяти ядра из-за состояния гонки при обработке команд SMB2_QUERY_INFO и SMB2_LOGOFF. Атака может быть осуществлена без прохождения аутентифицикации.
CVE-2023-32252, CVE-2023-32248 - удалённый отказ в обслуживании из-за разыменования нулевого указателя при обработке команд SMB2_LOGOFF, SMB2_TREE_CONNECT и SMB2_QUERY_INFO. Атака может быть осуществлена без прохождения аутентифицикации.
CVE-2023-32249 - возможность перехвата сеанса с пользователем из-за отсутствия должной изоляции при обработке идентификатора сеанса в многоканальном режиме.
CVE-2023-32247, CVE-2023-32255 - отказ в обслуживании из-за утечки памяти при обработке команды SMB2_SESSION_SETUP. Атака может быть осуществлена без прохождения аутентифицикации.
CVE-2023-2593 - отказ в обслуживании из-за исчерпания доступной памяти, вызванный ошибкой, приводящей к невозвращению памяти при обработке новых TCP-соединений. Атака может быть осуществлена без прохождения аутентифицикации.
CVE-2023-32253 - отказ в обслуживании из-за возникновения взаимной блокировки при обработке команды SMB2_SESSION_SETUP. Атака может быть осуществлена без прохождения аутентифицикации.
CVE-2023-32251 - отсутствие защиты от атак по подбору параметров аутентификации (brute force).
CVE-2023-32246 - локальный пользователь системы, имеющий право выгрузки модуля ksmbd, может добиться выполнения своего кода на уровне ядра Linux.
Кроме того, ещё 5 уязвимостей выявлены в пакете ksmbd-tools, включающем утилиты для управления и работы с ksmbd, выполняемые в пространстве пользователя. Наиболее опасные уязвимости (ZDI-CAN-17822, ZDI-CAN-17770, ZDI-CAN-17820, CVE пока не назначены) позволяют удалённому неаутентифицированному атакующему выполнить свой код с правами root. Уязвимости вызваны отсутствием проверки размера принимаемых внешних данных перед их копированием в буфер в коде сервиса WKSSVC и в обработчиках опкодов LSARPC_OPNUM_LOOKUP_SID2 и SAMR_OPNUM_QUERY_USER_INFO. Ещё две уязвимости (ZDI-CAN-17823, ZDI-CAN-17821) могут привести к удалённому отказу в обслуживании без прохождения аутентифицикации.

Ksmbd преподносится как высокопроизводительное и готовое для применения на встраиваемых устройствах расширение к Samba, при необходимости интегрируемое с инструментами и библиотеками Samba. Поддержка обеспечения работы SMB-сервера при помощи модуля ksmbd присутствует в пакете Samba, начиная с выпуска 4.16.0. В отличие от SMB-сервера, работающего в пространстве пользователя, ksmbd более эффективен с точки зрения производительности, потребления памяти и интеграции с расширенными возможностями ядра. Авторами кода ksmbd являются Namjae Jeon из компании Samsung и Hyunchul Lee из LG, а сопровождением в составе ядра занимается Стив Френч (Steve French) из компании Microsoft, мэйнтейнер подсистем CIFS/SMB2/SMB3 в ядре Linux и давний участник команды разработчиков Samba, внёсший значительный вклад в реализацию поддержки протоколов SMB/CIFS в Samba и Linux.
Публікації за темою:
більше приховати
Джерело: www.opennet.ru
Ви маєте увійти під своїм обліковим записом

loading