newtoplogo

Использование хешей SHSH в iOS 5 и новее

Старая схема подписывания SHSH

Вплоть до выхода iOS 5.0 осенью 2011 года наличие хешей SHSH давало гарантированную возможность откатить любой гаджет на любую старую версию iOS. Но потом в Apple существенно модифицировали систему подписывания прошивок. Напомним, раньше прошивание осуществлялось по простой схеме:

Подписывание прошивок хешами SHSH

Но если прежде iTunes передавал на сервер Apple только идентификатор устройства и версию прошивки, то теперь перед прошиванием iOS-устройство генерирует случайное число, которое тоже участвует в создании хеша SHSH. Этот новый тип хеша называется APTicket.

Подписывание прошивок хешами APTicket

Последствия внедрения хешей APTicket

Последствия оказались весьма серьёзными. Раньше хеш SHSH не имел срока годности и мог использоваться неограниченное число раз. Начиная с iOS 5.0, любой хеш SHSH действителен только один раз. При следующей перезагрузке iOS-гаджет сгенерирует новое случайное число, и старый хеш к нему уже не подойдёт. Расшифровать хеши APTicket практически невозможно - для этого необходимо взломать ключ безопасности Apple, а сделать это можно лишь перебором (брутфорсом).

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

Борьба с проверкой хешей APTicket

Как выяснилось, проверку APTicket тоже можно обойти, но лишь на устройствах с процессорами Apple A4 и слабее - на iPhone 3G, iPhone 3GS, iPhone 4, iPod touch 3G, iPod touch 4G, iPad 1G и Apple TV 2G. В ходе прошивания этих устройств можно отключить генерирование случайного числа и заставить iTunes принять старый хеш от этого же устройства.

Кроме того, во всех прошивках iOS 5.x найдена уязвимость, которая открывает дополнительные возможности для отката прошивок даже на новых устройствах Apple. iPad 2, iPad 3 и iPhone 4S могут быть прошиты на любую версию iOS 5.x с любой другой версии iOS 5.x при соблюдении двух условий:

  • у вас должны быть хеши SHSH от той версии iOS, с которой вы прошиваетесь, и той версии iOS, на которую вы прошиваетесь
  • прошивка, которая установлена у вас сейчас, не должна быть установлена через обновление по воздуху. Если вы обновлялись или восстанавливались на неё через iTunes, то всё нормально

Возможен ли откат с iOS 6?

Подытожим написанное выше:

  • iPhone 3G, iPhone 3GS, iPhone 4, iPod touch 3G, iPod touch 4G, iPad 1G и Apple TV 2G можно откатить с iOS 6 (для Apple TV это ПО 5.1) на любую старую версию iOS при условии, что у вас есть хеши SHSH от этой старой версии
  • iPad 2 можно откатить с iOS 6 на iOS 4.3.x при условии наличия хешей от четвёртых прошивок
  • iPad 2 можно откатить с iOS 6 на iOS 5.x при одновременном наличии у вас хешей от любой прошивки iOS 4.3.x и той прошивки 5.x, на которую вы хотите откатиться
  • iPhone 4S и iPad 3 откатить с iOS 6 невозможно, даже при наличии всех хешей. Для этих гаджетов откат прошивок возможен только в пределах iOS 5.x
  • iPhone 5, iPod touch 5G, iPad mini и iPad 4 невозможно откатить с iOS 6, потому что это прошивки iOS 5.x для этих устройств не выпускались
  • Для всех более новых устройств единой нормальной методики отката прошивок пока, увы, тоже не существует

Получить мануал по нужному вам методу отката вы можете в нашей Энциклопедии джейлбрейка и анлока. Нажмите на ссылку "1. Выбор платформы и гаджета" наверху этой страницы, выберите вашу операционную систему, ваше устройство, затем - его модель и нужную вам версию iOS. Затем вам останется выбрать подходящую вам альтернативу в секции "Методы прошивания".

Поделитесь страницей через социальные сети