Найдена уязвимость в bootrom всех устройств Apple с чипами с A5 по A11

Исследователь axi0mX нашёл уязвимость в загрузчике bootrom устройств Apple, который работает на самой первой стадии загрузки, а затем передаёт управление iBoot. Уязвимость получила имя checkm8 и позволяет получить полный контроль над устройством. Опубликованный эксплоит потенциально может использоваться для обхода верификации прошивок (Jailbreak), организации двойной загрузки других ОС и разных версий iOS.

Проблема примечательна тем, что Bootrom находится в доступной только на чтение NAND памяти, что не позволяет устранить проблему в уже выпущенных устройствах (уязвимость можно исправить только в новых партиях устройств). Проблема проявляется в SoC с A5 по A11, используемых в продуктах, созданных с 2011 по 2017 год, начиная с iPhone 4S и заканчивая моделями iPhone 8 и X.

Предварительный вариант кода для эксплуатации уязвимости уже интегрирован в открытый (GPLv3) инструментарий ipwndfu, предназначенный для снятия привязки к прошивкам Apple. Эксплоит пока ограничивается функциями создания дампа SecureROM, расшифровки ключей для прошивок с iOS и включения JTAG. Полный автоматизированный jailbreak последнего выпуска iOS возможен, но пока не реализован, так как требует дополнительной работы. В настоящее время эксплоит уже адаптирован для SoC s5l8947x, s5l8950x, s5l8955x, s5l8960x, t8002, t8004, t8010, t8011 и t8015б, а в будущем будет расширен поддержкой s5l8940x, s5l8942x, s5l8945x, s5l8747x, t7000, t7001, s7002, s8000, s8001, s8003 и t8012.