IOS 탈옥
iOS 탈옥()은 iOS의 샌드박스 제한을 풀어 타 회사에서 사용하는 서명되지 않은 코드를 실행할 수 있게 하는 과정을 말한다. 시디아의 개발자인 제이 프리맨은 전체 아이폰 중 10%가 탈옥되었다고 추정한다.
탈옥을 하는 이유 중 하나는 애플과 앱 스토어가 막아 놓은 컨텐츠에 접근하기 위해서이다. 애플은 앱 스토어에 앱을 등록하기 전에, 먼저 앱이 정책에 부합하는지를 검열하는 절차를 가진다. 하지만, 애플의 검열 기준은 안전성과 보안 문제만에 관한 것은 아니며, 이 기준은 상당히 모호하고 독단적이라는 비판을 받는다.
검열에서 삭제된 앱들을 이용하기 위해서, 사용자들은 탈옥을 함으로써 앱스토어를 이용하지 않고 애플리케이션을 이용할 수 있다. 또한 탈옥을 함으로써 아예 애플에게 검열받지 않은 앱, 즉 사용자가 직접 제작한 앱이나 인터페이스를 사용할 수 있다.
시디아를 통해서 다운받는 애플리케이션들은 애플의 앱스토어 규정을 완전히 무시해도 되기 때문에, 시디아의 대부분의 애플리케이션들은 그 자체로 작동하는 것이 아니라, 앱스토어의 다른 앱들을 해킹하는 용도로 쓰인다. 유저들은 이러한 탈옥 앱을 설치함으로써 인터페이스를 개인화하거나,필요한 기능들을 추가하거나 고칠 수 있으며, 직접 파일에 엑세스함으로써 앱을 좀 더 손쉽게 수정할 수 있다. 중국사람들은 애플것보다 쓰기 쉬운 중국어 자판을 설치하기 위해 탈옥을 하기도 한다.
아이팟 터치와 아이폰의 탈옥을 성공한 최초 펌웨어 버전은 1.1.1 이었다. 이때 수많은 사용자들과 개발자들이 아이팟 터치의 버그를 발견하였고, 이와 더불어 최초의 아이팟 터치 및 아이폰 탈옥 팀인 아이폰 데브팀이 아이팟 터치와 아이폰의 펌웨어를 탈옥하였다. 최초 탈옥 당시에는 Cydia 대신 Installer라는 프로그램이 설치되었는데, Cydia에 비해 매우 불안정하였다. iPhone OS를 최초로 탈옥했다는 점에 대해서는 의의가 있지만, 너무 불안정해 부팅 시 오류가 나 강제로 복원해야 하는 등 문제점이 존재한, 아직은 불완전한 탈옥툴이었다.
iPhone OS 2.0부터의 탈옥툴에서부터 Cydia가 등장하기 시작하였다. 기존의 Installer은 아직 존재하였으며, Cydia로 두 프로그램이 합쳐지기 전까지는 Cydia와 Installer의 기능이 양분되어 있었다. (Cydia에는 각종 (Tweaks)가 존재하였고, Installer에는 Winterboard와 관련된 테마들과 게임 등이 존재하였다.)
아이팟 터치 2세대는 2009년 2월 초반에 불완전한 탈옥인 반탈옥에 성공하였고 (재부팅시 탈옥이 풀림), 3월 중부터 완전 탈옥툴이 등장함에 따라 부팅 문제를 해결할 수 있었으며, 초보자도 간단히 따라할 수 있었다.
iOS 3.0 역시 초기에는 탈옥으로부터 자유로울 순 없었다. 하지만, 마지막 베타 버전이 발표되었을 때 아이폰 데브팀은 이미 새로운 펌웨어의 버그를 찾아 해킹을 완료하였다. iOS 3.1.2의 탈옥툴은 BlackRa1n으로 반탈이 가능하나, Spirit이라는 탈옥툴로 3.1.2와 3.1.3 모두 완전 탈옥이 가능하다.
iOS 3.1.3 완전 탈옥 도구를 개발한 Spirit팀이 4.0 탈옥 도구의 개발을 끝내고, 2010년 8월, PDF의 취약점을 이용한 iOS 3.1.2, 3.1.3, 3.2, 3.2.1, 4.0, 4.0.1의 탈옥 툴인 Jailbreakme를 발표하였다. 다른 기존의 탈옥툴과 달리, Jailbreakme는 Safari에서 직접 Slide to Jailbreak을 하면 바로 Cydia가 설치되는 방법을 채택하였다. 한편, 지오핫(geohot)은 iOS 4.1 탈옥 도구인 limera1n 개발을 6개월 만에 단독적으로 성공했으며, 또 다른 개발자 iH8sn0w는 sn0wbreeze 탈옥 도구도 개발에 성공했다. 또한, 크로닉 데브팀(chronic dev team)은 iOS 4.1 탈옥 도구인 greenpois0n을 현재 배포 중이다. limera1n과 greenpois0n이 4세대 기기를 지원한다. iOS 4.2.1이 설치된 신부트롬 제품들의 탈옥 도구는 맥에서만 지원되는 완전 탈옥 도구의 베타 버전과, 윈도/맥 환경을 모두 지원하는 greenpois0n rc5가 공개되어 완전탈옥이 가능하다. 또한 애플이 iOS 4.3 개발자용 베타 버전 배포를 시작하여서 그에 따른 탈옥 도구도 나올 예정이다. 추가로 iOS 4.2.1의 완전 탈옥 버전을 greenpois0n이 지원하고 있다. 4.3.1 버전은 완전 탈옥이 가능했다. 2011년 7월 5일(미국시간), Comex가 Jailbreakme 3.0을 공개하였다. 이번 탈옥은 iOS 4.0.1 당시 나온 방식과 같이 사파리에서 jailbreakme.com에 접속하는 것으로 탈옥이 가능하다. 또 이전까지 탈옥이 안되던 아이패드2도 탈옥이 가능하게 되어서, iOS 4.3.3의 모든 기기의 완전 탈옥을 지원한다. 현재 아이팟과 아이폰, 그리고 아이패드 등 모든 기종의 iOS 4.3.5의 완전 탈옥은 나오지 않았다.
greenpois0n으로 탈옥하면 부팅시 해골로고가 뜬다.
이것이 거추장스럽거나 꺼리다면 시디아 소스 Bigboss에서 boot로고를 변경가능하다고 한다.
미국 시간으로 2011년 12월 9일, 크로닉 데브 팀(Chronic Dev Team) 소속의 프랑스 해커 pod2g가 아이팟 터치 3세대 iOS 5.0의 완전 탈옥(Untethered Jailbreak)에 성공했다. 이후, 12일에는 아이폰 4와 아이팟 터치 3세대 iOS 5.0.1의 완전 탈옥에, 13일에는 아이패드 1세대, 아이폰 3Gs, 아이팟 터치 4세대 iOS 5.0.1의 완전 탈옥에, 그리고 14일에는 애플 TV 2세대 iOS 4.4.3의 완전 탈옥에 성공했다. 22일, pod2g는 크로닉 데브 팀에 모든 세부 사항들을 넘겼고, 27일, 아이폰 데브 팀(iPhone Dev Team)이 아이폰 3Gs와 4, 아이패드 1세대 그리고 아이팟 터치 3세대와 4세대 iOS 5.0.1의 탈옥 도구 redsn0w 0.9.10b1을 발표했다. 이로써 애플 A4 기반의 기종들은 iOS 5.0.1에서 모두 완전 탈옥이 가능해졌다. 28일에는 Launchctl(iOS 운영체제가 부팅될 때, 자동으로 실행되는 프로세스와 서비스 등을 제어하는 프레임워크)에 관련된 버그를 수정한 redsn0w 0.9.10b2가 발표됐고, 29일에는 MobileSubstrate 기반 앱들이 실행되지 않았던 문제를 해결한 redsn0w 0.9.10b3가 발표됐으며, 2012년 1월 15일에는 iBooks가 실행되지 않는 버그와 이따금 발생하는 Launchctl에 관련된 버그를 수정한 redsn0w 0.9.10b4가 발표됐다. 그리고 16일, pod2g는 아이폰 4S iOS 5.0.1의 완전 탈옥에 성공했고, 18일에는 아이패드 2 iOS 5.0.1의 완전 탈옥에 성공했다. 이윽고 20일, 크로닉 데브 팀이 아이폰 4S iOS 5.0/5.0.1 및 아이패드 2 iOS 5.0.1의 탈옥 도구 Absinthe v0.1.2-1을 발표하며, 마침내 애플 A5의 CPU를 쓰는 기종들도 iOS 5.0.1에서 모두 완전 탈옥이 가능해졌다. 단, 이 버전은 매킨토시(Macintosh)에서만 사용할 수 있었다. 같은 날 네 시간 후, 역시 매킨토시 전용으로 Absinthe v0.1.2-2가 발표됐고, 21일에는 윈도(Windows)에서도 사용 가능한 Absinthe v0.2가 발표됐으며, 23일에는 일부 32비트 윈도에서의 버그를 수정하고 리눅스(Linux) 버전이 추가된 Absinthe v0.3이 발표됐다. 이 밖에도 애플 A4 기기 iOS 5.0.1의 완전 탈옥이 가능한 탈옥 도구로는 PwnageTool 5.0.1과 sn0wbreeze v2.9.1 등이 있다.
redsn0w 0.9.13으로 iPod touch 4G, iPhone3GS, iPhone4 (GSM), iPhone4 (CDMA)의 반탈옥이 가능하다. 그리고 한 해커인 Planetbeing은 아이폰5를 iOS 6.0.2 버전에서 완전 탈옥에 성공하였으나 겨우 찾은 취약점이 iOS 6.1에서 보완이 될까봐 배포를 하지 않았다. 2013년 1월 25일에는 애플리케이션 개발에 힘쓰고 있던 프랑스 해커 pod2g가 planetbeing의 완전 탈옥 프로젝트에 참여해 MuscleNerd, pimskeks와 함께 'evad3rs' 라는 새로운 팀을 구성하였고 그로 인해 크로닉 데브 팀(Choronic Dev Team)은 해체했다. 마침내 2013년 1월 29일에 iOS 6.1이 배포되자 evad3rs 팀의 해커인 MuscleNerd가 2013년 2월 3일(현지시)에 배포할 예정이라고 했다. 그러나 출시가 1일 늦어져 2013년 2월 4일 오후 12시(NYT)로 연기되었고, 배포가 시작되었다. 이 날에 모든 iOS 6 버전(iOS 6, iOS 6.0.1, iOS 6.0.2, iOS 6.1, ios 6.1.2)의 탈옥을 지원하며, iOS 6가 적용되는 애플 TV 3세대를 제외한 기기에 적용된다. 탈옥툴의 이름은 'Evasi0n' 이다. 탈옥툴이 배포되고 3일간은 Cydia에 트래픽이 몰리는 현상으로 인해 BigBoss등의 제공자의 서버 다운 현상이 나타났다.
iOS 6.1.3와 iPhone 5 전용 펌웨어의 iOS 6.1.4, iPod touch 4세대 전용 펌웨어인 iOS 6.1.5, 6.1.6의 완전 탈옥툴은 iH8sn0w와 winocm, SquiffyPwn에 의해 p0sixspwn이 공개되었으며 (링크)에서 Mac OS X (10.6+), Windows로 가능하다.
또한 iPod touch 4G, iPhone3GS, iPhone4 (GSM), iPhone4 (CDMA), iPhone4 (Rev-A)의 경우 redsn0w 0.9.15b3로 반탈옥을 진행했으면 Cydia에서 p0sixspwn를 설치함으로써 반탈옥에서 완전 탈옥으로 바꿀 수가 있다.
iOS 7.0이 출시한 이후 winocm은 iOS 7 반탈옥 툴인 opensn0w를 오픈소스로 공개하였다. 이 툴은 iPhone4 (GSM), iPhone4 (CDMA), iPhone4 (Rev-A)만을 지원하며 커널 패치 부팅만을 지원한다. 따라서 Cydia 등 설치를 할려면 SSH2_Bundle.tgz를 SSH ramdisk로 통해 설치하여 SSH를 가능하게 만들고 apt-get을 이용하여 Cydia를 설치하면 반탈옥이 성공된다. 이를 기반으로 대한민국 개발자 deVbug가 semiauto_opensn0w, opensn0w_gui를 개발해내어 자동화 반탈옥 툴을 공개했다.
이후 evad3rs에 의해 iOS 7.0~iOS 7.1 beta 3의 완탈옥 툴인 evasi0n7이 공개되었다. 하지만 iOS beta 4 부터 본 탈옥툴로 탈옥이 되지 않았고, iOS 7.1 정식 출시 이후에도 탈옥을 할 수 없었다. 그런데 2014년 6월 23일 중국의 새로운 해커 그룹 PanGu가 등장하였고, iOS 7.1 이상의 기기가 설치된 장치를 탈옥하는 툴을 공개할 것이라고 예고했다. 이후 PanGu팀은 iOS 7.1~iOS 7.1.2 를 탈옥할 수 있는 탈옥툴을 공개하였다.
iOS 8 정식 출시 이후 기존 7의 탈옥을 지원했던 PanGu 팀이 8.0 이후의 탈옥을 개발한다고 공식 웨이보 계정에서 예고하였다. 이후 iOS8에서 잦은 버그가 발견되어 iOS 8.1 버전이 공개될 것이라고 예고되자 PanGu 팀은 8.1 정식 출시 이후 8.0 이상의 펌웨어를 설치하는 모든 기기의 탈옥을 지원하는 탈옥툴을 공개한다고 했다. 2014년 10월 22일, PanGu 팀은 Pangu8 1.0.1을 공개하였다. 하지만 Pangu8 1.0.1 버전에서는 Cydia가 설치되지 않으며, 영어를 지원하지 않는다. cydia의 경우 자동으로 설치되지 않지만 iOS8은 현재 지원하기 때문에 deb 파일을 이용하여 설치할 수 있었다. 이러한 이유로 10월 31일, Pangu팀은 버전 1.1을 공개하였고, Cydia 인스톨러 및 영어를 지원한다. 하지만 일부 iOS 버그를 고친 iOS 8.1.2 버전이 출시되었고, 이 버전에서는 Pangu를 이용한 탈옥이 막혔다. 하지만 또 다른 중국 해커 그룹인 TaiG Jailbreak Team에서 iOS 8.0 ~ 8.1.2 까지 지원하는 TaiG 탈옥툴을 공개하였다. 그러나 TaiG Jailbreak Team에서 탈옥에 이용한 취약점 등이 보완된 iOS 8.1.3 이 공개 되면서 오랜 기간 기기를 탈옥할 수 없었다. 이후 2015년 6월 23일, iOS 8.3 까지를 탈옥하는 TaiG의 탈옥툴이 공개되었고, 2015년 7월 1일, iOS 8.4 출시 두 시간여 만에 TaiG에서 iOS 8.4의 탈옥 툴이 공개되었다.아울러 Pangu 에서도 8.4 까지 지원하는 탈옥툴을 공개하였다. 그러나 iOS 8.4.1 버전에서 탈옥을 할 수 있게하는 취약점이 수정되면서 이 버전에서만 탈옥을 할 수 없는 상태가 되었다.
iOS 9 탈옥툴은 7세대 탈옥과 초기 8세대 탈옥을 만든 Pangu팀이 2015년 10월 14일에 공개하였다. 기존 iOS 9, iOS 9.0.1, iOS 9.0.2를 설치할 수 있는 기기를 포함하여, 애플 9월 행사에서 공개한 아이폰 6S와 6S 플러스도 탈옥할 수 있었다. 그러나 10월 22일 애플이 Pangu팀이 이용한 2개의 취약점을 수정한 iOS 9.1을 공개하여 Pangu 탈옥을 사용할 수 없게 됐다. 2016년 3월 11일, Pangu9 1.3.0이 공개되어 iOS 9.1까지 탈옥을 지원하게 되었다. 그러나 iOS 9.1의 탈옥툴은 이미 당시 최신버전이 나온 뒤에 공개된 터라 기기를 탈옥하려던 사용자들의 대다수는 설치를 할 수 없었다. 2016년 7월 24일, Pangu팀은 64비트 기기에 설치된 iOS 9.2~iOS 9.3.3의 탈옥을 지원하는 프로그램을 공개할 것을 예고했고, 2016년 7월 28일 탈옥 프로그램이 공개되었다. 그러나 이 버전의 탈옥툴은 iOS 7 이후로 등장하지 않았던 '반탈옥' 상태를 만들어준다. 기존 반탈옥과는 다르게, '무한 사과'가 등장하지 않고 부팅이 되지만, 탈옥이 풀린상태가 되어 기기 내 설치된 앱을 통해서 다시 재탈옥을 해야한다. 8월 4일, 보안 업데이트를 다룬 iOS 9.3.4가 공개되면서 Pangu 탈옥은 또다시 막히게 되었다. 이번 9세대 탈옥은 탈옥툴을 공개하는데 상당기간 걸릴뿐더러 공개하는 즉시 막혀버리는 상황으로 인해 일반 사용자들을 위한 iOS 9의 탈옥툴은 앞선 iOS 탈옥에 비해 만들기가 어려웠음을 시사할 수 있다.
! scope="col" style="width:8%" | 모델
! scope="col" style="width:7%" | 모델 출시일
! scope="col" style="width:5%" | 최초 탈옥 도구 출시일
! scope="col" style="width:5%" | 탈옥가능한 최신 iOS 버전
! scope="col" style="width:5%" | 설치가능한 최신 iOS 버전
! scope="col" style="width:5%" | 완전탈옥 유무
!colspan=6|iPhone OS 1.0
! 아이폰
! 아이팟 터치 1세대
!colspan=6|iPhone OS 2.0
! 아이폰 3G
! 아이팟 터치 2세대
!colspan=6|iPhone OS 3.0
! 아이폰 3Gs
! 아이팟 터치 2세대
! 아이패드
!colspan=6|iOS 4.0
! 아이폰 4
! 아이팟 터치 4세대