본문 바로가기
Security/iOS

[Mobile - IOS] 2024년 기준 IPA 추출을 위한 두가지 방법

by Kyn 2024. 5. 11.

과거 IPA를 추출하는 방법은 아이폰 내에서 압축파일 형태로 추출하는 방법이나, CrackerXI를 활용하는 등 다양한 방법이 있었으나 Sileo를 활용하는 최신버전에서는 지원하지 않게 되었다.

이에 2024년 기준 IPA를 추출할 수 있는 방법 두가지를 소개하고자 한다. 

 

1. iMazing

iMazing은 사용자가 모바일 기기와 PC간 파일과 데이터를 손쉽게 전송할 수 있게 도와주는 소프트웨어다.

테스트 환경은 Mac, iMazing 3.0.0 기준으로 작성되었다.


1. 기기를 iMazing에 연결한 후 우측에 위치한 앱 관리로 이동한다.

 

2. 라이브러리 탭으로 이동한 후 추출하고자 하는 항목에 ". IPA 내보내기"를 시도한다.

 

3. 추출한 IPA를 .zip로 확장자 변경한 후 내용 확인이 가능한 것을 확인

 

하지만 iMazing을 활용해 추출하기 위해선 등록한 계정이 AppStore에서 구매한 이력이 있어야 추출이 가능하다.

 


 

2. Frida-iOS-dump

IPA를 추출하기 위한 파이썬 도구로 Git hub에서 다운로드할 수 있다.

 

https://github.com/AloneMonkey/frida-ios-dump

 

GitHub - AloneMonkey/frida-ios-dump: pull decrypted ipa from jailbreak device

pull decrypted ipa from jailbreak device. Contribute to AloneMonkey/frida-ios-dump development by creating an account on GitHub.

github.com

 

Frida-iOS-dump를 사용하기 위해선 탈옥된 기기와 PC에 Frida가 설치되어 있어야 한다.


1. Frida-iOS-dump를 다운한 후 dump.py를 편집

 

2. dump.py 파일을 사용자 환경에 맞게 수정해 준다.

User = 'root'
Password = '(비밀번호)'
Host = '(아이폰 IP)'
Port = (포트번호)
KeyFileName = None

 

3. frida-ios-dump 디렉터리 이동 후 파이썬 모듈을 설치

pip install -r requirements.txt

 

4. frida 명령어 입력 후 추출하고자 하는 앱의 Identifier를 복사해 준다.

frida-ps -Uai

 

5. dump.py으로 IPA 추출 시도

python3 dump.py (Identifier)

 

6. 성공적으로 추출한 것을 확인

 

7. zip로 확장자 변경 후 내부 확인

iMazing과 달리 Frida-iOS-dump는 계정이 별도로 필요 없으며 환경 구성 후 IPA를 바로 추출할 수 있다.

댓글