Выбирай : Покупай : Используй

Вход для партнеров

Вход для продавцов

0

Миллионы iPhone и iPad на чипах Apple A12 и A13 оказались уязвимы. Сделать ничего нельзя


Двойной корень одной проблемы

Эксперты по безопасности из Paradigm Shift опубликовали доказательство того, что можно взломать iPhone и iPad на чипах A12 и A13 через неустранимую ошибку в их базовой защитной системе. Исправить эту ошибку нельзя — она заложена в железо.

Проблемный код записывается в кремниевую микросхему на этапе производства, поэтому обновления ПО не оказывают на него никакого воздействия. Следовательно, исправить ошибку невозможно.

Исследователи отмечают, что их эксплойт использует не только эту проблему, но и аппаратный «баг» в USB-контроллерах.

Миллионы iPhone и iPad на чипах Apple A12 и A13 оказались уязвимы

Для эксплуатации этой ошибки требуется физический доступ, при этом само устройство должно находиться в режиме DFU (обновления базовой программной оболочки) и быть подключено через USB к специализированной плате микроконтроллера на базе RP2350. При соблюдении всех этих условий эксплойт срабатывает до проверки загрузочных компонентов Apple.

«Таким образом, это не та уязвимость, которую можно использовать "на лету": для этого потребуется специализированное оборудование, — отмечает Александр Зонов, эксперт по информационной безопасности компании SEQ. — Это ограничивает "площадь поражения": эксплуатировать уязвимость смогут разве что спецслужбы или особенно продвинутый и целеустремленный киберкриминал».

Проблема проистекает из аппаратного «бага» в USB-контроллерах Synopsys DWC2 и того, как настраивается USB DART (таблица разрешения адресов устройств, блок управления памятью ввода-вывода указанного чипа) внутри SecureROM.

Контроллер сохраняет входящие USB-пакеты через DMA (прямой доступ к памяти), до трех пакетов на буфер, а затем сбрасывает указатель записи на четвертом, уменьшая его на фиксированные 24 байта. Он также принимает пакеты уменьшенного размера, увеличивая указатель только на фактически записанные байты. Это несоответствие приводит к повторяющемуся переполнению буфера, перемещая указатель записи назад по памяти на 12 байт за раз.

На затронутых устройствах под управлением A12 и A13 настройка USB DART в SecureROM производится в режиме обхода (bypass mode), поэтому указатель DMA с переполнением может достичь и перезаписать произвольную память SRAM.

В устройствах на базе A11 USB-драйвер принудительно сбрасывает DMA-адрес после каждого пакета, поэтому указанное выше несоответствие не накапливается. Начиная с A14 эта проблема отсутствует, поскольку таблица DART там настраивается корректно.

Неубиваемые умные часы: лучшие модели с защитой от воды и ударов

Как указывают исследователи, проще всего эксплуатировать уязвимость на A12: там буфер DMA располагается рядом с USB-стеком в куче (термин из области программирования). Перезапись сохраненного регистра связи (link register) передает злоумышленнику управление счетчиком команд при следующем переключении контекста.

В A13 аутентификация указателей (PAC) защищает адреса возврата, хранящиеся в стеке, поэтому эксплуатация производится поэтапно. Повреждение структур кучи, связанных с DART, приводит к ограничению примитивов записи. Перезапись счетчика глубины «паники» заставляет микросхему зацикливаться на ошибках вместо перезагрузки. Тщательный контроль времени записи DMA позволил избежать перезаписывания сохраненных регистров задачи USB.

На заключительном этапе перезаписывается указатель обработчика прерывания USB в BSS. При следующем прерывании USB выполняется код, внедренный атакующими. Выполнение завершается на уровне EL1 — привилегированном режиме исполнения внутри SecureROM.

Уязвимость получила условное наименование usbliter8.

Что получает злоумышленник

С ее помощью потенциальный злоумышленник может внедрить собственный обработчик запросов USB и вставить строку «PWND:[usbliter8]» в последовательный порт USB устройства.

После этого появляется возможность временно понизить статус SoC до производственного режима или загрузить необработанный, неподписанный образ iBoot без проверки подписи, полностью выйдя за рамки цепочки доверия Apple.

Исследователи указывают, что успешная эксплуатация usbliter8 не приводит к компрометации Secure Enclave — криптографического сопроцессора, который функционирует как отдельная подсистема, отвечающая за защиту устройства и обработку данных шифрования и биометрии.

Однако, по мнению авторов исследования, если у потенциальных злоумышленников появляется контроль над оболочкой SecureROM, теоретически могут возникнуть и новые способы компрометации Secure Enclave.

К настоящему моменту Apple не выпустила никаких бюллетеней об уязвимости, хотя вся информация о ней была предоставлена вендору заранее. Ни CVE, ни оценки угрозы CVSS для usbliter8 также пока не присвоены.