21 модель iPhone под угрозой. Рассказываем, как работает коммерческое шпионское ПО нового поколения

leer en español

21 модель iPhone под угрозой. Рассказываем, как работает коммерческое шпионское ПО нового поколения

Обновитесь до iOS 17 или готовьтесь к слежке.

image

Коммерческое шпионское ПО Predator оказалось куда изобретательнее, чем считалось раньше. Программа не просто пробирается в систему iPhone, а буквально использует внутренние механизмы процессора, чтобы получить полный доступ к памяти ядра и незаметно следить за пользователем. Специалисты из Jamf Threat Labs разобрали новые образцы Predator и показали, как устроен его основной «двигатель» взлома. Речь идёт о сложной цепочке атак, которая позволяет обойти защиту iOS и закрепиться на уровне ядра системы.

В центре всей схемы находится механизм с названием FDGuardNeonRW. Он позволяет читать и записывать данные прямо в память ядра. Для этого Predator использует векторные регистры NEON – часть процессора, предназначенную для параллельных вычислений. Вместо обычных задач шпионское ПО превращает регистры в скрытый канал передачи данных. За один запрос удаётся получить более 500 байт информации из памяти ядра, а запись данных подтверждается через проверку результата.

Чтобы закрепиться в системе, Predator приходится обходить защиту указателей, внедрённую в процессоры Apple начиная с iPhone XS. Эта технология проверяет целостность адресов функций и должна ломать любые попытки подмены. Однако шпионское ПО нашло обходной путь. Вместо создания собственного механизма подписи Predator ищет нужный фрагмент кода прямо внутри системного компонента JavaScriptCore. Найденная последовательность инструкций позволяет подделывать подписи указателей и перенаправлять выполнение кода.

Чтобы ускорить работу, Predator заранее создаёт таблицу из 256 подписанных указателей. Благодаря этому при перехвате функций не требуется тратить время на криптографические операции – нужное значение берётся из кэша практически мгновенно.

Ещё один ключевой элемент – механизм удалённого выполнения функций. Он позволяет запускать код внутри других процессов, подменяя состояние потоков через системные сообщения. После выполнения функции управление автоматически возвращается к шпионскому ПО, что даёт возможность повторять операцию сколько угодно раз.

Архитектура Predator разделена на несколько процессов. Один отвечает за управление, другие – за слежку. Чтобы все части могли работать с памятью ядра, используется специальный механизм передачи прав доступа. Он связывает процессы через файловые дескрипторы и системные порты, фактически «раздавая» доступ к ядру внутри заражённого устройства.

Отдельно реализована работа с методами Objective-C. Если нужная функция находится в пользовательском приложении и её адрес меняется из-за рандомизации, Predator определяет правильный адрес прямо в целевом процессе. Для этого снова используется тот же механизм удалённого выполнения.

Шпионское ПО поддерживает 21 модель iPhone – от iPhone XS до iPhone 14 Pro Max. Для каждой группы устройств предусмотрены свои параметры, включая точные смещения в структурах ядра. Если устройство не подходит, программа просто прекращает работу, чтобы не вызвать сбой системы.

Атака рассчитана на устройства с iOS ниже версии 17. В более новых моделях Apple изменила архитектуру управления памятью, что осложняет подобные техники. Тем не менее разбор показывает, насколько далеко продвинулись разработчики коммерческого шпионского ПО. Основные усилия уходят уже не только на поиск уязвимостей, а на создание устойчивых и незаметных механизмов работы внутри системы после взлома.

FREE
100%
Кибербезопасность · Обучение
УЧИСЬ!
ИЛИ
ВЗЛОМАЮТ
Лучшие ИБ-мероприятия
и вебинары — в одном месте
ПОДПИШИСЬ
T.ME/SECWEBINARS