Hack/Mobile

IOS 앱 해킹 - 비인가 앱 설치하는 방법

철상 鐵想 Irondenker 2025. 12. 26. 13:57

글에 앞서 우선 경고하자면, 이 글에서 언급된 모든 앱들은 현재 실사용 중인 핸드폰에 설치하는 것을 추천하지 않는다.

이 글은 해킹의 원리와 잠재적 위험을 정확히 인지하고 대응할 수 있는 현업자나 취준생 혹은 윤리적인 취미생을 위한 것이다.

해당 글은 오차가 많고 정확하지 않기에, 완전히 신뢰하고 따를 수 없으며 예기치 못한 문제상황에서는 본인이 해결해야 한다.

위 경고에도 불구하고 이 글을 따라하다 작업 중 손실 및 피해가 발생할 경우, 그것은 전적으로 실습자 본인의 책임임을 밝힌다.

 

아니 주인장 애초에 탈옥 전용앱인 Palera1n Slieo Zebra 잘만 설치했으면서

또 뭔 앱을 설치하냐 이게 무슨 소리냐 하겠지만, 이게 완벽히 끝난 게 아니다.

 

내 목적은 추후 실무를 위한 해킹 세팅도 있지만, iOS 앱 해킹 역량을 키우는 것도 있다.

그래서 해킹 실습에 최적화된 해킹 연습용 앱을 설치해야만 한다.

 

물론 Apple이 "님들 맘놓고 해킹 실습하세요~" 하면서

App Store에 애초부터 결함이 있게 만들어진 해킹 실습용 앱 런칭을 인가해 줄 리가 없다.

 

그러니까 필연적으로 비인가 앱을 설치하는 수 밖에 없다.

 

내가 설치를 목표로 하는 앱은 DVIA-v2 이다.

https://github.com/prateek147/DVIA-v2

 

GitHub - prateek147/DVIA-v2: Damn Vulnerable iOS App (DVIA) is an iOS application that is damn vulnerable. Its main goal is to p

Damn Vulnerable iOS App (DVIA) is an iOS application that is damn vulnerable. Its main goal is to provide a platform to mobile security enthusiasts/professionals or students to test their iOS penet...

github.com

깃허브에서 다운로드받은 소스코드 중 .ipa로 끝나는 파일을 설치하면 된다.

 

근데 그렇게 호락호락할 리가 없지, 아마 앱 무결성 확인을 이유로 개발자의 서명이 필요하다고 할 것이다.

그래서 이 서명 정보를 우회할 수 있는 사이드로드 앱을 통한 앱 설치가 필요하다.

AltStore, TrollStore 등이 있다.

 

우선 AltStore를 통한 설치 시도를 했는데, 실패했다.

아이폰에 AltStore를 올리는 것까지는 성공했다.

근데 웬만하면 하지 말자. 컴퓨터에 깔린 모든 애플 관련 앱을 전부 지웠다가, Microsoft Store가 아닌 곳에서 다운로드 받은 후에 그걸 다시 또 깔아야 한다. 내가 이것 때문에 거의 3일을 꼬박 삽질했던 것 같다. 아이튠즈 아이클라우드 하여간 애플이 만든 모든 앱을 윈도우에서 제거하고 다시 깔고를 반복해야 한다. 정신 건강에 매우 안좋다.

그렇게 해서 설치한 앱은 7일의 인증 시간이 주어지고, 만료가 되기 전에 수동으로 연장을 이를 갱신해야 한다. 성공했어도 너무 귀찮았을 것 같다.

 

내가 성공한 방법은 TrollStore에 가깝다.

https://github.com/opa334/TrollStore

 

GitHub - opa334/TrollStore: Jailed iOS app that can install IPAs permanently with arbitary entitlements and root helpers because

Jailed iOS app that can install IPAs permanently with arbitary entitlements and root helpers because it trolls Apple - opa334/TrollStore

github.com

 

위 깃허브 링크에서 설명을 발췌하여 설명하자면

TrollStore는 열람한 모든 IPA 파일을 영구적으로 사이드로드하여 설치할 수 있는 앱이다.

작동 원리는 AMFI/CoreTrust 버그인데, iOS가 다중 서명자가 포함된 바이너리의 코드 서명을 올바르게 검증하지 못하는 취약점을 이용한 앱이라고 한다.

 

지원 버전: 14.0 베타 2 - 16.6.1, 16.7 RC (20H18), 17.0

 

위 지원 버전을 보고 대충 감이 오겠지만, 내가 적용할 수 없는 방법이었다.

 

내가 가진 폰은 iOS 16.7.10 버전이었고, 버전 다운그레이드도 기술적으로 불가능한 상황이었다.

애플의 서명(Signature)이 종료된 버전으로는 다운그레이드 및 버전 이동이 불가능한데, 2024년 9월 이후 시점부터는 공식적으로 iOS 17 최신 버전(17.6.1 이상)으로만 버전 이동이 가능하기 때문이다.

 

사실 바로 아래 설명에 대놓고 적혀있다. 16.7 하위 버전과 베타 이상의 17.0 버전은 절대 지원 불가하다고 한다.

16.7.x (excluding 16.7 RC) and 17.0.1+ will NEVER be supported
(unless a third CoreTrust bug is discovered, which is unlikely).

 

 

그래서 TrollStore 기능을 제한적으로나마 사용할 수 있는 TrollStore Lite 앱을 설치해 사용하고 있다.

설치 방법은 Slieo의 검색 창에 TrollStore / TrollStore Lite 등을 선택해 설치하는 방법이다,

TrollStore Lite는 TrollStore를 만든 제작자가 공인한 앱도 아니며, 솔직히 말해서 이 앱이 정상 작동 여부와 상관 없이 출처가 불분명한 것은 사실이기에 사용하기 조금 찜찜한 면도 없지 않아 있다.

 

그래도 현 시점에서는 iOS 16.7인 경우 TrollStore Lite를 사용하는 것이 거의 유일한 해결책으로 보인다.

그리고 간단하다. iPhone 로컬 혹은 iCloud 내부에 있는 .ipa 파일을 TrollStore Lite에 추가해서 인증서를 발급받는 것이면 끝이다.

DVIA-v2도 이런 식으로 설치를 완료했다. 추가 인증 없이. 영구적인 인증을 거친 상태로 말이다.

 

사실 이 방법을 알아낼 때까지 삽질과 노가다를 너무 많이 했어가지고, TrollStore Lite로의 '딸깍' 해결이 가능했을 때 현타가 왔었다... 근데 아예 우회방안 막혀서 앱 설치 못하는 것보단 낫긴 하다.

 

그래서 결론, TrollStore Lite를 이용하자!