Как подписать не подписываемые apple прошивки

Нужно понизить прошивку? «Выцепи» цифровые подписи!

Неоднократные просьбы о помощи в «откате» на предыдущую версию прошивки iДевайсов для которой имеется unlock или джейлбрейк, панические сообщения о том, что пользователи неосторожно обновились до актуальной версии прошивки, для которой еще не реализованы инструменты для анлока и джейлбрейка — все это вызывает необходимость описать процесс без которого откат на предыдущие версии iOS становится невозможным. Поехали!

Для того, чтобы понять необходимость получения и бережного и надежного хранения цифровых подписей, именуемых SHSH blobs, нужно понять, что же такое эти самые цифровые SHSH подписи.

Для тех, кто не в теме, «SHSH blobs» — организованная и последовательная система HASH подписей, на «родном» английском звучит как — Signature HaSH blobs, разработанная компанией Apple Inc. с целью предотвращения понижения версий iOS на на своих устройствах: iPhone, iPad и iPod.

Зачем компании Apple организовывать подобную систему и следить за ее работоспобностью, то и дело устряняя ошибки в работе и совершенствуя алгоритм? Все просто, для того, чтобы четко контролировать все процессы реализуемые с iДевайсами, которые «заточены» под операторов. Не секрет, что компания Apple заключила и продолжает заключать эксклюзивные контракты с операторами мобильной связи блокируя работу своих аппаратов в сотовых сетях других операторов. Хотите купить аппарат от Apple дешевле, будьте добры заключите контракт с оператором мобильной связи на год, а то и два, и получите iPhone практически бесплатно. Вот для того, чтобы закрыть возможность работы своих аппаратов в сетях других операторов и организована система идентификации цифровых подписей устройств. Игра в догонялки продолжается с момента появления первых iOS, Apple создает новую прошивку, хакеры ее ломают и реализуют инструменты позволяющие разблокировать аппараты. Снова новая версия прошивки, снова новый инструмент. Понимаете закономерность? Если не контролировать и не ограничивать процесс отката прошивок, теряется эффективность блокировки аппарата на одного оператора. Имеются и второстепенные причины, но данная статья не об этом.

Итак мы уже определились с тем, что же представляют собой цифровые подписи SHSH, поняли, надеюсь, важность наличия этих самых подписей для различных версий прошивок. Вопрос остается лишь в том, как получить эти подписи и как их сохранить? К счастью инструменты для этого имеются и они эффективны. Об одном таком инструменте и пойдет речь в данной статье, зовется он TinyUmbrella.

Как это работает?
Запустите исполнительный файл вида

скачанный по ссылке ниже;

Окно предупреждения о том, что программа настроена на получения цифровых подписей с сервером Cydia, и в случае если сервер не сможет надежно выполнить запрос, могут возникнуть сложности в получении этих самых подписей. Не страшно, просто нажмите «ОК»;

Следующее окно и снова предупреждение. Суть в том, что утилита настроена так, что при ее закрытии, будет модифицироваться файл Host, расположенный по пути — «C:\Windows\System32\drivers\etc\«, который и отвечает за правильную адресацию запросов iTunes на серверы Apple.

Для чего нужна переадресация на сервер Cydia, которую и выполняет утилита? Для того, чтобы «обмануть» iTunes, который будет получать ответ о наличии и правильности цифровой подписи при «откате» прошивки не с сервера Apple, на котором уже запрещен откат, а с сервера Cydia, на котором цифровые подписи и хранятся. Иными словами iTunes будет считать, что обращается к серверу Apple, а на самом деле получать ответ он будет с сервера Cydia. Утилита предупреждает, что при восстановлении на официальную актуальную версию прошивки, нужно в настройках программы изменить соответствующую настройку, но в этом случае произойдет повышение версии прошивки модема и если ваш аппарат был заблокирован под одного оператора, вы потеряете возможность использовать его со всеми другими операторами. Не спешите обновлять прошивку до актуальной версии;

Главное окно программы. Здесь мы остановимся подробнее.
Закладка «General» — несет в себе информацию о полученных SHSH подписях, список «All Saved SHSHs»; модели подключенного к ПК аппарата — «Device Model»; установленной на нем прошивки или iOS — «Installed Firmware Version«; коды ECID (Dec), ECID (Hex), их запоминать и записывать нет нужды, если они вам когда либо понадобятся, вы всегда сможете получить их используя TinyUmbrella; серийный номер — «Serial Number«.

