Эксперты «Лаборатории Касперского» провели технический анализ инструмента TriangleDB, работающего в памяти мобильных устройств на iOS. Это шпионский имплант для заражения iPhone вредоносным ПО под названием «Операция Триангуляция» (Operation Triangulation).
В начале июня 2023 года эксперты из «Лаборатории Касперского» раскрыли механизм целевой кибератаки с использованием iPhone, который был задействован для незаметного внедрения шпионского модуля на многие смартфоны Apple. Руководитель компании Евгений Касперский подтвердил в своём блоге факт целевой кибератаки на мобильные устройства на iOS сотрудников компании. Целью атаки было незаметное внедрение шпионского модуля в различные iPhone топ-менеджеров и руководителей среднего звена «Лаборатории Касперского».
Техническое описание атаки Operation Triangulation. Также эксперты «Лаборатории Касперского» переслали в ИБ-отдел Apple информацию по Operation Triangulation.
«Лаборатория Касперского» разработала утилиту triangle_check для ПК на операционных системах Windows и Linux, с помощью которой пользователи могут проверить свой iPhone (бэкап системы) на факт заражения вредоносным ПО Operation Triangulation.
В «Лаборатории Касперского» пояснили:
без проверки резервной копии с помощью утилиты выявить взлом iPhone можно, но намного сложнее, так как надо анализировать трафик от смартфона и обладать навыками сетевого специалиста;
какие именно данные передаются вовне, непонятно, так как они зашифрованы с помощью SSL и дополнительно ещё своим алгоритмом;
iOS 15 неуязвима для Operation Triangulation, начиная с версии 15.7.5. Насчёт iOS 16 — пока непонятно, продолжаются исследования эксплойта. В его коде есть заготовки под iOS 16, а на iOS 16.2 некоторые эксплойты перестают работать;
все центры управления атакой находятся на публичных хостингах Amazon или за Cloudflare, никаких языковых указаний в коде не обнаружено;
чтобы обезопасить устройство от заражения, нужно отключить iMessage в настройках или переключиться в Lockdown Mode, установить все последние обновления iOS, убедиться в том, что они установились, и только тогда перезагрузить устройство;
на некоторых устройствах после перезагрузки периодически происходит повторное заражение, если не предпринимать нужных действий по его избежанию;
у компании ещё много компонентов атаки, кода, которые нужно проанализировать. Эксперты продолжают всё это исследовать, описывать, документировать и публиковать информацию.
21 июня 2023 года эксперты «Лаборатории Касперского» в новом отчёте по этому инциденту раскрыли, как атакующие собирали данные с устройств жертв в ходе заражения по схеме «Операция Триангуляция». Для этого злоумышленники использовали шпионский имплант под названием TriangleDB. Это вредоносное ПО предоставляет третьим лицам возможности скрытого наблюдения за iPhone и работает исключительно в памяти устройства. Все следы его работы удаляются при перезагрузке устройства.
Имплант TriangleDB внедряется после успешной эксплуатации уязвимости ядра системы на базе на iOS для получения привилегий суперпользователя на iPhone. Если жертва перезагружает смартфон, то злоумышленники заново точечно заражают определённую систему, отправив новый iMessage с вредоносным вложением. Если перезагрузка не произойдёт, то имплант автоматически удалится через 30 дней, если злоумышленники не продлят этот срок в рамках проведения своей атаки.
Эксперты выяснили. что имплант TriangleDB написан на Objective-C (языке программирования, который при компиляции сохраняет имена, которые разработчики присвоили методам и атрибутам классов). Имплант удалённо может выполнять 24 команды, которые позволяют злоумышленникам создавать, менять, красть и удалять файлы с iPhone, управлять процессами на смартфоне, извлекать элементы связки ключей для сбора уёетных данных и вести мониторинг геолокации пользователя устройства.
В исполняемом файле импланта TriangleDB имена методов необфусцированы, однако имена атрибутов классов представляют собой неинформативные аббревиатуры, что затрудняет понимание их предназначения. В некоторых случаях можно догадаться, что значат сокращения. Например, osV — версия iOS, а iME — IMEI-идентификатор устройства.
Строки в импланте закодированы в шестнадцатеричном виде и зашифрованы алгоритмом Rolling XOR.
Код алгоритма Rolling XOR, применяемого для расшифровки строк импланта.
После заражения устройства и запуска атаки имплантTriangleDB начинает общаться с командным сервером, используя библиотеку Protobuf для обмена данными. Конфигурация импланта содержит два сервера: основной и резервный. В штатном режиме работы имплант использует основной сервер, а в случае возникновения ошибок соединения переключается на резервный, вызывая для этого метод -[CRConfig swapLpServerType:].
Также отправляемые и получаемые сообщения шифруются при помощи симметричной (3DES) и асимметричной (RSA) криптографии. Обмен сообщениями происходит при помощи протокола HTTPS: данные передаются в POST-запросах, содержащих cookie с именем g и значением, прописанным в параметре конфигурации pubKI, представляющем собой строку из цифр.
Имплант периодически отправляет на сервер heartbeat-сообщения, содержащие в том числе версию зловреда, идентификаторы устройства (IMEI, MEID, серийный номер и т.д.), а также конфигурацию службы обновлений (информация о том, включена ли на устройстве автоматическая загрузка и установка обновлений).
Часть heartbeat-сообщения, отправляемого имплантом версии 1.7.0.5 на iOS 15.3.1
Сервер в ответ на heartbeat-сообщения от импланта отправляет команды, передаваемые как сообщения Protobuf, имена которых начинаются с префикса CRX. Имена этих команд имеют неоднозначный смысл, например, команда для получения списка файлов в директории, называется CRXShowTables (показать таблицы), а для изменения адресов командных серверов используется команда CRXConfigureDBServer (настроить сервер базы данных).
В коде импланта различным сущностям даны имена из терминологии баз данных. Именно использование этой терминологии побудило экспертов «Лаборатории Касперского» назвать имплант TriangleDB.
Во время анализа импланта эксперты «Лаборатории Касперского» обнаружили, что у класса CRConfig (хранящего конфигурацию импланта) есть метод populateWithFieldsMacOSOnly. Этот метод не вызывается в iOS-версии импланта, однако его существование может означать, что схожий имплант используется в атаках на macOS.
По информации исследователей, имплант запрашивает набор прав (англ. entitlements) у операционной системы. Некоторые из них не используются в коде, например, доступ к камере, микрофону, адресной книге или же взаимодействие через Bluetooth. Функции, доступ к которым позволяют получить эти права, могут быть использованы в дополнительных модулях в рамках проведения атаки.
Эксперты «Лаборатории Касперского» пояснили, что продолжают анализировать кампанию «Операция Триангуляция», а также будут делиться информацией об этой сложной атаке по мере продолжения своих исследований и получения новых результатов.
Источник новости: habr.com