Хакер #305. Многошаговые SQL-инъекции
На конференции Security Analyst Summit аналитики «Лаборатории Касперского» поделились техническими подробностями и результатами многомесячного анализа, позволившего полностью раскрыть цепочку атаки кампании «Операция Триангуляция» (Operation Triangulation). В атаках использовалось пять уязвимостей, четыре из которых оказались ранее неизвестными уязвимостями нулевого дня.
«Операция Триангуляция»
Летом 2023 года ФСБ и ФСО России сообщили о «разведывательной акции американских спецслужб, проведенной с использованием мобильных устройств фирмы Apple». Вскоре после этого «Лаборатория Касперского» опубликовала развернутый отчет о целевых атаках, направленных на устройства, работающие под управлением iOS.
Эта кампания получила название «Операция Триангуляция» (Operation Triangulation) и, по данным исследователей, целью выявленных атак было «незаметное внедрение шпионского модуля в iPhone сотрудников компании — как топ-менеджмента, так и руководителей среднего звена». В компании сообщали, что эти атаки начались еще в 2019 году.
Для атак использовался сложный метод распространения эксплоитов — через сообщения в iMessage , который не требовал каких-либо действий от пользователей.
Ранее эксперты уже обнародовали детальный отчет о малвари TriangleDB, написанной на Objective-C, и рассказали, что имплант загружался на устройства после того, как атакующие получали root-права в результате успешной эксплуатации уязвимости в ядре iOS. Также специалисты посвятили отдельный отчет скрытности и инструментам, с помощью которых хакеры ее достигали, а также разобрали активность импланта после компрометации.
Как теперь рассказывают аналитики, первоначальной точкой входа на устройства жертв была уязвимость в библиотеке обработки шрифтов. Второй баг (очень опасный и простой в эксплуатации) был обнаружен в коде отображения памяти. Он позволяла получить доступ к физической памяти устройства. Еще двумя уязвимостями злоумышленники воспользовались для того, чтобы обойти новейшие средства аппаратной защиты процессора Apple.
Также выяснилось, что, помимо возможности удаленно заражать устройства под управлением iOS через iMessage, у злоумышленников была платформа для совершения атак через браузер Safari. Благодаря этому удалось обнаружить и исправить пятую из уязвимостей.
После уведомления от «Лаборатории Касперского» компания Apple официально выпустила обновления безопасности, которые устраняли четыре уязвимости нулевого дня, обнаруженные исследователями (CVE-2023-32434, CVE-2023-32435, CVE-2023-38606, CVE-2023-41990). Они затрагивали большое количество продуктов Apple, среди которых iPhone, iPod, iPad, устройства на Mac OS, Apple TV и Apple Watch.
Чтобы обнаружить эти уязвимости и понять, как действовали атакующие, исследователям пришлось проявить изобретательность. В частности, пришлось придумать методы, которые позволяли обойти шифрование злоумышленников. Задача осложнялась закрытостью iOS.
Например, чтобы извлечь вложение из iMessage (начало цепочки заражения) нужно было заполучить зашифрованный текст и ключ для шифрования AES . Первый компонент удалось добыть, перехватив трафик к серверам iCloud через mitmproxy. Проделать то же самое с ключом было нельзя, поскольку он отправляется по протоколу iMessage.
В итоге эксперты придумали способ нарушить процесс загрузки зашифрованного текста вложения, чтобы ключ сохранился в базе данных SMS.db. Для этого они изменили несколько байт в зашифрованном тексте с помощью дополнения для mitmproxy, а затем загрузили резервную копию iTunes с зараженного устройства (они использовались вместо полных образов устройств) и извлекли ключ из содержащейся в ней БД.
«Большинство проблем в нашем расследовании было вызвано шифрованием с открытым ключом, которое использовалось практически на всех этапах цепочки заражения. Для обхода шифрования пришлось написать дополнение для mitmproxy, которое на лету вносило исправления во вредоносный код и компрометировало исходные алгоритмы. Код первого варианта нашей утилиты насчитывал всего 30 строк. Когда мы закончили извлекать модули, в нем уже было около 400 строк. В начале нашей работы мы совершенно не предполагали, что код дополнения настолько разрастется», — рассказывают эксперты.