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

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

Российские аккаунты Apple теперь могут менять регион с активными подписками

У российских пользователей Apple всё-таки появился обходной путь после отключения последнего рабочего способа оплаты подписок. Владельцы российских аккаунтов теперь могут сменить регион Apple ID даже при наличии активных подписок и, что особенно интересно, без привязки нового платёжного метода.

В этом убедился корреспондент «Кода Дурова». Поводом для проверки стала как раз недавняя блокировка оплаты подписок через привычные каналы.

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

И тут выяснился любопытный момент. Раньше Apple прямо требовала для смены региона сначала отменить все подписки, а затем ещё и дождаться окончания их действия. Но в этот раз поддержка, по данным издания, посоветовала просто проигнорировать эти ограничения. В результате регион удалось без проблем сменить с России на Грузию.

При этом действующая подписка на iCloud+ сохранилась. Изменился только регион аккаунта и валюта оплаты: вместо рублей стала использоваться иностранная валюта.

 

Годовая подписка на Google One, как отмечает издание, исчезла из списка подписок в аккаунте Apple, но фактически продолжит работать до конца уже оплаченного периода. После этого её можно будет оформить заново уже в другой валюте.

На втором российском аккаунте, где активных подписок не было, эксперимент тоже оказался успешным. Регион снова удалось сменить на Грузию и тоже без указания нового платёжного метода. А это особенно необычно, потому что обычно Apple при такой операции просит карту или другой способ оплаты, привязанный к новому региону.

Правда, полностью беспроблемной эту схему назвать всё же нельзя. Главный стоп-фактор — деньги на балансе Apple ID. Если на счёте что-то осталось, сменить регион не получится. Сначала придётся потратить все средства, а если зависнет мелкий остаток, на который уже ничего нельзя купить, — обращаться в поддержку и просить обнулить баланс.

Есть и ещё один нюанс. По словам читателей, с активной подпиской на Apple Music смена региона всё ещё не проходит. Редакция «Кода Дурова» предполагает, что дело может быть в региональных лицензиях на музыку, и в таком случае придётся всё же дождаться окончания подписки.

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

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