Spook.js — атака по сторонним каналам, обходящая Site Isolation в Chrome

Spook.js — атака по сторонним каналам, обходящая Site Isolation в Chrome

Spook.js — атака по сторонним каналам, обходящая Site Isolation в Chrome

Группа специалистов из австралийских и израильских университетов смогла провести успешную атаку по сторонним каналам на CPU. В итоге у экспертов получилось извлечь данные из Google Chrome и других Chromium-браузеров, в которых реализована функция Site Isolation (изоляция сайтов).

Новый вектор атаки получил имя Spook.js, исследователи сравнивают его с печально известными Meltdown и Spectre, которые в 2018 году продемонстрировали миру уязвимость современных процессоров.

В попытке защитить пользователей от подобных кибератак разработчики Google Chrome добавили в браузер новую функцию — Site Isolation. Смысл этого защитного слоя заключается в ограничении действия кода JavaScript, с помощью которого можно было красть данные пользователя из других активных вкладок.

Тем не менее свежее исследование показало, что текущая реализация функции Site Isolation недостаточно защищает пользовательские данные. Несмотря на чёткое разграничение доменов вроде example.com и attacker.com, изоляция сайтов игнорирует этот принцип в случае с поддоменами — attacker.example.com или login.example.com.

Описанный вектор атаки Spook.js использует этот изъян в Site Isolation, о котором Google, кстати, знает. Тем не менее разработчики ничего не могут сделать, поскольку разграничение JavaScript на уровне поддоменов негативно скажется на работе 13,4% веб-сайтов в Сети.

По словам специалистов, им удалось разработать специальный инструмент на JavaScript, который осуществляет атаки вида Spectre на Chrome и другие интернет-обозреватели, основанные на Chromium. Spook.js работает с процессорами Intel, AMD и даже Apple M1.

Демонстрацию эксплуатации данного сценария специалисты опубликовали на YouTube:

AM LiveПодписывайтесь на канал "AM Live" в Telegram, чтобы первыми узнавать о главных событиях и предстоящих мероприятиях по информационной безопасности.

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

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

AM LiveПодписывайтесь на канал "AM Live" в Telegram, чтобы первыми узнавать о главных событиях и предстоящих мероприятиях по информационной безопасности.

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