어쩌다보니 iOS 보안쪽 프로젝트를 하게 되면서(보안을 벗어나나..싶었는데..) 가장 먼저 필요한 것이 바로 탈옥된 아이폰이다. 탈옥된 아이폰이 있어야 여러가지 취약점 테스트, iOS 시스템의 내부 구조들을 볼 수 있기 때문이다.
아이폰를 꽤 오래 사용하고 있음에도 단 한번도 아이폰을 탈옥시킨 적이 없었다. 내 정보가 들어있는 아이폰의 보안을 무너뜨리기 싫었기 때문이다. 때문에 이번 작업은 나도 처음이다.
주의- 함부로 따라하지 마세요.
0. itunes & icloud 설치
최신 itunes를 설치하자.(마이크로소프트 스토어에서는 설치하지 말고..)
https://www.apple.com/kr/itunes/
1. iPhone 공기계 준비
우선 아이폰을 탈옥하기 위해서는 아이폰 1대가 필요하다. 탈옥하여 어떤짓을 할지도 모르고 보안상 위험할 수 있기 때문에 실제 사용하지 않는 공기계가 좋겠다.(실제 사용하는 아이폰의 탈옥은 매우매우 추천하지 않는다.) 나에게는 좀 오래된 아이폰6 공기계가 있다. 나름 배터리도 갈아주어 빠릿빠릿하다.
2. Altstore 설치
아이폰을 탈옥하기에 앞서 Altstore라는 프로그램을 PC에 설치 해야한다. 아이폰은 기본적으로 앱스토어에서 배포되지 않은 앱의 설치를 차단한다. 하지만 예외의 경우가 있는데 바로 앱 개발자가 만든 앱을 테스트하기 위해 앱을 설치하는 경우이다. 앱개발자는 자신이 만든 앱을 아이폰에 설치하여 테스트 하기위해 자기자신의 개발자 계정의 인증서로 사이닝을 하게된다. 이러한 또 다른 루트를 통해 설치 되는 것을 이용하여 임의의 앱을 아이폰에 설치 할 수 있게 해준다.
https://altstore.io/ 에 접속하여 AltStore를 다운로드 받을 수 있다. macOS, Windows환경을 지원한다. 나는 Windows환경에서 진행하기위해 Windows용 AltStore를 다운로드 받았다.
다운로드 받은 altstore.zip파일의 압축을 해제하여 altinstaller를 실행하여 설치한다.
3. altserver 실행, 아이폰 연결, altstore 아이폰에 설치
설치가 끝난 후 altserver를 실행해준다.
altserver를 실행하면 트레이 영역에 아이콘이 타나는 것을 볼 수 있다.
이제 아이폰을 PC와 연결 하면 altserver Install AltStore에 연결한 iPhone이 나타나는 것을 볼 수 있다.
누르자.
누르면 뭐가 진행이 안되고 Apple 계정을 입력해 달라고한다. App을 설치하는데 필요한 개발자 인증서가 필요하기 때문인 것 같다. 입력해주자. (불안하면.. 실제 쓰는 계정이 아닌 다른 계정을 하는 것을 추천한다.)
애플 계정을 넣고 2차 인증까지 마치면 설치가 진행된다.
아이폰에 Altstore가 설치 된 것을 볼 수 있다. 하지만 앱이 실행이 안되는데 이는 신뢰되지 않은 개발자가 서명한 앱을 설치 하였기 때문이다.
간단하게 설정 - 일반 - 기기관리 - 개발자앱 에서 신뢰 시켜주면된다.
4. altstore 계정 설정
아이폰에서 alstore를 실행하여 애플 ID로 로그인하자. 그럼 AltStore에서 IPA파일을 다운로드 받아 설치 할 수 있게 된다.
5. unc0ver 설치
아이폰의 사파리 브라우저로 https://unc0ver.dev/ 에 접속하여 unc0ver를 다운로드 받는다.
unc0ver.dev 사이트에 접속하면 open in AltStore를 클릭하여 unc0ver를 AltStore에 다운로드 받을 수 있다.
다운로드가 다 되면 아이폰에 unc0ver가 설치 된 것을 볼 수 있다.
6. unc0ver - jailbreak
unc0ver를 실행하여 jailbreak 버튼을 눌러 탈옥을 진행한다. 총 32단계로 진행되는데 22단계에서 재부팅을 후 다시 실행 할 것이라는 알림창이 뜬다. Ok를 눌러 재부팅을 진행 후 다시 unc0ver를 실행한다.
0부터 다시 시작하여 jailbreak가 끝났다는 알림이 뜨고 OK를 눌러 재부팅한다.
재부팅하면 Cydia가 설치 된 것을 볼 수 있다.
이제 미래를 장담할 수 없는 탈옥된 아이폰이다.
7. 추가. openssh설치하기
무언가 아이폰 내부를 자세히 들여다 보려면 ssh로 접속해 보는 것이 좋을 것이다. cyida에서 openssh를 설치하여보자.
검색에서 openssh를 검색하여 설치를 하자.
설치가 완료된 후 ssh클라이언트로 아이폰에 접속해보자. 아이폰은 wifi에 연결되어 있어야 하며 ip주소를 알아야한다.
간단히 putty로 접속해 보았다. 기본 계정은 root / alpine 이다.
아이폰의 쉘이 뜬 것을 볼 수 있다.
이제 가지고 놀면 될 것이다.
참고
* https://cpuu.postype.com/post/10436260
'보안 > iOS보안' 카테고리의 다른 글
iOS 앱 덤프하기 frida-ios-dump (0) | 2022.10.19 |
---|---|
iOS 프리다(Frida) 세팅하기 (0) | 2022.10.14 |
아이폰 탈옥하기 with checkra1n (iOS 12.5.6) (0) | 2022.10.13 |
iOS 버전별 기기별 호환 탈옥툴 조회, 펌웨어 조회 - appledb.dev (0) | 2022.10.13 |
iOS개발을 위한 Apple 아카이브 문서 모음 (0) | 2022.10.12 |
댓글