Еще в данном окне программы имеются весьма полезные инструменты:
— инструмент для ввода и вывода аппарата в и из режима Восстановления — «Recovery Mode«, кнопки «Enter Recovery» и «Exit Recovery«;

— если ваш аппарат «застрял» в режиме «Recovery Mode«, т.е. на экране отображается иконка iTunes и «шнурок» для подключения, снова TinyUmbrella придет на помощь, кнопка «Fix Recovery«;
— кнопка «Save SHSH» или «Сохранить SHSH» — основная задача утилиты в сохранении цифровых подписей;

Читайте также:  Магнитная пластина для iphone

— кнопка «Start TSS Server«. Для того, чтобы запустить инструмент переадресации с официальных серверов Apple на сторонний сервер Cydia, нажмите данную кнопку;

Закладка «Advanced» — окно настройки программы.

Первым делом, обратите внимание на предупреждение «DO NOT MODIFY THESE SETTINGS UNLESS YOU KNOW WHAT YOU ARE DOING!«, что в переводе на родной нам язык означает: «Не изменяйте данных настроек до тех пор, пока не узнаете что делаете!«. Таким образом, перед тем, как вносить какие-либо изменения в настройки, вам следует узнать, что они собой представляют. Скажу сразу, никак, критически на работу вашего аппарата и его состояние настройки не влияют, единственным исключением является строка «UPDATE IPHONE 4 BASEBAND«, НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ НЕ УСТАНАВЛИВАЙТЕ ГАЛОЧКИ НАПРОТИВ ЭТОЙ СТРОКИ! Следите за тем, чтобы галочки в данной строке не было.

Дальше все очень просто. «Save SHSH Directory» — для указания пути сохранения полученных с сервера цифровых подписей. Можете изменить на ваше усмотрение, единственное правило — позаботьтесь о сохранности данной папки, дабы исключить пропадания ценной информации при сбое операционной системы. Лучше всего не хранить цифровые подписи на системном логическом диске.

Строка «UPDATE IPHONE 4 BASEBAND» — «Обновить прошивку iPhone 4«. Данным методом этого делать не стоит. Я сам лично так прошивку никогда не обновлял и не хочется лишать себя джейлбрейка в случае, если TinyUmbrella обновит прошивку моего аппарат до актуальной;

Строка «Save ALL Available SHSH» — «Сохранить все доступные SHSH подписи«. Заманчивое предложение, не отказывайте себе в удовольствии, ставьте смело галочку;

Строка «Set Hosts to Cydia on Exit (If you need a clean restore from Apple uncheck this box)» — «Установить переадресацию в файле Host на сервер Cydia при закрытии программы (Если вам нужно чистое восстановление прошивки с официального сервера Apple, уберите галочку из ячейки)». Фраза говорит сама за себя. При установке галочки в данной ячейке при закрытии программы TinyUmbrella будет модифицирован файл Host таким образом, что все обращения iTunes к серверам Apple будут переадресовываться на сервер Cydia. Хотя бы раз приходилось сталкиваться с Ошибкой iTunes №3194?

Как избежать возникновения данных ошибок?

Если вы хотите перепрошить либо обновить прошивку вашего iУстройства до актуальной версии, т.е. именно той, что предлагает iTunes, вам следует УБРАТЬ галочку из данной ячейки.

Строка «Request SHSH From Cydia» — «Запросить SHSH подписи с сервера Cydia«. При установки галочки в данной ячейке, программа будет получать цифровые подписи SHSH с сервера Cydia. Так вы можете определить для каких версий iOS для вашего аппарата имеются цифровые подписи на сервере Cydia, а также получить их оттуда. Если только вышла новая версия прошивки, как правило Apple еще несколько дней подписывает предыдущую версию iOS, т.е. отдает со своего сервера SHSH, если вы не сохранили для предыдущей iOS SHSH у вас осталось мало времени. Снимите галочку из данной ячейки и нажмите кнопку «Save SHSH», для того, чтобы получить цифровую подпись для предыдущей iOS и потом сохранить ее на сервере Cydia и локально на вашем ПК.

Заведите себе правило:

