Процесс загрузки iPhone начинается с BootROM — кода, зашитого в SoC на этапе производства. Он выступает корнем доверия, проверяя криптографическую подпись следующего этапа загрузки. Этот компонент невозможно обновить после выхода устройства с завода.
Затем в работу вступает iBoot, который подготавливает ядро и проверяет подлинность образа системы. Механизм Secure Boot подтверждает авторство кода Apple, однако наличие подписи не гарантирует отсутствие ошибок в самом программном обеспечении.
Secure Enclave функционирует как изолированный компьютер внутри iPhone с собственной памятью и аппаратными ключами. Обработка пароля пользователя происходит через криптографическую процедуру, привязанную к уникальному секрету конкретного устройства, что усложняет перебор пароля.
Доступность данных зависит от состояния устройства: BFU (до первой разблокировки) и AFU (после нее). После ввода пароля и успешной аутентификации система переводит ключевые классы в состояние, позволяющее расшифровывать файлы для работы приложений.
Современная архитектура iOS строится на графе прав доступа, а не на простой иерархии привилегий. Даже при наличии root-прав процесс может не иметь доступа к аппаратным ключам или возможности исполнять неподписанный код, так как каждый компонент системы изолирован.
Технология Pointer Authentication (PAC) добавляет криптографические подписи к указателям для защиты от атак на повреждение памяти. Это вынуждает злоумышленников создавать цепочки из нескольких уязвимостей для обхода механизмов защиты и получения контроля над выполнением кода.






