Информационная безопасность компьютерных систем и защита конфиденциальных данных
SecuRRity.Ru » Статьи » Об эксплоитах для iOS, bootrom и конфликте с Geohot
Статьи

Об эксплоитах для iOS, bootrom и конфликте с Geohot

автор: Administrator | 10 октября 2010, 20:27 | Просмотров: 9089
теги: Джейлбрейк, iOS, Apple



Об эксплоитах для iOS, bootrom и конфликте с Geohot Недавний релиз джейлбрейк от Geohot'а1 для устройств на базе Apple A42 вызвал большой резонанс в кругах Dev Team3. Большинство разработчиков упрекало Джорджа Хотца в эгоистичности его намерений, тщеславии и недальновидности. Почему же это произошло?

limera1n — untethered джейлбрейк от Geohot использует вторую известную уязвимость в bootrom всех новых iOS устройств. Ранее, в сентября этого года, члены Dev Team pod2g и posixninja раскопали и частично документировали первую известную уязвимость в bootrom Apple A4 устройств. Теперь Apple известно о существовании обоих уязвимостей, которые, вероятно, будут закрыты со следующей аппаратной ревизией устройств.

Все дело в том, что bootrom (или SecureROM) — это небольшой загрузчик, который вызывается iPhone/iPad как только вы включаете устройство. Bootrom обычно прошит в read-only NAND (флеш-память), который прошивается на заводе при изготовлении устройства. Все последующие обновления iOS никак не затрагивают этот участок памяти: обновить bootrom возможно только с новой аппаратной ревизией устройств. Вот почему все найденные уязвимости в данном участке кода стратегически важны.

После завершения работы bootrom передает управление загрузчику iBoot. iBoot — это загрузчик второй стадии, задача которого провести частичную инициализацию устройства, загрузить ядро iOS и передать ему управление. iBoot легко перешивается при обновлении iOS, по этому все найденные в нем уязвимости носят временный характер.

Весь цепочечный процесс загрузки iOS выглядит приблизительно так:
bootrom —> iBoot —> iOS

Открытая уязвимость в bootrom всегда является гарантией того, что рано или поздно джейлбрейк будет осуществлен. Уязвимости в iBoot или iOS ненадежны и закрываются Apple при обновлении iOS. Кроме того джейлбрейк, который выполняется посредством уязвимости в iBoot как правило является tethered, т.е. после перезагрузки устройства джейлбрейк необходимо выполнить заново.

После спешного релиза limera1n Dev Team отложили выход greenpois0n для того, чтобы скрыть реализацию эксплоита bootrom — SHAtter до следующего поколения устройств.

_____________
1 Geohot он же Джорж Хотц — юный хакер, в 17 лет, если не ошибаюсь, он первым сделал unlock для iPhone, правда для этого нужно было физическое вмешательство в телефон, потом уже выпускал разные программные решения для unlock`а и джейлбрейк`а. Также же занимается ломкой PS3.

2 Apple A4 — микропроцессор от Apple, он ARM (Cortex-A8 с небольшими плюшками) и в нем есть GPU. Впервые появился в iPad, теперь стоит и в iPhone 4, Apple TV, последних iPod Touch. По поводу бага — железо тоже имеет свои баги, как и софт ярчайшим примером например было когда два года назад Крис Касперски собирался продемонстрировать удаленный взлом win/*nix. Т.е. не важно какая ОС, главное было что работа происходит на процессоре Intel. Поскольку взлом был заранее анонсирован, Intel успели связаться с Крисом и пообещали исправить самые критические ошибки. Например одна из ошибок — проблемы с синхронизацией кеша на многоядерных процах, вовсе не обязательно пытаться сделать переполнение буфера в программе, чтобы перекинуть управление на свой участок кода.

3 Dev Team — кодокопатели и программисты, на самом деле iPhone Dev Team, занимаются как раз «взломом» и возможностью писать под iOS без контроля со стороны Apple.


источник:
habrahabr.ru

автор:
DaemonI
Обратная связь

Информация


Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.