Jail Break된 휴대폰에 연습용 어플을 설치해 보았다

먼저 Xcode를 실행해서 설정으로 이동한다

App을 설치하기 위해선 계정등록이 되어있어야 한다
그래서 왼쪽 하단의 + 버튼을 클릭해서 계정을 추가해 준다

Apple ID 선택

이메일 또는 전화번호를 입력한다

그리고 계정의 비밀번호를 입력하고 Next 클릭

계정이 생성되었다

다음으로 Xcode에서 새로운 프로젝트를 생성한다

이름은 ruangApp으로 하였고, Objective-C로 하였다

ios_pentesting이라는 폴더에 만들었다

그리고 Signing & Capabilities에 들어가서 Team설정을 해주면 위와같이 나타난다

information을 클릭하면 위와같이 나온다

휴대폰에 설치가 가능하도록 ios버전을 14.0으로 하고 iOS Device에 있는 iphone7_ruang을 선택한다

실행 버튼을 눌러 ruangApp을 휴대폰에 설치한다

비밀번호를 입력하고 허용 클릭

클릭하면 휴대폰에 정상적으로 설치되고 위와같은 메시지가 나타남을 확인할 수 있다


휴대폰 설정 - 기기관리로 이동하면 개발자 앱부분에 새로운 항목이 나타난다
클릭해서 들어간다

클릭하면 위와같이 나타나고 파란색 부분의 Apple Development 부분을 클릭한다
그리고 신뢰 버튼을 눌러주면 ruangApp이 정상적으로 실행된다

ruangApp이 설치되고 실행되는것을 확인하였다
이제 내가 원하는 앱을 설치하기 위해 빨간색 영역에 있는 파일을 드래그 앤 드롭으로 복사해준다


복사한파일의 이름을 embedded로 변경한다

그리고 설치하고자 하는 앱이 있는곳으로 이동시켜준다

터미널에서 확인해보면 위와같이 되어있다

다음으로 내가 원하는 App을 설치하기 위해 Window - Devices and Simulators 클릭

그럼 위와같이 나온다
새로운 App을 설치하기 위해 하단의 + 버튼 클릭

설치할 App을 선택하고 Open클릭

그럼 위와같은 메시지가 나타난다
AppleSign이 되어있지 않기때문에 발생하는 문제이다

npm을 활용해 applesign을 설치하려는데 npm이 없으므로 brew를 활용해 설치해준다

설치가 완료되면 npm install -g applesign 명령어를 실행해 applesign을 설치한다

그리고 applesign -L 명령어를 입력한 뒤 빨간색 영역에 있는 값을 복사한다
그리고 applesign을 활용하여 서명을 진행해준다

그리고 비밀번호를 입력 후 허용 버튼 클릭

완료되면 새로운 ipa 파일이 생성됨을 확인할 수 있다
SecureStorev1-resigned.ipa를 휴대폰에 설치하도록 한다

Window - Devices and Simulators로 이동하여 + 버튼 클릭

서명된 파일을 선택하고 Open 클릭!!

설치에 실패했다...!

원래 이렇게 하고 SecureStorev1-resigned.ipa를 휴대폰에 설치하면 된다
하지만 무료계정(Personal Team)이라 그런지 설치하는게 안됐다...

그래서 이거저거 해보다가 다른 방법을 찾아냈다!!

위와같이 objection을 활용하여 서명을 하는 방법이다

그럼 위와같이 새로운 ipa파일이 생성된다

그리고 다시 이 파일을 선택해서 Open을 클릭

위와같이 내가 설치하려던 앱이 설치됨을 확인할 수 있다


그런데 원래 ruangApp이었는데 이 앱이 SecureStorev1으로 변경되었다

나의 경우 위의 1번의 과정으로 해결이 되었다
하지만 다른 사람의 경우 2번의 과정이 추가적으로 진행되어야 설치가 되었다고 해서 추가적으로 작성하려고 한다
( 나의 경우는 1번이 성공하고 2번은 실패하였다 )

위와같이 1번 더 서명하는 과정이 필요하다
git clone https://github.com/Tyilo/insert_dylib
cd insert_dylib
xcodebuild
sudo cp build/Release/insert_dylib /usr/local/bin/insert_dylib
" Jail Break 되지 않은 휴대폰에도 가능하다는 이야기가 있다 "
objection patchipa --source SecureStorev1.ipa --codesign-signature C"이곳엔 개인의 인증 키"A -P ruang.mobileprovision
unzip SecureStorev1-frida-codesigned.ipa "선택적"
applesign -c -b cst.securestorev1 -m ruang.mobileprovision -i C"이곳엔 개인의 인증 키"A -o SecureStorev1-resigned.ipa SecureStorev1-frida-codesigned.ipa
ios-deploy --bundle SecureStorev1-resigned.ipa





참고 주소
https://github.com/sensepost/objection/issues/428
https://github.com/nowsecure/node-applesign/issues/113
'Hacking > ios' 카테고리의 다른 글
| [ios Hacking 1] ServerSide, ClientSide 취약점 (0) | 2024.07.25 |
|---|---|
| [ios Hacking 1] SFTP - DB조회,Auth Token 및 KeyChain (0) | 2024.07.23 |
| [ios Hacking 1] 서버 연결 및 https 연결 (1) | 2024.07.23 |
| [ios Hacking 1] Cydia, Frida, Objection 초기설정 (0) | 2024.04.29 |
| [ios Hacking 1] ios 14.7.1 Jailbreak - 아이폰7 (0) | 2024.04.28 |