Короткий туториал для тех кто хочет прямо с двух ног заскочить в исследование приложений под iOS, но не хочет изучать тонну информации о разных видах jailbreak-ов, которые работают под какие-то определенные версии, зависят фазы луны и прочее.
Мой сетап выглядит так:
- Устройство: iPhone X 64GB (MQA52LL/A) iOS 15.6
- Хостовая ОС: Kali Linux (Intel Core i7, c AMD могут быть проблемы)
- Версия palera1n: 2.0 beta 4
Активация
Опустим этап дефлорации упаковки и перейдем сразу к делу. Первое, что следует сделать - это предварительно создать Apple ID чтобы не делать этого в процессе активации устройства. Активацию придется делать быстро, чтобы устройство не успело обновиться на более свежую версию iOS и не обломало нам весь процесс. Пароль тоже лучше поставить не сложный чтобы можно было быстро ввести его руками. Sim-карту лучше также не вставлять и не настраивать Face ID и Applay Pay.
Если на роутере есть возможность автоматически банить свежеподключенные устройства, то эту возможность надо использовать чтобы сделать походы айфона в сеть более контролируемыми. Включать доступ к сети нужно только тогда, когда без этого никак. В моменты активации и аутентификации через Apple ID например. Все остальное время сеть лучше держать выключенной.
Далее, включаем девайс, проходим активацию, быстро(если не потушили сеть) открываем настройки, идем в General -> Software Update -> Automatic Updates
и переключаем все свитчи в off.
Установка palera1n
Весь процесс будет показан для Linux, потому что на предыдущих версиях были проблемы с видимостью девайса в режиме DFU из macOS, но может вы с этим и не столкнетесь. Официальный туториал лежит здесь и если у вас что-то пошло не так, то рекомендую обратиться к нему. Также очень желательно использовать кабель Lightning<->Type-C
(можно взять из коробки), но ваш компьютер, очевидно, должен иметь соответсвующий порт. И не вздумайте делать это из под виртуалки. Нужен именно компьютер с Linux (в моем случае). Перед началом установки нужно обязательно отключить Passcode, который был установлен на этапе активации устройства. Для этого идем в настройки и жмем Face ID & Passcode -> Turn Passcode Off
.
- Cкачиваем подходящую версию
palera1n
wget https://github.com/palera1n/palera1n-c/releases/download/v2.0.0-beta.4/palera1n-linux-x86_64
- Останавливаем
usbmuxd
sudo systemctl stop usbmuxd
А если он не установлен в системе, то ставим и на всякий случай повторяем предыдущую команду
sudo apt-get update && sudo apt-get -y install usbmuxd
- Запускаем
usbmuxd
и открываем новое окно терминала
sudo usbmuxd -f -p
- В новом окне переходим в папку куда скачали
palera1n
и выполняем следующие команды:
sudo mv ./palera1n-linux-x86_64 /usr/bin/palera1n
sudo chmod +x /usr/bin/palera1n
Запуск palera1n
Теперь нужно подключить смартфон к компьютеру и убедиться, что usbmuxd
его увидел. Это будет видно по сообщениям в том терминале, где он запущен. Если все ок, то запускаем palera1n
:
sudo palera1n -B -f
Устройство должно перезагрузиться в режим восстановления и показать вот такой экран:
После этого можно нажать Enter
в терминале где запущен palera1n
и войти в режим DFU. В терминале будут подсказки на этот счет.
Несмотря на подсказки в терминале, правильная комбинация может быть неочевидна для тех кто ни разу не имел дела темной сторой iOS устройств. Правильная последовательность выглядит так: Нажать одновременно кнопки включения (side button) и уменьшения громкости (volume-) и удерживать ~5 секунд. После этого нужно отпустить кнопку включения, но продолжать удерживать кнопку уменьшения громкости ~10 секунд.
Если удача на вашей стороне, то запустится процесс создания FakeFS/BindFS
:
После завершения процесса, когда смартфон полностью загрузится и покажет интерфейс iOS, нужно выполнить команду sudo palera1n -f
и повторить все приседания со входом в режим DFU. Тут тоже может появиться ошибка. Сохраняем спокойствие и действуем также как и на предыдущем шаге. Если все ок, то наблюдаем такой экран:
Когда все загрузилось, открываем приложением palera1n loader
и жмем Install
:
Важное послесловие
Поскольку это полупривязанный jailbrake, то после перезагрузки он слетит и его нужно будет накатить заново. Для этого опять подключаем смартфон к тому же компьтеру на который устанавливали palera1n
и выполняем следующие команды:
# Terminal window 1
sudo systemctl stop usbmuxd
sudo usbmuxd -f -p
# Terminal window 2
sudo palera1n -f
# Входим в DFU и дожидаемся полной загрузки устройства.
Если что-то стало работать не так хорошо как раньше, то можно зайти в palera1n loader
и в меню tools
нажать на Do All
.