탈옥에서 가장 자주 나오는 후회가 “업데이트하지 말걸” 입니다. 한 번 올라가면 거의 되돌릴 수 없기 때문입니다.
왜 못 돌아가나
iOS를 설치할 때 기기는 Apple 서버에 승인을 요청합니다. 이 승인 서명을 SHSH 라고 합니다.
Apple은 새 버전이 나오면 얼마 지나지 않아 이전 버전의 서명을 중단합니다. 서명이 닫히면 그 버전은 설치 자체가 거부됩니다. 파일을 갖고 있어도 소용없습니다.
그래서 다운그레이드는 보통 불가능합니다. 다만 예외가 몇 가지 있고, 그 예외를 다루는 도구들이 있습니다.
되는 경우 세 가지
① 미리 받아둔 SHSH 블롭이 있을 때
서명이 열려 있는 동안 블롭을 받아뒀다면 나중에 그걸로 복원할 수 있습니다. blobsaver가 자동으로 받아주고, 실제 복원은 futurerestore가 합니다.
지금 해두셔야 합니다. 이미 닫힌 버전의 블롭은 어떤 방법으로도 만들 수 없습니다. 탈옥할 생각이 조금이라도 있다면 오늘 버전의 블롭부터 받아두세요.
② 아직 서명이 열려 있는 OTA 버전이 남아 있을 때
Apple이 닫는 것을 잊은 옛 OTA 서명이 몇 개 있습니다. A5·A6 기기의 iOS 8.4.1과 6.1.3, A7 기기의 10.3.3이 그렇습니다. 블롭 없이도 여기로는 갈 수 있습니다.
Legacy iOS Kit이나 LeetDown이 이 경로를 다룹니다.
③ checkm8 기기일 때
부트롬 취약점이 있으면 서명 검사를 우회할 수 있습니다. downr1n이 iOS 13.4 – 15 구간을 다룹니다.
다만 대부분 테더드입니다. 되돌린 뒤 재부팅할 때마다 PC에 연결해 부팅시켜야 합니다. 일상적으로 쓸 기기라면 감당하기 어렵습니다.
지금 어느 버전이 서명 중인지는 ipsw.me 에서 기종을 고르면 바로 보입니다. tsschecker로도 확인합니다.
그래도 막는 게 먼저입니다
위 셋은 전부 조건이 붙습니다. 블롭을 미리 받았거나, 기기가 구형이거나, 테더드를 감수해야 합니다. 애초에 올리지 않는 것이 훨씬 쉽습니다.
업데이트를 막는 법
탈옥할 생각이 있다면 자동 업데이트부터 끄세요.
설정 → 일반 → 소프트웨어 업데이트 → 자동 업데이트에서 전부 끕니다. iOS 업데이트 다운로드와 설치를 모두 꺼야 합니다.
이미 내려받아진 업데이트 파일이 있으면 지우는 편이 안전합니다. 설정 → 일반 → iPhone 저장 공간에서 iOS 업데이트 항목을 찾아 삭제합니다.
지금 올리면 안 되는 경계선
패치 연표에 정리해뒀지만, 자주 걸리는 것만 다시 적습니다.
- A14 이상은 17.3.1이 상한입니다. 17.4로 올리면 방법이 없습니다
- A12·A13은 18.7.1과 26.0.1 까지입니다
- TrollStore는 16.6.1과 17.0 까지입니다
- A8 – A11은 checkm8 덕에 버전을 가리지 않습니다. 다만 아이폰은 A11(iPhone 8·X)이 16.7.x에서 끝나므로 그 위 버전은 조합 자체가 없습니다
내 기기가 어디에 해당하는지는 홈의 판별기에서 확인하세요.
복원하면 어떻게 되나
기기를 복원하면 서명이 열려 있는 최신 버전으로 올라갑니다. 탈옥하려던 버전으로는 돌아가지 못합니다.
부팅이 안 될 때에서 복구 모드의 “업데이트” 를 먼저 시도하라고 한 것도 이 때문입니다. 그쪽은 데이터를 유지하면서 같은 버전을 다시 까는 경우가 있습니다.