Две уязвимости в ksmbd Linux позволяют получить root через SMB

Две уязвимости в ksmbd Linux позволяют получить root через SMB

Две уязвимости в ksmbd Linux позволяют получить root через SMB

Без лишней мистики: исследователь в области кибербезопасности BitsByWill подробно разобрал две критические уязвимости в ksmbd — встроенном в ядро Linux SMB-сервере. Речь о CVE-2023-52440 и CVE-2023-4130 — и самое неприятное, что они отлично склеиваются в рабочую эксплойт-цепочку.

Первая уязвимость, CVE-2023-52440, описывается как контролируемое SLUB-переполнение в функции ksmbd_decode_ntlmssp_auth_blob().

Как пишет BitsByWill, длина sess_key_len контролируется пользователем, и при определённой подаче данных можно переполнить фиксированный буфер sess_key во время вызова cifs_arc4_crypt. Проще говоря — достаточно модифицировать одну строку в ntlm-клиентской библиотеке (в примере — Impacket), чтобы сгенерировать специально подготовленное NTLM-сообщение и получить неаутентифицированное удалённое переполнение буфера с контролем размера и содержимого.

Вторая уязвимость, CVE-2023-4130, — это чтение за пределами буфера (OOB read) в smb2_set_ea(). Из-за плохой проверки расширенных атрибутов (EA) злоумышленник с правом записи на шаре может заставить ksmbd неправильно интерпретировать структуру и считать дополнительные записи. В результате соседние данные кучи попадают в xattr, откуда их можно извлечь через SMB3 queryInfo. То есть брешь позволяет вытянуть части памяти ядра и, например, сломать KASLR.

И вот где всё становится опасно: переполнение даёт запись, чтение даёт утечку. Связав CVE-2023-52440 и CVE-2023-4130, BitsByWill показал рабочий путь до реального ROP-эксплойта.

Для демонстрации потребовались учётные данные пользователя с правом записи на шару, поэтому исследователь пишет о 0-click с аутентификацией — формулировка спорная, но смысл понятен: если админ разрешил анонимную запись в шаре, шанс эксплуатации становится ещё выше.

Авторы анализа подчёркивают практические сценарии: модификация таблиц страниц для произвольного чтения/записи, вынимание секретов из соседних процессов или подготовка ROP-цепочки для исполнения кода в контексте ядра. Всё это — классика эскалации привилегий, но в данном случае — прямо через SMB-интерфейс ядра.

Патчи уже вышли, и производители/поддерживающие дистрибутивы закрывали эти баги, но реальная угроза — не только в уязвимом коде, а в конфигурациях и устаревших системах. Как обычно, напомним: открытые для записи шар-ресурсы, устаревшее ПО и несвоевременное обновление — идеальная среда для подобных атак.

EvilMouse: мышь за $44, которая взламывает компьютеры за секунды

Исследователи показали, как обычная компьютерная мышь может превратиться в инструмент для взлома. Проект получил название EvilMouse, по сути это аппаратный кейлоггер-инжектор, спрятанный внутри стандартного USB-манипулятора. Стоимость сборки — около $44 (3 394 руб.).

По принципу работы EvilMouse напоминает известный инструмент USB Rubber Ducky, который эмулирует клавиатуру и автоматически вводит заранее запрограммированные команды.

Но есть важное отличие: EvilMouse продолжает работать как обычная мышь. Внешне и функционально устройство ничем не выдаёт себя.

Внутри корпуса разместили недорогие компоненты — микроконтроллер RP2040 Zero, USB-хаб и начинку стандартной мыши. Автор проекта перепрошил устройство с помощью CircuitPython: при подключении к компьютеру мышь автоматически выполняет набор команд и открывает обратный шелл на машине атакующего. По результатам тестов доступ к системе с правами администратора удаётся получить буквально за считаные секунды.

 

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

 

Главная проблема, на которую указывает автор, — это фактор доверия к «безобидной» периферии. Большинство сотрудников уже знают, что флешки могут быть опасны. А вот мышь, которая нормально двигает курсор, подозрений не вызывает. При этом устройство распознаётся системой как HID (Human Interface Device) и может отправлять команды, минуя многие стандартные механизмы защиты. В демонстрации атака проходила без срабатывания антивируса.

Исходный код проекта выложен на GitHub — автор подчёркивает, что работа носит исследовательский и образовательный характер. Однако сама концепция наглядно показывает: для компрометации системы не нужны дорогостоящие инструменты, достаточно фантазии и пары доступных компонентов.

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