Строка «Overwrite existing SHSH files on «Save SHSH» — «Переписать существующие цифровые подписи SHSH при нажатии кнопки «Save SHSH«. Думаю здесь все понятно, при наличии галочки в данной ячейке, при нажатии кнопки «Сохранить SHSH» программа заново перепишет файлы в цифровыми подписями для вашего аппарата;

Строка «When connecting a device, prefer my custom device name over the name set on the device» — «При подключении устройства выводить заданное мной имя аппарата вместо того, что установлена на самом устройстве«. Т.е. вы можете задать любое, по желанию, имя вашего аппарата для отображения в программе. При наличии галочки в данной ячейке при подключении аппарата будет выводиться именно заданное вами имя, а не то, что присвоено после восстановления либо обновления прошивки аппарата в iTunes. Здесь я вам не советчик!

Представляет собой журнал событий происходящий внутри программы. В данном окне регистрируются и выводятся все события происходящие внутри программы. Вы можете отслеживать каждое событие и следить за правильной работой программы.

Остановимся на нескольких наиболее значимых событиях.

Если вы журнале событий вы видите выделенную надпись показанную на скриншоте, это означает, что вы нажали кнопку «Save SHSH» и начался процесс получения и сохранения цифровых подписей. В данном случае программа нашла цифровую подпись вашего аппарата для iOS 4.0.2 (8A400) на сервере и сохранила ее локально, а также был отправлен запрос на сервер Cydia. Это означает то, что теперь для вашего аппарата, в моем случае это iPhone 4, для прошивки 4.0.2 я получил цифровую подпись, программа сохранила ее по пути, указанному в поле «Save SHSH Directory» на странице «Advanced«, более того, она сохранена на сервере Cydia откуда ее можно получить в любой момент.

Читайте также:  Антенна nfc iphone 8 plus расположение

Запись в журнале такого рода, печальное событие. Она означает, что программе не удалось получить цифровую подпись для вашего аппарата и нет ее и на сервере Cydia. Получить штатными методами ее уже невозможно, вы опоздали.

Итак, подытожим.
Программа TinyUmbrella позволяет:

На мой взгляд, крайне полезная «софтина», которая будет подспорьем каждому обладателю iPhone/iPod Touch/iPad заблокированному под одного оператора либо желающему сделать джейлбрейк iOS.

Еще раз напомню золотое правило:

Источник

Как установить неподписанную прошивку ios

Всё про откат. Часть 1. Небольшой ликбез

Как известно, Apple не позволяет устанавливать старые версии прошивок. Все это сделано из соображений безопасности, и благодаря такому подходу большинство пользователей могут не беспокоиться за сохранность своих персональных данных. Как именно работает система подписывания прошивок?

Процесс обновления происходит следующим образом: iTunes или само устройство (при обновлении по «воздуху») обращается к специальному серверу Apple и запрашивает проверку цифровой подписи. В процессе отправляется идентификатор устройства (ECID), и поэтому ответ сервера уникальный для каждого запроса. Если всё нормально, то происходит цифровая подпись прошивки (SHSH) и начинается процесс установки.

Разумеется, такую проверку проходят только актуальные версии iOS. Узнать, какие прошивки сейчас подписываются, можно здесь: https://ipsw.me/.

Можно ли обойти эту систему?

Да, SHSH с сервером Apple может запросить не только iTunes, но и любая другая программа. Разработчиком 1Conan был сделан инструмент, который позволяет сохранить SHSH2-сертификаты: https://tsssaver.1conan.com/. Для использования этого метода вам нужно узнать ECID вашего iOS-устройства.

Как узнать ECID вашего iPhone, iPad или iPod Touch?

  1. Подключите iOS-устройство к компьютеру.
  2. Запустите iTunes и выберите в левой панели вкладку «Обзор».
  3. Нажимайте в поле «Серийный номер» на вкладке «Обзор» до тех пор, пока не появится номер ECID.

Как сохранить SHSH2-подписи?

  1. Перейти на сайт — https://tsssaver.1conan.com/.
  2. Введите свой ECID в поле iTunes (Hex).
  3. Теперь осталось выбрать модель своего устройства.
  4. Сразу после этого сертификаты можно будет скачать.

Важно понимать, что этот инструмент позволяет сохранить только SHSH2 текущих версий, однако после того, как прошивка перестанет подписываться, то сертификаты не потеряют свою актуальность и можно будет сделать откат.

