1. 개요
iPhone, iPod touch, iPad같은 Apple 휴대용 기기에 사용되는 iOS 및 iPadOS의 제한을 임의로 해제하는 행위를 탈옥이라 한다.2. 설명
안드로이드에서의 루팅과 비교할 때 결과적으로 제한된 권한을 부여한다는 점은 동일할지라도 그 과정은 많이 다르다. 안드로이드의 경우 시스템, 혹은 커널에 su 바이너리를 심고 Superuser 또는 SuperSU 등 퍼미션 컨트롤 앱을 이용해 루트 권한을 주도록 OS에 간단하게 파일 몇 개 추가하는 정도로 끝나지만[1], iOS의 경우 자체 보안이 강력하기 때문에 이 보안을 뚫고 들어가 시디아를 설치하고 커널을 패치하여 순정 펌웨어로 보이도록 부트롬을 속인다.[2] A4칩까지는 부트롬이 별도로 설치되어 있어서 부트롬 익스플로잇이 한번 뚫리면 이후 iOS 버전에서는 무조건 반탈은 가능했었으나, A5칩부터는 부트롬이 CPU 내부로 들어가게 되어 부트롬 익스플로잇이 불가능해졌다. 즉, A4칩까지의 기기는 탈옥 시 Pwned DFU모드로 진입해서 뒷문을 열고, 탈옥툴을 돌려 시스템 내부에 접근해 탈옥하는 것이 가능했는데, A5칩이 탑재된 기기부터는 그 기기가 전원이 꺼질 때 부트롬 전원도 같이 꺼지기에 탈옥이 불가능하게 된 것. A4까지의 기기도 저런 식으로 뒷문을 따고 들어가서 탈옥에 성공했더라도 부팅 과정을 속이지 못하면 재부팅 시 벽돌 상태가 되는 이른바 반탈(Tethered Jailbreak)상태가 되는데, 이것이 패치되는데까지는 시간이 꽤 걸린다.사실상 Apple 기기의 역사는 탈옥과의 싸움이라고 할 수 있을 정도로, Apple에서 한 기기나 새로운 OS 버전을 출시하면 몇시간 내로 또 탈옥이 뚫리고, 다시 보안 업데이트로 이를 막으면 또 몇시간 뒤에 뚫리는 식으로 이어져 왔다. 그러나 iPad 2의 경우에 부트롬이 플래시 메모리가 아닌 프로세서 자체에 내장되었기 때문에 iPhone처럼 바로 뚫리진 않았지만, 2011년 7월 6일 JailbreakMe 3.0이 나오며 대탈옥시대를 맞이하게 된다.
Apple은 탈옥된 제품에 대해서는 AS를 거부한다. 이건 Apple이 민감한 것이 아니고, 삼성이나 소니, LG도 원칙적으로 사용자가 임의로 OS를 수정한 경우는 AS를 거부할 수 있다.[3] Apple은 탈옥이 자사 OS에 대한 저작권 침해라는 근거를 내세우면서 불법이라고 주장해 왔으나 미 국회도서관 저작권 사무국 측에서는 관련법률을 개정하여 합법화 하였다. # 하지만 이 법개정은 미국 영토 내에서 발생하는 탈옥 행위 자체에 대한 법적 문제 해소만 할 뿐 Apple 등 제조사가 탈옥된 기기에 대한 A/S를 거부하는 것에 대한 소비자 구제장치는 없다. 무엇보다 해당 법 개정은 미국의 영토에서만 영향을 받는 것이기에 우리나라 등 미국 외의 Apple 제품 탈옥에 대해서는 해당이 없다. 즉 우리나라 법률에 따라서는 법적으로 문제가 될 소지가 있다.
탈옥의 명분은 기본적으로 Apple이 제한하고 있는 기능을 사용 가능하게 하는 것이다. 좀 더 상세히 말하자면 OS 차원에서 지원하지 않는 기능을 지원하게끔 개조하는 것이다. 예를들어, 폰트와 테마를 바꿀 수 있도록 한다거나[4] 시디아에서 Apple 정책상 App Store를 통해 설치할 수 없던 유용한 트윅들을 찾아 설치하는 것이 주를 이룬다. 시스템 파일을 직접적으로 건드릴 수 있기 때문에 iFile이나 Filza같은 내부 파일 관리자 트윅을 통해 셔터음을 삭제한다든가 하는 행위도 가능하다. 사실 iPhone이 처음 나왔을 때 App Store는 존재하지 않았고, 기능도 많이 부족했고, 이를 보충하기 위해 프로그램을 설치하려면 반드시 탈옥을 거쳐야 했으며, 음지에만 서드파티 iPhone 프로그램이 존재했다. 그 당시의 Apple의 주장은 "웹 프로그램이 있는데 프로그램을 깔 필요가 있나?"였고, 최초의 iPhone 발매 키노트에 이런 사고방식의 내용이 있었다. App Store용으로 올라오는 앱도 Apple 정책상 추가될 수 없는 기능의 한계라는 게 존재한다. 때문에 이런 규제를 싫어하는 사람들은 탈옥용으로 프로그램을 만들게 되며, 이것이 탈옥의 기본적 명분인 것이다.
분명 수많은 사용자들이 탈옥을 행하는 이유 중 하나가 크랙된 유료 앱을 공짜로 다운받아 무단으로 사용하기 위함 이었다는 사실을 부정할 수는 없다. 하지만 PSP 등에서도 볼 수 있듯, 홈브루와 불법 복제는 종이 한 장 차이의 기술이므로 개인이 탈옥하여 더 많은 기능을 사용하는 것은 자유인만큼 기기를 탈옥하는 행위 그 자체를 비판할 필요는 없다. 위에도 쓰여있지만 애초에 iOS에서 탈옥이라는 게 처음 등장했던 당시에는 애플의 앱스토어가 개설되기도 전이었으므로 불법 복제 운운하는 것 자체가 말이 안 되기도 했고..
탈옥하면서 잃는 것도 있는데, 가장 큰 것이 AS 불가능이 유일하지만 어차피 부품 이상과 액정 깨짐은 AS 가능하며[5], 탈옥을 했더라도 DFU로 iOS나 iPadOS를 재설치하면 깨끗이 사라지기 때문에 상관없다.[6]
과거 많은 블로그에서 탈옥 후 여러 소스를 추가하고 각종 트윅을 설치하고 뭐는 지우고 무슨 파일을 열어서 어떻게 고치고 하는 등 각종 설정을 해야 안정화가 된다는 내용들이 팁이랍시고 많이 돌아다녔는데[7] 이는 국내에 아이폰이 출시되지도 않았던 시절, 콘솔 화면에서 명령어 한줄 한줄 써가며 탈옥 하던 때에나 필요하던 것이므로 그러한 팁이 돌아다니던 시절이나 지금이나 사실상 별 의미 없는 행동들이며 오히려 잘못 따라했다가는 멀쩡하던 시스템을 불안정하게 만드는 수가 있다. root와 mobile 계정의 기본 비밀번호(alpine)를 바꿔두라는 부분은 물론 보안에 도움이 되긴 하겠지만 OpenSSH 관련 프로그램을 사용하는 게 아니면 필수는 아니다. 그래도 정 원한다면 비밀번호 변경 후에 OpenSSH와 관련 패키지를 도로 삭제하는 편이 쓸데없는 용량 소모도 줄이고 그냥 남겨두는 것보다 보안 차원에도 도움이 될 것이다. 최적화는 iCleaner Pro 하나로도 충분하다.
탈옥에는 iPhone Dev Team, Chronic Dev Team 등의 해커들이 참여하고 있는데, 이런 여러 해커들이 누가 먼저, 그리고 안정적으로 탈옥을 공개하나 경쟁을 벌이고 있는 상황. 아무래도 아이폰 탈옥 개발자라고 하면 그 바닥에서는 상당한 유명세를 얻을 수 있으니. 예전의 탈옥툴은 미국, 혹은 유럽 쪽 개발자에 의해서 개발되고 발표되었지만 iOS 7을 기준으로 중국 개발자들 또한 탈옥툴 개발에 참여하고 있다. 탈옥툴이 나오는 주기가 예전에 비해 매우 짧아진 것은 덤. iOS 7과 8은 모두 중국 개발자들에 의해 발표되었다.
2016년 iOS 9를 기점으로 탈옥이 가능한 기기의 파편화와 탈옥툴 릴리즈 기간이 점점 길어지는 것을 알 수 있는데, 이는 iOS 탈옥으로 인해 유명세를 얻은 인원들이 애플에 채용되거나, Apple이 탈옥하는데 필요한 취약점을 제보하면 바운티를 지급하는 버그바운티 제도를 시행하고 있기 때문으로 추정된다. Apple이 제공하는 취약점 보완 목록에서도 탈옥툴 개발에 참여했던 Pangu팀 등의 이름을 자주 발견할 수 있으며, 시디아를 개발한 Saurik이 올린 바운티 정책을 보면 바운티가 결코 무시할 수 없는 수준이라는 것을 알 수 있다.[8][9] 특히 iOS 15부턴 다음 iOS 정식 버전이 배포된 후 몇 개월이 지나서야 탈옥이 가능했다.
3. 타임라인
iOS 8.1.2의 탈옥툴을 내놓은 이후 탈옥툴의 소식이 뜸하다가, 2015년 6월 23일 중국의 탈옥툴 개발 팀인 TaiG팀에서 8.3까지 탈옥이 가능한 탈옥툴을 내놓은 상태이다. TaiG팀은 8.4도 동일한 방식으로 탈옥할 수 있을 것이라고 했고, 결국 7월 1일 iOS 8.4가 배포되자마자 탈옥을 할 수 있는 탈옥툴이 나왔다. iOS 8.4 탈옥이 하루만에 나올 수 있던 것은 Apple에서 Taig 8.3 툴의 취약점을 iOS 8.4를 배포할 당시에 관련 취약점을 패치를 안해서 그런것이다. iOS 8.1.3에서 iOS 8.3까지 지원되는 탈옥툴이 나오는데 반년이 넘는 시간이 걸린 것을 생각해보자. 2015년 8월 22일 Pangu팀에서 8.4.1의 탈옥을 선보였다. iOS 9이 배포된지 얼마 안 된 상태라 공개하지는 않았다가, 이제 공개할 예정이라고 밝혔다.2015년 10월 14일 Pangu에서 iOS 9 탈옥툴을 공개했다. 2015년 10월 18일 기준 iOS 9.0.2까지 완탈이 가능하다. 현재 Apple에서 iOS 9.1 업데이트로 해당 탈옥툴은 차단해놓은 상태.
2016년 7월 중국의 Pangu팀에서 64비트 기기 한정 iOS 9.2에서 9.3.3까지 탈옥 가능한 툴을 내놓았다. 다만 아직 완전한 탈옥은 아니라 재부팅 후엔 탈옥이 풀려 기기 내에 설치된 앱을 실행해 재 탈옥을 시켜줄 필요가 있다. 다만 현재 Pangu팀에서 배포한 툴로 탈옥 후 페이팔 계정이 해킹당했다는 등의 보고가 이어지고 있다고 한다. 레딧 링크 이 이슈에 대해 Cydia의 개발자로 유명한 iOS 해커 Saurik이 reddit의 덧글을 통해 의견을 밝혔다. Pangu의 탈옥 툴로 인해 이러한 문제가 발생했을 것이라고 생각되지는 않으나, 중국의 사기업인 25PP에서 배포하는 툴으로 인증하는 대신, Cydia Impactor를 이용해 애플 서버를 경유하여 인증하는 것을 권장한다고 한다.
2016년 8월 30일 새벽 3시경에 iOS 9.2 - 9.3.3 탈옥 어플이 다른 곳도 아니고 App Store에 올라왔다! 한 시간도 안돼서 내려갔지만 레딧에서 계정 공유를 통해 구매이력에서 내려받는 방식으로 계속 다운로드가 이루어졌었고 결국엔 공유된 계정이 정지되었다. #
2018년 1월 13일, iOS 11.0~11.1.2 버전의 탈옥이 가능한 베타 버전의 Electra 툴이 릴리즈되었다. 이후 3월까지 꾸준한 업데이트를 통하여 현재 최신 버전은 1.0.4이다.
2018년 7월 7일, iOS 11.1.2 버전의 탈옥을 개발한 팀에서 11.3.1 버전까지 탈옥이 가능한 동명의 툴을 릴리즈하였다.
2019년 1월 30일, iOS 11.1.2, 11.3.1 버전의 탈옥을 개발한 팀에서 11.4.1 버전까지 탈옥이 가능한 동명의 툴을 릴리즈하였다.
2019년 2월 22일, pwn20wnd가 iOS 11.0 - 11.4.1에서 더해 12.0 - 12.1.2 버전까지 탈옥이 가능한 unc0ver를 출시했다. 아직까진 베타 버전이지만 안정성은 높다고 한다.
2019년 08월 최신 버전인 iOS 12.4에서 탈옥이 가능한 unc0ver과 Chimera 툴이 출시했다. 애플에서는 8월 말 이 탈옥에 관련된 보안 허점을 패치한 12.4.1을 출시 했다.
2019년 11월 10일 A7 - A11 Bionic칩을 탑재한 모든 디바이스가 iOS 12.3 이상이기만 하면 무조건 탈옥이 가능한 checkra1n이 출시되었다. 해당 탈옥툴은 하드웨어 취약점을 이용했기때문에 Apple이 소프트웨어로 취약점을 패치 할 수 없다.
2020년 5월 말 최신 버전인 iOS/iPadOS 13.5에서 탈옥이 가능한 unc0ver 툴이 출시 되었다. Apple은 이를 iOS/iPadOS 13.5.1에서 패치하였고, 13.5.5 Beta버전에서는 탈옥이 가능하나 Apple이 사이닝 서버를 닫았다.
2020년 11월 20일 iOS/iPadOS 13.5.1-13.7 탈옥이 Odyssey에 의해 가능해졌다.
2021년 2월 말 iOS/iPadOS 14.0-14.3 버전의 탈옥이 가능한 unc0ver 툴이 출시되었다.
2021년 4월 초 iOS/iPadOS 14.0-14.3 버전의 탈옥이 가능한 Taurine 툴이 출시되었다.
2021년 4월 8일 reddit에 iOS/iPadOS 14.2 이하에서 iOS/iPadOS 14.3의 사이닝서버가 닫혔음에도 불구하고 iOS/iPadOS 14.3을 설치하는 방법이 올라왔다. iOS 13에 탈옥을 위해 머물러있는 사람들은 참고하도록 하자.
2021년 10월 25일 twitter에 Linus Henze는 iOS/iPadOS 14.2-14.5.1 버전의 탈옥을 지원하는 스크립트를 완성하였음을 발표했다. 무려 Untethered, 즉 완탈이라고한다. 다만 이 스크립트를 이용하여 탈옥하기 위해선 Mac이 필요하며, 14.2부터 14.3 미만의 버전에서 사용하기 위해선 파일 2개의 수정이 필요하다.
2022년 10월 2일을 기준으로 iOS 16가 공개된지는 4개월, 출시된지는 1개월이 지난 시점인데도 불구하고, iOS 15의 탈옥 툴조차 전혀 나오고 있지 않는 상황이다. 탈옥이 점점 어려워지는 것을 증명하듯, 이제는 iOS 16이 탈옥보다 먼저 출시되면서 과거, iOS 신규버전이 출시되자마자 탈옥 툴이 출시되었던 과거와 비교하면 격세지감이 느껴지는 수준이다.
2022년 10월 4일 palera1n이라는 이름의 15.0~16.4 탈옥툴이 출시되었다. checkm8 취약점을 사용하여 A9 ~ A11만 사용이 가능하며, iOS 16은 설치 자체를 iPhone 8 이상부터 지원하기 때문에 iPhone 8 시리즈와 iPhone X만 사용이 가능하다.
2022년 11월 1일 iOS 15가 출시된지 무려 1년 5개월 만에 twitter에 Linus Henze가 A12 ~ A15, iOS 15.0 ~ 15.4.1버전의 탈옥 툴인 Fugu15를 발표했다. 다만 개발자용 탈옥이라 트윅 설치를 지원하지는 않는다. # TrollStore는 이 탈옥툴에 사용된 CoreTrust 버그를 사용한다.
2022년 12월 7일 XinaA12 라는 이름의 A12 ~ M1, iOS 15.0 ~ 15.1.1 탈옥 툴이 개발자용 공개 베타 버전으로 공개되었다. 트윅 사용도 지원하나 아직은 개발자용 베타 버전이므로 불안정할 수 있다고 하니 사용에 유의하도록 하자. # # 자체적으로 탈옥감지 우회 기능을 탑재하고 있다.
2023년 3월 29일 TrollStore 개발자인 opa334가 Fugu15를 포크하여 만든 Fugu15 Max[10]가 공개되었다. 기존 Linus Henez가 개발한 Fugu15와 다르게 트윅 인젝션이 지원된다! 트윅 개발자들에게만 공개 후 버그 수정을 거쳐 출시할 계획이었으나 한 트윅 개발자가 멋대로 배포한 뒤로 개발자가 직접 깃허브에 베타버전 프로그램을 배포하였다. # 대신 개발자가 베타버전을 사용하는 일반 사용자에게는 어떠한 기술지원도 없을것이라 못 박아서 개발자가 정식 배포버전을 공개하는 것을 기다리고 사용하는 것을 추천한다. 현재 버그가 많지만 그럼에도 불구하고 설치를 생각중이라면 깃허브에 게시된 주의사항을 읽고 진행하길 바란다.
2023년 8월 3일 Trollstore 개발자 opa33이 개발한 Dopamine이라는 이름의 A12~A15, M1, iOS 15.0~15.4.1 탈옥 툴이 공개되었다
2023년 10월 26일 palera1n이 iOS 17.1 탈옥을 지원 중이다.
2024년 1월 9일 Serotonin이 ios 16.0-16.6.1 준완탈을 지원 한다.
2024년 2월 17일 iOS 15.0-16.6.1 (arm64), 15.0-16.5.1 (arm64e)로 지원 범위가 확장된 Dopamine 2.0이 공개되었다.
2024년 5월 16일 기존의 iOS 15.0-15.4.1을 지원하던 Dopamine-roothide의 차세대 버전인 Dopamine 2.0의 코드를 기반으로 한 Dopamine-roothide 2.0 Beta 9이 공개되었다.
4. SHSH 백업
탈옥툴은 각 프로그램 버전마다 지원하는 기기와 iOS 버전이 정해져 있다. 때문에 탈옥을 하지 못하는 버전이 있으며 최신 버전의 iOS를 쓰는 사람은 해당 버전을 지원하는 탈옥툴을 개발팀이 내놓을 때까지는 순정 상태로 기다리는 수밖에 없다. 하지만 iOS의 펌웨어는 현재 정상적인 방법으로는 한 번 업데이트하고 나면 다운그레이드가 불가능하다. Apple 사가 탈옥을 막는 방법 중 하나이긴 한데, 문제는 업그레이드한 펌웨어에 버그가 발생하더라도 순정 사용자 역시 다운그레이드가 불가능하다는 것. iOS 펌웨어를 업데이트할 때 Apple의 서버에 접속을 해서 인증을 받기 때문에 그런 것이다. 탈옥 개발자들은 이를 일종의 프록시에 기기 인증코드를 저장해주는 방법으로 우회하였다. 이를 SHSH 백업이라 불린다. 하지만 펌웨어 업데이트 전에 백업을 해야 하고, iOS 기기 자체에서 하는 무선 OTA 업데이트는 인증코드 오작동을 가져오므로 반드시 컴퓨터로 기기를 업데이트해야 한다. 이는 기기를 탈옥하지 않더라도 사용 가능하니 순정 사용자도 사용을 권하며 기기에 문제가 생겨 DFU 모드 복원( 공장초기화)을 해야 할 경우 자동으로 최신 버전의 iOS가 설치되기 때문에 만일을 대비하여서라도 필수적으로 하는 것이 좋다. [링크 막힘]서 Tinyumbrella를 다운받을 수 있다. 이 프로그램 말고도 SHSH 백업 툴이 몇가지 있으니 참고할 것.언제부턴가 Apple의 인증 정책(?)이 APTicket으로 바뀌어서 기존의 SHSH Blobs(단, iOS 5.x 이상 버전부터)는 더 이상 쓸 수 없게 되었다. 따라서 지금까지 백업했던 건 모두 버리고 TinyUmbrella나 iFaith 등을 이용해 재작성해야 한다.(몇 년 전 이야기이니, 최근에 백업했다면 상관없다.) 물론 해당 버전으로 복원할 수 있을 때만 백업이 유효하므로 대부분은 할 수가 없다.
그러나 SHSH 백업을 철저히 해두었다고 해도, 실제로 iFaith를 통해 복원 시에는 일종의 하드웨어 취약점을 사용하기 때문에 해당 취약점이 없는 iPhone 4s 이상의 기기는 복원이 불가능했었다. 다만 최근에 탈옥된 iOS 기기에서 kloader 바이너리를 통해 Pwned DFU모드로 진입하는 방법이 나오면서 SHSH 백업이 되어 있다면 A5칩 이상 기기에서 다운그레이드가 가능해졌다. (다만 이 바이너리의 업데이트가 안 되고 있는 상황이여서 언제 막힐지 모른다.) 자세한 건 여기 참조.
2017년 현재, 64비트 기기의 다운그레이드를 지원하는 FutureRestore[11]라는 툴킷이 릴리즈되어 있는 상태다. 다만 종전의 SHSH Blobs가 아닌 SHSH2 Blobs가 백업되어 있어야 하고, CLI 툴이라 일반인의 접근이 어렵다. 또한 복원을 위해서는 ApNonce값을 백업된 SHSH2와 맞춰야 하는데, 순정에서는 이 값이 랜덤으로 나와 Noncesetter, noncereboot 계열의 툴을 이용해서 Apnonce 값을 특정한 값으로 설정해야 한다. 문제는 해당 툴들이 취약점으로 동작하기 때문에 탈옥이 가능한 버전으로 업/다운그레이드를 하기 위해 탈옥을 하거나 최소한 탈옥이 가능한 버전이어야 하는 웃지 못할 상황이 일어난다.
무엇보다 iPhone 5s 시리즈 이후부터 Apple Silicon 내부에 SEP(Secure Enclave Process)가 들어갔는데, iOS가 새로 설치될 때마다 SEP의 펌웨어를 새로 설치한다. 문제는 이 SEP 펌웨어가 현재 사이닝이 열려 있는 iOS의 펌웨어와 FutureRestore 툴을 사용해 업/다운그레이드할 iOS와의 호환성이 없을 경우, 일반적으로 복원 실패가 되며, 복원이 진행된다 해도 iPhone X을 11.3.x 복원할 때 Face ID 사용이 불가능하게 되는 것처럼 정상적인 복원이 되지 않는다. 결국 SHSH2를 백업했더라도 제대로 써먹을 수 없는 것이다.
엎친데 덮친 격으로 iOS 16부터 Cryptex1이라는 펌웨어가 탑재되었는데, 하위 호환성이 없어 iOS 16 내에서 SHSH blob을 사용한 다운그레이드가 불가능해졌다고 한다. #
4.1. SEP 펌웨어 호환 현황 (iOS 14.6 기준)
iOS 버전 | 호환 여부 |
iOS 14.0 ~ 14.6 | 호환[12] |
iOS 11.3 ~ 13.7 | 미호환 |
자세한 호환 여부는 # 에서 확인할 수 있다.
5. 탈옥 종류
크게 재부팅 시 PC와의 연결이 필요한지, 그리고 탈옥이 작동하는지 여부에 따라 갈린다.- 반탈(Tethered): 반탈옥. 부트롬 취약점을 이용한 탈옥 후 재부팅을 하게 되면 PC와 연결하여 탈옥 과정을 재실행해야 한다. 그렇지 않으면 흔히 무한사과라고 불리는 부팅 불가 상태가 된다. 현재는 완전히 사라진 탈옥 종류다. 보통 반탈이라고 하면 이 탈옥이 아닌 아래의 준완탈을 부른다고 보면 된다.
- 완탈(Untethered): 완전한 탈옥. 완탈은 재부팅 시 아무 문제 없이 탈옥 상태로 정상 부팅이 된다. 가장 편리하고 이상적인 탈옥이지만 iOS 9.2 이후로 대폭 강화된 보안으로 인해 현재는 나오지 않고 있다가 Fugu14의 등장으로 오랜만에 완탈이 나왔다..! 마지막으로 완탈을 지원한 버전은 iOS 9.1이었으나 Fugu14의 등장으로 iOS/iPadOS 14.5.1이 마지막 완탈 지원 버전이 되었다.
- 커스텀 번들(Custom Bundles): 줄여서 커번이라고도 한다. 쉽게 말하자면 완탈에서 시디아와 트윅들을 뺀 것. 루트 파일 시스템에 존재하는 파일들을 덮어씌우는 게 가능하다. 즉, 테마를 제작하고 사용할 때 쓰이는 것이다. 주로 레드스노우(redsn0w) 같은 툴이 이 기능을 내장하고 있다. 하지만 iOS의 디렉토리를 완전히 복제 해 놓아야만 하기 때문에 상당히 많이 번거롭다 iOS 6 탈옥까지 존재했으나, iOS 7부터는 나오지 않았다.
- 준반탈(Semi-Tethered): 부트롬 취약점을 이용할 때 나오며, Tethered 탈옥은 재부팅을 하면 무한사과가 되어 PC에 연결하기 전까지 기기를 사용할 수 없게 되지만, Semi-Tethered 탈옥은 재부팅 후에도 기기를 사용할 수는 있어도 트윅이 작동하지 않는 순정 상태가 된다. 이후 PC에 연결하여 재탈옥 과정을 실행하면 다시 탈옥 상태가 된다. Checkra1n을 이용한 탈옥이 바로 이런 종류이다.
- 반탈(준완탈, Semi-Untethered): 보안 강화로 인해 나오지 않는 완탈을 대신하는, 현재 탈옥툴이 채택하는 방법으로, 커널 취약점을 이용한다. 위의 Semi-Tethered 탈옥과 비교하여, 재부팅 시 순정 상태가 되는 것은 같지만, 특정 앱을 실행하여 기기 내부에서 재탈옥 과정을 실행할 수 있다. 따라서 반드시 PC의 연결을 필요로 하지 않는다. 서양권에서는 Tethered 탈옥과 구분되는 Semi-Untethered 탈옥이라고 부르지만, 한국에서는 구분 없이 똑같이 반탈로 불린다. 다만 Tethered 탈옥이 사실상 없어진 현재로선 별 상관은 없다.
자신의 기기가 탈옥이 되는지에 대한 정보는 링크에서 볼 수 있다.
5.1. 반탈과 완탈이 갈리게 된 이유
-
해커들이 발견한 초기 취약점의 불안정성
위에서 언급되었듯 초기 터치 2세대의 경우 취약점이 완벽하지 않아 반탈이 등장했고 그 뒤로는 완탈이 되어서 문제가 되지 않았다. 그 후 신 부트롬을 쓰는 모델들은 부트롬 상의 취약점은 존재하나 이것을 펌웨어 상에서 유지할 수가 없어서 완탈이 불가능해도 반탈이 가능한 경우가 생겼다. -
Apple의 대응
iPhone 3GS에도 동일한 취약점을 가지고 있어서 출시된 지 얼마 지나지 않아 완탈이 되기 시작했으나, Apple이 iOS가 수정되었다고 판단되면 부팅을 중단하게끔 부트롬 쪽을 수정한 모델[13]을 시장에 내놓으면서 문제가 발생하였다. 그 후 iPhone 3GS와 iPod touch 2세대 8G MC 모델들 간의 탈옥에 관한 문제가 부각되기 시작되었다.
6. 탈옥이 가능한 Apple 제품 운영체제 버전
iOS 버전 | 탈옥여부 |
iOS 16.7 ~ 17.1 / iPad OS 16.7 ~ 17.1 | 제한적 가능 [14] |
iOS 16.6 ~ 16.6.1 / iPad OS 16.6 ~ 16.6.1 | 제한적 가능 [15] |
iOS 16.5.1 / iPad OS 16.5.1 | 제한적 가능 [16] |
iOS 15.0 ~ 16.5 / iPadOS 15.0 ~ 16.5 | 가능 |
iOS 14.6 ~ 14.8 / iPadOS 14.6 ~ 14.8 | 제한적 가능[17] |
iOS 14.4 ~ 14.5.1 / iPadOS 14.4 ~ 14.5.1 | 가능[18] |
iOS 10.0.1 ~ 14.3 / iPadOS 13.0 ~ 14.3 | 가능 |
iOS 9.0 ~ 9.3.6 | 제한적 가능[19] |
iOS 8.0 ~ 8.4.1 | 제한적 가능[20][21] |
iPhone OS 1.0 ~ iOS 7.1.2 | 가능 |
7. 탈옥 프로그램 목록
구형 기종/iOS를 탈옥 할 때 오류가 생기며 제대로 진행되지 않는다면 Windows PC의 경우 Windows XP나 Windows 7 호환성 모드 + 관리자 권한으로 실행하거나 구버전 iTunes와 Apple Mobile Device로 다운그레이드 하는 등의 작업이 추가로 필요할 수도 있다. macOS(OS X)의 경우엔 미확인.iOS버전 | Windows | macOS | 지원기기 | 개발자 | 탈옥종류 |
1.0 - 1.0.x | (이름 없음) | iPhone(1세대), iPod touch(1세대) | iPhone Dev Team | ||
1.1.1 | JailbreakMe - iOS 내 탈옥 | iPhone(1세대), iPod touch(1세대) | comex | ||
1.1 | 4039 | - | iPod touch(1세대) | The iPhone 1337 Team | |
1.0 - 1.1.5 | ZiPhone | iPhone(1세대), iPod touch(1세대) | |||
2.0 - 2.2.1 | redsn0w | PwnageTool | iPhone(1세대)~ 3G, iPod touch(1세대)~ 2세대 | iPhone Dev Team | |
2.2 - 2.2.1 | QuickPwn | - | iPhone(1세대)~ 3G, iPod touch(1세대)~ 2세대 | iPhone Dev Team | |
3.0 - 3.0.x | redsn0w | PwnageTool | iPhone(1세대)~ 3GS, iPod touch(1세대)~ 3세대 | iPhone Dev Team | |
3.1.2 | blackra1n | iPhone(1세대)~ 3GS, iPod touch(1세대)~ 3세대 | geohot | ||
3.1.3 - 3.2 | Spirit | iPhone(1세대)~ 3GS, iPad(1세대), iPod touch(1세대)~ 3세대 | comex | ||
4.0 - 4.0.1 | JailbreakMe 2.0 - iOS 내 탈옥 | 해당 버전 모든 기기[22] | comex | ||
4.1 | limera1n | 해당 버전 Apple A4 이하 기기[23] | geohot | 완탈 | |
4.1 - 4.3.3 | JailbreakMe 3.0 - iOS 내 탈옥 | 해당 버전 모든 기기 | comex | ||
4.3.4 - 4.3.5 | redsn0w - iOS 내 탈옥 | 해당 버전 모든 기기[24] | Dev-team | 반탈 | |
5.0 , 5.1.1 | Absinthe - iOS 내 탈옥 | 해당 버전 모든 기기 | Chronic Dev-team | ||
5.1 | g1lbertCFW | iPhone 4S(이후 추가 예정) | eatingurtoes | 완탈 | |
6.0 - 6.1.2 | evasi0n | 해당 버전 모든 기기 | evad3rs | 완탈 | |
6.1.3 - 6.1.6 | p0sixspwn - iOS 내 탈옥 | 해당 버전 모든 기기 | win0cm | ||
7.0 - 7.1 beta2 | evasi0n7 | 해당 버전 모든 기기 | evad3rs | 완탈 | |
7.1 - 7.1.2 | Pangu - iOS 내 탈옥 | 해당 버전 모든 기기 | PanguTeam | 완탈 | |
8.0 - 8.4 | TaiG - iOS 내 탈옥 | 해당 버전 모든 기기 | TaiG | 완탈 | |
8.4.1 | EtasonJB - iOS 내 탈옥 | 해당 버전 모든 기기(32-bit 기기 전용) | tihmstar | 완탈 | |
9.0 - 9.1 | Pangu | 해당 버전 모든 기기(64-bit 기기 전용) | PanguTeam | 완탈 | |
9.2 - 9.3.3 | Pangu | 해당 버전 모든 기기(64-bit 기기 전용) | PanguTeam | 반탈 | |
9.1 - 9.3.4 | JailbreakMe 4.0 - iOS 내 탈옥 | 해당 버전 모든 기기(32-bit 기기 전용) | tihmstar | 반탈 | |
9.3.2 - 9.3.5 | Kok3shi - iOS 내 탈옥 | 해당 버전 모든 기기(64-bit 기기 전용) | sakuRdev | 반탈 | |
9.3.5 - 9.3.6 | Phoenix - iOS 내 탈옥 | 해당 버전 모든 기기(32-bit 기기 전용) | Siguza & tihmstar | 반탈 | |
9.x | p0laris - iOS 내 탈옥 | 해당 버전 모든 기기(32-bit 기기 전용) | spv | 반탈 | |
10.x | h3lix - iOS 내 탈옥 | 해당 버전 모든 기기(32-bit 기기 전용) | Tihmstar | 반탈 | |
10.x | TotallyNotSpyware - iOS 내 탈옥 | 해당 버전 모든 기기 | Jake Blair 외 다수 | 반탈 | |
10.x | doubleh3lix - iOS 내 탈옥 | 해당 버전 64-bit A7-A9 탑재 기기 | Tihmstar | 반탈 | |
10.x | Meridian - iOS 내 탈옥 | 해당 버전 모든 기기 | PsychoTea | 반탈 | |
11.x | Electra - iOS 내 탈옥[주의!] | 해당 버전 모든 기기 | CoolStar | 반탈 | |
12 - 12.1.2 12.1.3 - 12.2[제한적] 12.4[제한적] 12.4.9[제한적2] |
Chimera - iOS 내 탈옥[주의!] | 해당 버전 모든 기기 | CoolStar | 반탈 | |
11 - 14.5.1[중요] 14.6 - 14.8[제한적3] |
unc0ver - iOS/iPadOS 내 탈옥[주의!] | 해당 버전 모든 기기 | pwn20wnd | 반탈 | |
12.3 - 14.x | -[33] | checkra1n[34][35] | 해당 버전 64-bit A7-A11 탑재 기기 + Apple T2를 사용하는 모든 Mac[T2] + HomePod | Luca Todesco 외 다수 | 준반탈 |
13 - 13.7 | Odyssey - iOS/iPadOS 내 탈옥[주의!] | 해당 버전 모든 기기 | CoolStar | 반탈 | |
14.0 - 14.3 | Taurine - iOS/iPadOS 내 탈옥[주의!] | 해당 버전 모든 기기 | CoolStar | 반탈 | |
14.2 - 14.5.1[39] | - | Fugu14 | 해당 버전 A12 - A14, M1 탑재 기기 | Linus Henze | 완탈 |
15.0 - 17.1[40] | - | Palera1n | 해당 버전 A9 - A11 탑재 기기 | itsnebulalol | 준반탈 |
15.0 - 15.4.1 | XinaA15 - iOS/iPadOS 내 탈옥[주의!] | 해당 버전 A12 - A15, M1 탑재 기기 | xina520 | 반탈 | |
15.0 - 16.5 16.5.1[제한적4] 16.6 - 16.6.1[제한적5] |
Dopamine - iOS/iPadOS 내 탈옥[주의!] | 해당 버전 모든 기기 | opa334 | 반탈 |
8. 여담
시디아의 개발자인 제이 프리맨은 2017년 7월경 이제 iPhone 탈옥은 공식적으로 죽었다고 말했다.[45] 또한, 알레그라는 “이 시점에서 탈옥은 근본적으로 죽었다고 느낀다”고 말했다. 탈옥 커뮤니티에서 가장 유망한 해커인 루카 토데스코는 금년에 자신이 이 일을 그만 두겠다고 발표했다. 전에는 탈옥을 통해 거의 경이적인 기능들을 갖곤 했지만 이제는 소수의 작은 수정만 얻을 뿐이라고 한다.탈옥이 죽은 것은 크게 4가지 이유 때문이라고 한다.
- Apple이 탈옥을 어렵게 하기 위해 보안을 강화하고 있으며,
- 만일 해커가 취약점을 발견하면 이를 100만 달러에 팔 수 있고,[46]
- 대부분의 최고 탈옥 해커들은 고연봉의 보안 직장으로 자리를 옮겼고,
- iPhone을 탈옥하면 보안 취약점에 노출되기 때문이다.[47]
그래도 탈옥 자체는 아직도 꾸준히 나오고 있다.
9. 참조
[1]
다만 루팅의 경우에도 iOS 탈옥에 비해 간단하다는 것이지, 마냥 쉽지는 않다. 제조사가 부트로더 락을 거는 곳도 더러 있고, LG나 샤프의 경우에는 구글 넥서스처럼 쉽게 언락을 할 수도 없기 때문에 직접 부트로더를 해킹해야 한다.
[2]
2009년 45주차 이후 생산된
iPhone 3GS에는 뉴 부트롬이 설치되어 부팅 시 시스템 변조를 검사하고, 변조 발견 시 즉시 부팅 과정을 중단하고 무한사과에 빠지게 만들었다.
[3]
예로 소니가 커펌먹인 PSP에 대해 수리를 거부했다가 지침 변경으로 딱 한 번만 수리를 해주겠다고 한 것이 있다. PSP의 경우 수리 로그가 남기 때문에 횟수 제한을 걸 수 있었다.
[4]
Apple의 기기들은 원래 이런 것들이 안 된다.
[5]
하드웨어 고장은 수리해준다는 뜻이다.
[6]
즉, 여기서 AS 불가능은 시스템 관련에 한정한다는 소리다. 즉, 탈옥은 100% 시스템 관련 행위이기 때문에 시스템 관련이 아닌 나머지 AS까지 막으면
시정명령이 내려질 가능성이 높다.
[7]
이 작업을 안정화라고 부르는 이유는
해킨토시의 영향 때문이다.
[8]
최대 바운티가 3천만원에서 2억 사이이다!
[9]
심지어 약간 회색에서 블랙의 영역에 속하는 쪽(공식 홈페이지도 있다)에서는 현재 원격 완탈 익스플로잇의 가격이 계속 올라서 현재 150만 달러다!
[10]
정식 업데이트시 탈옥툴 이름은 Fugu15 Max가 아닌 다른 이름을 사용할 예정.
[11]
Prometheus(
프로메테우스)라고도 한다. FutureRestore는 툴의 이름이고, 프로메테우스는 그 툴에서 사용하는 우회 복원 방법 자체를 말한다.
[12]
A11 이상 기기들은 복원 불가능
[13]
iPhone 3GS의 iBoot 버전이 iBoot-359.3까지 구 부트롬(잘 모르겠다면, 국내 출시 기기는 99.9%가 신형 부트롬이고 간혹 리퍼폰 중에 구 부트롬이 껴있기도 한다. 2009년 45주 차 이전 생산품 해당.) iPod touch 2세대 8G 모델일 경우 모델명이 MB일 경우 구 부트롬 이후에 숫자가 높아졌으면 모두 신 부트롬이다.
[14]
A9 ~ A11, A11 암호 사용 불가.
[15]
A9 ~ A11
[16]
A9 ~ A14, M1
[17]
A9 ~ A13, A11 암호 사용 불가.
[18]
A11 암호 사용 불가.
[19]
9.3.4 ~ 9.3.6은 32비트 기기에서만 가능.
[20]
iPad mini 3세대 iOS 8.0 ~ 8.0.2는 Wi-Fi 모델만 가능
[21]
8.4.1은 32비트 기기에서만 가능.
[22]
iPad의 3.2 포함
[23]
iPhone 4 이하, iPad 1 포함
[24]
iPad2 제외
[주의!]
iOS 업데이트 파일이 OTA로 다운로드 되어 있는 경우 꼭! 삭제하고 tvOS 프로파일을 설치해야된다. 안 그럴 경우 무한사과가 떠버릴 수 있다.
[제한적]
A7-A11 바이오닉 한정
[제한적]
A7-A11 바이오닉 한정
[제한적2]
A7-A8 바이오닉 한정
[주의!]
iOS 업데이트 파일이 OTA로 다운로드 되어 있는 경우 꼭! 삭제하고 tvOS 프로파일을 설치해야된다. 안 그럴 경우 무한사과가 떠버릴 수 있다.
[중요]
14.4-14.5.1까지 버전에서는 반드시 아래의 Fugu14의 도움이 필요하다.
[제한적3]
A12-A13 바이오닉 한정
[주의!]
iOS 업데이트 파일이
OTA로 다운로드 되어 있는 경우 꼭! 삭제하고 tvOS 프로파일을 설치해야된다. 안 그럴 경우 무한사과가 떠버릴 수 있다.
[33]
2020년 2월 5일 Linux용 탈옥툴이 출시했다. 윈도우용은 아니지만 모든 PC에서 제약없이 탈옥툴을 쓸 수 있다.
[34]
소프트웨어 취약점을 이용한 이전 버전들의 탈옥과 달리, 하드웨어 취약점을 이용한 탈옥이기 때문에 iOS기기 재부팅후 재탈옥하려면 PC에 연결해야한다는 단점이 있으나 소프트웨어 버전에 무관하게 앞으로도 탈옥이 나올 가능성이 매우 높다는 점이 장점이다. 또한 최근에 리보크 이슈로 상태가 불안정한 리프로비전이나 시디아 임팩터등에 전혀 종속되지 않는 것이 오히려 더 안정적인 요소이다. 그리고 iOS14에서 일부 기종의 탈옥을 SEP으로 막았었으나 패치로 다시 뚫리게 되었다. 그러나 iOS 15부터는 애플이 루트리스를 매우 강화시키고 부팅 시 변조가 확인되면 즉시 부팅을 중지해버리도록 수정하면서 이것조차도 뚫리지 않고 있다.
[35]
여담으로 Checkm8 취약점은 A5, A6 탑재 기기에서도 적용 가능하지만 해당 기기들은 이미 소프트웨어 취약점 기반 탈옥툴들이 존재하고 AltStore+AltServerPatcher 조합이나 Sideloadly 등 시디아 임팩터 대체재들의 존재, 개발이 중단된 ReProvision 또한 다른 개발자가 이어받아
ReProvision Reborn으로 개선되어 재배포 되는 등 일단은 잘 유지되고 있는 덕에 Checkm8 취약점을 사용한 다른 탈옥툴은 2021년 기준으로도 아직 나오지 않았다.
[T2]
Apple iBridge T2의 bridgeOS (
watchOS 기반)를 탈옥하는 것이다.
macOS를 탈옥하는 것이 아니다.
[주의!]
iOS 업데이트 파일이 OTA로 다운로드 되어 있는 경우 꼭! 삭제하고 tvOS 프로파일을 설치해야된다. 안 그럴 경우 무한사과가 떠버릴 수 있다.
[주의!]
iOS 업데이트 파일이 OTA로 다운로드 되어 있는 경우 꼭! 삭제하고 tvOS 프로파일을 설치해야된다. 안 그럴 경우 무한사과가 떠버릴 수 있다.
[39]
14.2부터 지원은 하나 14.2부터 14.3 미만까지는 파일의 수정이 필요하다. github에 쓰여진 설명을 잘 읽어보고 빌드하자.
[40]
상단의 checkra1n과 똑같은 Checkm8 하드웨어 취약점을 사용함.
[주의!]
iOS 업데이트 파일이 OTA로 다운로드 되어 있는 경우 꼭! 삭제하고 tvOS 프로파일을 설치해야된다. 안 그럴 경우 무한사과가 떠버릴 수 있다.
[제한적4]
A9-A14 바이오닉, M1 한정
[제한적5]
A9-A11 바이오닉 한정
[주의!]
iOS 업데이트 파일이 OTA로 다운로드 되어 있는 경우 꼭! 삭제하고 tvOS 프로파일을 설치해야된다. 안 그럴 경우 무한사과가 떠버릴 수 있다.
[45]
원문
[46]
실제로 해킹팀 중 하나인 Pangu가 사람들에게 욕을 먹는데 이건 얘네들이 자기들의 취약점 탈옥 인증영상을 유튜브에 올려서 자랑질 시전 후 Apple에 취약점 판매만 하고 있지 탈옥툴은 절대 안 만든 지 오래됐기 때문이다. 탈옥을 원하는 많은 사람들이 Pangu의 자랑질에 낚여서 Pangu의 광고수익이나 올려주는 경우가 많다. 영상이나 사이트나 꼭 탈옥툴 만들어줄 것처럼 사람들을 현혹하고 있어서 탈옥 좀 찾아본 사람들은 Pangu라고 하면 그냥 다 거른다.
[47]
실제로 중국에서 이를 악용하였다. 언락폰은 비싸므로 값어치 없는 잠긴폰 중 탈옥가능모델을 구해서 탈옥언락 등을 통해 쓰는 유저가 중국에 많았는지, 이 툴 자체를 중국정부가 제공했거나, 여기에 쓰이는 다른 앱이나, 아니면 약해진 유닉스기반 OS에 무작위로 돌려서(혹은 이통사 전산을 통해 iPhone 목록을 구해서) 침투한 것이 아닌가 싶다. 실제로 11버전이 초기엔 SSH 터미널을 닫기 곤란하여 외출 시에는 설정에 들어가서 Wi-Fi를 꺼야(11부터는 토글에서 Wi-Fi를 껐어도 현재 연결된 Wi-Fi의 연결을 해제할 뿐 Wi-Fi 자체를 끄진 않기 때문에 실외 Wi-Fi는 편의를 위해 다시 접속을 시도한다.) 안전해진다.
[48]
iOS 17 탈옥 업데이트를 기재하지 않아서 부정확할 수 있다.