Xakep #305. Многошаговые SQL-инъекции
Эксперты «Лаборатории Касперского» рассказали о сложной кампании северокорейской хак-группы Lazarus. Для атак на пользователей по всему миру злоумышленники создали вредоносный сайт танковой DeFi-игры, в которой якобы можно было получать награды в криптовалюте. С его помощью хакеры эксплуатировали уязвимость нулевого дня в браузере Google Chrome (CVE-2024-4947).
Исследователи рассказывают, что в мае 2024 года они обнаружили новый вариант бэкдора Manuscrypt на машине одного из клиентов в России.
В компании напоминают, что Manuscrypt представляет собой полнофункциональный бэкдор, который Lazarus применяет как минимум с 2013 года. Он использовался более чем в 50 уникальных кампаниях, направленных на правительственные учреждения, дипломатические ведомства, финансовые институты, подрядчиков в сфере ВПК, криптовалютную индустрию, IT- и телекоммуникационные компании, разработчиков игр, СМИ, казино, университеты, ИБ-исследователей и так далее.
Так как Lazarus редко атакует физических лиц, это вызвало интерес у специалистов, и они решили изучить этот случай более внимательно. Выяснилось, что заражению предшествовала атака на 0-day уязвимость в браузере Chrome.
Расследование выявило, что эксплуатация уязвимости уходила корнями к сайту detankzone[.]com (в настоящее время заблокирован), на котором рекламировалась основанная на NFT танковая MOBA-игра под названием DeTankZone.
На сайте пользователям предлагали скачать пробную версию игры, в основе которой лежала модель Play-To-Earn. Суть игры заключалась в сражениях на виртуальных NFT-танках с соперниками по всему миру, за что якобы можно было получать награды в криптовалюте. Отмечается, что игру при этом действительно можно было запустить, однако ничего не работало после экрана входа/регистрации, поскольку внутренняя инфраструктура была отключена.
Интересно, что в итоге исследователи нашли реальную игру (DeFiTankLand), которая, по всей видимости, послужила прототипом для вредоносной версии. Хакеры практически полностью повторяли ее дизайн: отличия заключались лишь в расположении логотипа и более низком качестве визуального оформления. Предполагается, что за основу был взят украденный исходный код, и атакующие лишь заменили логотипы и убрали все отсылки к реальной игре.
Причем вскоре после того как хакеры запустили кампанию по продвижению своей игры, разработчики реального прототипа заявили, что с их кошелька было похищено 20 000 долларов США в криптовалюте. И хотя разработчики обвинили в произошедшем инсайдера, исследователи полагают, что атака могла быть делом рук Lazarus. И прежде чем украсть криптовалюту, хакеры похитили исходный код игры.
Участники Lazarus несколько месяцев рекламировали DeTankZone в социальных сетях, включая X, в фишинговых письмах и с премиум-аккаунтов в LinkedIn, которые использовались для прямых атак на конкретных пользователей. Также злоумышленники пытались привлечь для рекламы игры инфлюенсеров из сферы криптовалют, а затем, предположительно, предпринимали попытки атаковать и их аккаунты.
Но игра была только прикрытием и не была вредоносной сама по себе. На самом деле сайт DeTankZone содержал скрытый скрипт (index.tsx), который позволял загрузить и выполнить эксплоит для Chrome. Эксплоит содержал код для двух уязвимостей: первая используется для чтения памяти процесса Chrome и записи в нее с помощью JavaScript, а вторая — для обхода песочницы V8.
Специалисты пишут, что одной из уязвимостей была 0-day CVE-2024-4947, представляющая собой ошибку несоответствия используемых типов данных в движке V8 от Google на открытом исходном коде JavaScript и WebAssembly. Она позволяла получить контроль над устройством жертвы: выполнять произвольный код, обойти защитные функции и осуществлять вредоносную активность.
После того как «Лаборатория Касперского» сообщила об уязвимости представителям Google, проблема была устранена в мае 2024 года.
При этом отмечается, что для заражения устройства было достаточно просто зайти на сайт, начинать и запускать саму игру не требовалось.
Еще одну уязвимость атакующие использовали для обхода песочницы V8 в Google Chrome. По словам исследователей, эта проблема (330404819) была обнаружена и исправлена еще в марте 2024 года.
Шелл-код, который затем использовался Lazarus, служил в качестве инструмента разведки, помогая хакерам определить ценность взломанной машины и решить, стоит ли продолжать атаку далее. Код собирал информацию о процессоре, BIOS и ОС, выполнял антивирусные и антиотладочные проверки и отправлял собранные данные на управляющий сервер злоумышленников.
Изучить последующие шаги хакеров не удалось, так как на момент проведения анализа Lazarus уже удалила эксплоит с сайта-приманки.
«Мы видели уже много кампаний, направленных на получение финансовой выгоды, однако этот случай уникален. Злоумышленники вышли за рамки обычных методов: они использовали в качестве прикрытия полнофункциональную игру, чтобы заражать устройства путем эксплуатации уязвимости нулевого дня в Google Chrome. Если речь идет об атаке такой кибергруппы, как Lazarus, даже такие, казалось бы, безобидные действия, как переход по ссылке в соцсети или в электронном письме, могут привести к полной компрометации компьютера или всей корпоративной сети. Злоумышленники приложили множество усилий для разработки этой кампании, что свидетельствует об амбициозности их планов. Потенциально атаки могут затронуть пользователей и организации по всему миру», — комментирует Борис Ларин, ведущий эксперт Kaspersky GReAT.