Кроме сохранения сертификатов, нам нужно будет произвести еще одну операцию – настроить nonce. Как это делается? Для каждой прошивки свой инструмент для этого.

Собственно, сами утилиты:

Так что же такое nonce? Каждый раз, когда ваше устройство загружается в режиме Recovery, оно генерирует значение nonce (уникальное число каждый раз). В нашем сохранённом SHSH2 есть строка Generator и ID. Наша задача — сделать число nonce и число ID одинаковыми. Если вы используете Jailbreak-устройство, можно это сделать с помощью программ, перечисленных выше.

В следующей части мы применим способ на практике и покажем процесс отката на iPhone 5s с 11.1.2 до 10.3.3/10.2.

Новости, статьи и анонсы публикаций

Свободное общение и обсуждение материалов

Лонгриды для вас

Apple Watch Series 3 не могут обновляться как более новые модели из-за недостатка памяти. Теперь от их владельцев требуют отвязывать часы от iPhone, сбросить их настройки до заводских, и только потом обновляться

Недавно Apple представили нам новые айфоны, и теперь вопрос выбора конкретной модели стоит крайне остро. В статье постараемся разобрать разные сценарии использования этих устройств и подробно коснемся их отличий.

Apple обновила информацию о нововведениях iOS 15 в приложении «Советы». Разобрались, что и как будет работать

Я наверное тут единственный который вообще никакие сертификаты не сохранял.

Как откатиться до не подписываемой версии iOS с помощью «futurerestore»

Сегодня мы подробно расскажем, как откатиться до версии iOS, которая больше не подписывается. К примеру, до iOS 11.1.2, на которую можно установить джейлбрейк. Используемый способ проверялся на попытке откатить iPhone 5s до iOS 11.1.2, а затем и до iOS 11.0.3. Всё получилось.

После выпуска обновлений Apple обычно перестаёт подписывать предыдущие версии iOS спустя две недели. Эта стратегия используется компанией для того, чтобы бороться с джейлбрейком. Если файл прошивки не подписывается, до неё нельзя откатиться, а соответственно и установить джейлбрейк. Возможность обновляться или делать откат до не подписываемых версий iOS очень полезна, если вы хотели бы установить на своё устройство джейлбрейк. Используя метод, описанный ниже, вы сможете откатиться до iOS 11.1.2 и установить джейлбрейк Electra или LiberiOS.

Предупреждение

Данная инструкция предназначена для пользователей с достаточными навыками для подобных операций. В процессе у вас что-то может не получиться, и устройство придётся обновить до последней доступной версии iOS, т.е. вы потеряете джейлбрейк. Внимательно читайте каждое указание и вникайте в каждое слово. Обновиться или откатиться до не подписываемой версии прошивки можно лишь в том случае, если у вас сохранены её файлы SHSH blobs. Мы использовали iPhone 5s и произвели откат до версии iOS 11.0.3, в которой нет бага гироскопа, как в iOS 11.1.x. Если у вас уже установлен джейлбрейк, а на устройстве есть 10Гб свободной памяти, ваши шансы на успешный откат значительно выше.

Читайте также:  Проверка права обслуживания apple

Требования

  • Сохраните резервную копию своего устройства с iOS. Процесс сотрёт все ваши данные.
  • Вам нужны файлы SHSH2 blobs версии iOS, до которой вы хотите откатиться. Если у вас сохранено несколько файлов .shsh2, выберите тот, что в папке «noapnonce». Он должен называться примерно так: «1234567890123_iPhone6,1_n51ap_11.0.3-15A432_a1bcdef234abc567d8e9f012345a6789b01234c5.shsh2». Сохранить эти файлы можно только в том случае, если Apple ещё подписывает данную прошивку. Если вы ранее сохранили файлы SHSH2 blobs, но потеряли ссылку, почитайте о том, как сохранять и скачиватьSHSH2blobs.
  • Если у вас iOS 9.3.4 или 9.3.5, загрузите на устройство PhoenixNonce.ipa отсюда:
  • Если у вас iOS 10+, загрузите NonceSet1112.ipa отсюда:
  • Сохраните .ipsw файл последней доступной версии прошивки (iOS 11.2.6) для своей модели отсюда:
  • Скачайте .ipsw файл версии, до которой хотите откатиться (в нашем случае iOS 11.1.2).
  • Скачайте программу «futurerestore» отсюда:

Как обновиться или откатиться до не подписываемой версии iOS с помощью «futurerestore»

