Хакер #305. Многошаговые SQL-инъекции
«Лаборатория Касперского» рассказала о целевых атаках с применением уязвимостей нулевого дня в Microsoft Windows и Google Chrome, исправленных на этой неделе в рамках «вторника обновлений».
Windows 10
Один из обнаруженных экспертами эксплоитов позволял удаленно выполнять код в браузере, а второй, написанный для работы с новейшими и самыми распространенными сборками Windows 10, — повышать привилегии. В настоящий момент уязвимости исправлены, патчи для них были выпущены вчера, 8 июня 2021 года.
Исследователи сумели проанализировать код эксплоита для повышения привилегий в системе (эксплоит для второй проблемы, который использовали для удаленного исполнения кода в браузере Chrome, поучить не удалось), и выяснили, что он использовал две уязвимости в ядре ОС Microsoft Windows. Первая из них, получившая идентификатор CVE-2021-31955, — это уязвимость раскрытия информации в ntoskrnl.exe.
Уязвимость связана с функцией SuperFetch, которая направлена на сокращение времени загрузки ПО за счет предварительной загрузки часто используемых приложений в оперативную память. Другая уязвимость, CVE-2021-31956, связана с переполнением буфера хипа в драйвере ntfs.sys. Эксплоит использовал ее вместе с механизмом Windows Notification Facility (WNF) для создания примитива произвольного чтения и записи в память.
Chrome
Что касается эксплоита для Chrome, аналитикам компании не удалось получить файл JavaScript с полным кодом эксплоита, но временные рамки атак и предшествующие им события позволяют подозревать одну конкретную уязвимость.
Дело в том, что с 6 по 8 апреля 2021 года проходило соревнование Pwn2Own, где браузер Google Chrome был одной из целей. Согласно сайту организатора мероприятия, ZDI (Zero Day Initiative), одна из участвующих команд смогла продемонстрировать успешную эксплуатацию процесса рендеринга Chrome с помощью ошибки Typer Mismatch.
Вскоре после этого, 12 апреля 2021 года, разработчики Chromium закоммитили два исправления ошибок (заявки 1196683 и 1195777), связанных с функциональностью Typer, в open-source-репозиторий JavaScript-движка V8 (используется браузерами Chrome и Chromium).
Один из этих патчей (1196683) был предназначен для исправления уязвимости, которая использовалась во время Pwn2Own. Оба патча были закоммичены вместе с регрессионными тестами, то есть файлами JavaScript для воспроизведения этих уязвимостей. Позже в тот же день пользователь Twitter под псевдонимом @r4j0x00 опубликовал на GitHub работающий эксплоит удаленного исполнения кода, нацеленный на последнюю версию браузера Chrome. Этот эксплоит использовал уязвимость из заявки 1196683 для выполнения шелл-кода в контексте процесса рендеринга Chrome.
Опубликованный код не содержал эксплоита для побега из песочницы и потому был предназначен только для работы в сценарии, когда браузер запускается с параметром командной строки —no-sandbox.
Уже 13 апреля 2021 года компания Google выпустила обновление Chrome 89.0.4389.128 для Windows, Mac и Linux с исправлением двух уязвимостей, в том числе использованной во время Pwn2Own CVE-2021-21220.
У некоторых клиентов «Лаборатории Касперского», которых атакованных 14 и 15 апреля, браузер Chrome был уже обновлен до версии 89.0.4389.128, поэтому аналитик полагают, что злоумышленники не использовали CVE-2021-21220 в своих атаках.
Между тем, 14 апреля 2021 года компания Google выпустила обновление Chrome 90.0.4430.72 для Windows, Mac и Linux с исправлением 37 уязвимостей. В тот же день был опубликован новый эксплоит для Chrome. Эта новинка использовала уязвимость из заявки 1195777 и работала с только что выпущенным Chrome 90.0.4430.72. Новая уязвимость получила идентификатор CVE-2021-21224 и была исправлена всего несколько дней спустя, 20 апреля 2021 года.
Эксперты считают, что злоумышленники также могли использовать опубликованный файл JavaScript с регрессионным тестом для разработки эксплоита (или получить его у кого-то еще) и, вероятно, использовали CVE-2021-21224 в своих атаках.
PuzzleMaker
Помимо этих эксплоитов в этой цепочке атак используются и другие вредоносные модули. Один из них, стейджер, уведомляет об успешной эксплуатации уязвимости, а также загружает и запускает с удаленного сервера более сложный модуль, дроппер вредоносного ПО. Дроппер используется для установки двух исполняемых файлов, которые притворяются легитимными файлами ОС Microsoft Windows. Один из них представляет собой удаленный шелл, который может загружать и выгружать файлы, создавать процессы, уходить в сон на заданное время и удалять себя со скомпрометированного устройства.
«Мы не смогли атрибутировать эти целевые атаки ни одной из известных нам кибергрупп и поэтому присвоили авторам, стоящим за ними, новое название — PuzzleMaker. Мы будем пристально наблюдать за их дальнейшей деятельностью. В последнее время мы видели несколько волн подобных инцидентов с применением эксплоитов нулевого дня. Уязвимости нулевого дня продолжают оставаться самым эффективным методом заражения. Теперь, когда бреши, о которых шла речь, стали публично известными, возможно, мы увидим рост атак с их использованием. Вот почему очень важно, чтобы пользователи как можно скорее загрузили новейшие патчи от Microsoft», — комментирует Борис Ларин, эксперт по кибербезопасности «Лаборатории Касперского».