Две уязвимости в 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-интерфейс ядра.

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

Valve случайно открыла доступ к 12 ТБ старых сборок игр Steam

Исследователи скачали 12-13 ТБ данных со старых серверов Steam, обнаружив ранние версии Left 4 Dead, Portal 2, CS:GO и материалы отменённой Half-Life 2: Episode 3. Взламывать Valve не пришлось: компания сама оставила публично доступной конечную точку устаревшей инфраструктуры.

Архив охватывает период с 2003 по 2013 год, когда Steam переходил от системы Steam2 с форматами NCF и GCF к современной доставке файлов через HTTP.

Среди находок можно встретить полноценную сборку Left 4 Dead за июнь 2008 года с другим интерфейсом, вырезанными репликами, изменёнными участками карт и незавершёнными ресурсами.

Из файлов Portal 2 моддеры уже восстановили играбельную бета-версию июля 2009-го с ранней концепцией Core Hub, другой GLaDOS и материалами отменённого проекта F-Stop.

Особое внимание привлекла 3D-модель Weaponizer — оружия, которое связывают с несостоявшимся третьим эпизодом Half-Life 2. Оно должно было превращать объекты в боеприпасы, а позднее использовалось как временная замена Paint Gun.

В архиве также нашли ранние карты и интерфейс CS:GO, оружие MP5-Active, экспериментальные ножи, вырезанную механику гранат и щит из Counter-Strike 1.6. Попались и материалы сторонних игр, включая раннюю сборку Sonic 4 Episode 2.

Энтузиасты продолжают изучать файлы, поэтому список находок наверняка вырастет. Valve утечку пока не комментировала. Впрочем, самым свежим данным больше 13 лет.

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