Используемый Pegasus эксплойт 0-click для iPhone признали крайне сложным

Используемый Pegasus эксплойт 0-click для iPhone признали крайне сложным

Используемый Pegasus эксплойт 0-click для iPhone признали крайне сложным

Эксперты Google Project Zero представили результаты разбора эксплойта, с помощью которого на iPhone активистов в Саудовской Аравии была установлена программа-шпион Pegasus. Как оказалось, разработчики из NSO Group потрудились на славу: созданный ими инструмент взлома аналитики признали одним из самых сложных на их памяти.

Исследование подтвердило, что точкой входа для Pegasus являлось приложение iMessage, которое Apple по умолчанию предустанавливает на iPhone и iPad. Эксплойт NSO Group, известный как FORCEDENTRY, заточен под RCE-уязвимость CVE-2021-30860, привязанную к iOS-фреймворку CoreGraphics (устранена в сентябре, с выпуском iOS 14.8).

Проблема проявлялась при парсинге PDF-файлов. Однако в чатах больше популярны «гифки», и для рендеринга разношерстных изображений как GIF мессенджер Apple использует API CoreGraphics. При этом на основе исходной картинки создается файл с расширением .gif, но при парсинге содержимого оно игнорируется.

Создатели FORCEDENTRY учли этот трюк с фейковыми GIF и спрятали свой код в PDF-файле, но, со слов Project Zero, сделали это очень нетривиально. Обычно в таких случаях злоумышленники вставляют в документ Javascript, но Apple использует устаревший кодек для сжатия черно-белых изображений — JBIG2, который не умеет обрабатывать скрипты.

Специалисты NSO Group создали собственный механизм запуска эксплойта — небольшой CPU (регистры, 64-битный сумматор, компаратор), работу которого способен эмулировать JBIG2. Выполнение побитовых операций при этом осуществляется с использованием более 70 тыс. специальных команд.

Процесс не столь быстр, как в случае с Javascript, но позволяет получить искомый результат — автоматическую загрузку эксплойта с выходом за пределы песочницы Apple. Исследователи также не преминули отметить, что FORCEDENTRY работает в фоновом режиме, не требуя участия жертвы — такого, как клик по вредоносной ссылке.

Проблема шпионского софта Pegasus последнее время часто обсуждается, и не только в СМИ. Чтобы уберечь своих пользователей от подобного шпионажа, Apple недавно обратилась в суд с просьбой ограничить злоупотребление ее продуктами и сервисами со стороны NSO Group. Перед этим в США ввели экспортные ограничения по разработкам этой израильской компании.

Android запретит доступ к экрану «лишним» приложениям

Google, похоже, готовит ещё одно нововведение по части безопасности Android. В тестовой сборке Android Canary 2602 обнаружена новая функция для Advanced Protection Mode — режима «максимальной защиты», который компания представила в Android 16.

Теперь Advanced Protection Mode может ограничивать работу приложений, использующих AccessibilityService API, если они не классифицированы как инструменты для доступности.

AccessibilityService API — это мощный механизм Android, изначально созданный для помощи людям с ограниченными физическими возможностями. С его помощью приложения могут читать содержимое экрана, отслеживать действия пользователя и даже выполнять жесты от его имени.

Именно поэтому этот API часто становился инструментом атакующих. За последние годы многие приложения — от автоматизаторов и лаунчеров до «оптимизаторов» и антивирусов — использовали его для обхода системных ограничений. Формально ради удобства, однако на деле получая очень широкие права.

Google постепенно ужесточала политику. Приложения, действительно предназначенные для помощи людям с ограниченными возможностями, должны указывать специальный атрибут isAccessibilityTool. К ним относятся экранные дикторы, системы управления жестами, голосовой ввод, брайлевские интерфейсы и другие специализированные инструменты.

По данным аналитиков, в новой версии Android Canary  при включении Advanced Protection Mode система:

  • запрещает выдавать разрешение Accessibility Service приложениям, не признанным Accessibility Tools;
  • автоматически отзывает уже выданные разрешения у таких приложений.

Если приложение сильно зависит от этого API, оно просто перестанет работать.

В тестах, например, приложение dynamicSpot (эмулирующее Dynamic Island на Android) становилось недоступным: пункт был с пометкой «Restricted by Advanced Protection». Причина простая: оно использует AccessibilityService для чтения уведомлений и отображения поверх других приложений.

Инструменты, официально классифицированные как средства доступности, под ограничения не попадают.

RSS: Новости на портале Anti-Malware.ru