Шаг 1: Извлеките скачанный архив «futurerestore.zip» в папку под названием futurerestore (например, C:futurerestore) и скопируйте туда файл .shsh2 той версии, до которой хотите откатиться. Затем скопируйте в папку остальные файлы .ipsw. Чтобы упростить себе задачу, переименуйте файлы .shsh2 в «my.shsh2» (ваша текущая версия) и «restoreto.ipsw» (желаемая версия), а файл iOS 11.2.6 в «signed.ipsw».

Шаг 2: Откройте .shsh2 текущей версии в Блокноте и найдите строку, похожую на «0xab12c34d5ef6ab7d». Введите эту строку в приложение PhoenixNonce или NonceSet1112 и нажмите «enter». В процессе устройство может перезагрузиться, это нормально. После завершения ещё раз перезагрузите устройство и откройте приложение, чтобы проверить, удачно ли прошёл процесс. Если в приложении не отображается ничего нового, повторите шаги ещё раз. Иногда приложения просто не отображают изменения, так что после этого можете переходить к шагам ниже.

Шаг 3: Подсоедините своё устройство с iOS к ПК с Windows. Проверьте, чтобы iTunes не работал на фоне, и что компьютер подключён к сети. Откройте командное окно и введите

Затем введите следующую команду:

Если вы не меняли названия файлов, команда будет выглядеть как-то так:

Нажав Enter, вы увидите длинное сообщение. Не прерывайте процесс до его завершения.

В процессе у программы futurerestore может не получиться ввести ваше устройство в режим восстановления, и это придётся сделать самостоятельно. Каждый раз, когда устройство будет выходить из режима восстановления до завершения процесса, вам придётся повторять все шаги заново.

Выйти из режима восстановления можно с помощью следующей команды:

Просто подождите, и процесс, скорее всего, завершится успешно.

Это всё. Вы должны успешно откатиться до старой версии iOS. Затем вы можете восстановить все свои данные из копии.

Как установить неподписанную версию iOS на iPhone?

Я использую несколько устройств с более старыми версиями iOS для тестирования своих приложений на реальном оборудовании во время разработки (некоторые функции, использующие камеру или определенные API-интерфейсы Core Image, не работают на симуляторе). Мое последнее приложение скоро перестанет поддерживать iOS 11, поэтому я хотел бы обновить iPhone SE с iOS 11 до iOS 13.

Файлы IPSW можно загрузить с таких веб-сайтов, как ipsw.me, но, очевидно, нет официального способа установить такое обновление. , поскольку Apple больше не подписывает эти прошивки. Есть ли способ обойти это ограничение?

1 ответ

На практике вы не можете.

Теоретически есть три пути:

  1. Станьте сотрудником Apple.
  2. Взломать RSA.
  3. Найдите уязвимость в загрузочной цепочке Apple.

Предполагая, что пункты 1 и 2 для вас невозможны, давайте рассмотрим третий вариант. Все iPhone вплоть до iPhone 8 и X действительно имеют известную уязвимость BootROM — уязвимость для чипов A5-A11 называется checkm8. Однако с этим есть пара проблем:

  • Ошибка находится в части DFU BootROM, поэтому для ее использования вы должны помещать свое устройство в DFU при каждой загрузке. Вы не можете просто «установить» ОС и покончить с этим.
  • Ошибка затрагивает только процессор приложения, но не Secure Enclave. Таким образом, вам нужно будет исправить систему, чтобы либо обновить код, который отвечает за взаимодействие с SEP, чтобы он работал с текущей подписанной прошивкой, либо чтобы вообще не разговаривать с SEP.

Теперь существует еще одна уязвимость под названием blackbird — на этот раз в SEPROM. Он ограничен чипами A8-A10 (включая ваш iPhone SE) и допускает два возможных решения:

  • Сигнатуры прошивки Apple привязывают конкретную версию к конкретному устройству. Если вы ранее сохранили такую ​​подпись, когда Apple их раздала, вы можете использовать эти две ошибки для перехода на такую ​​версию, а затем продолжать использовать ее без взлома.
  • Если вы не сохранили такую ​​подпись для своего устройства, вы все равно можете загрузить неподписанную прошивку SEPOS через DFU, чтобы вы могли, по крайней мере, загружать старые версии с привязкой.

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

Источник

Оцените статью