개발자 등록하지 않고 iOS 기기에 앱 설치 하기


 

Notice : 해당 자료가 저작권등에 의해서 문제가 있다면 바로 삭제하겠습니다.
연구목적으로 사용하지 않고 악의적인 목적으로 이용할 경우 발생할 수 있는 법적은 책임은 모두 본인에게 있습니다.

iOS 앱 보안진단을 위한 환경설정
iOS 앱 정적 분석하기(class-dump-z, clutch)
Objective-C Runtime의 이해와 gdb attach 하기
iOS 앱 Cycript를 이용항 동적분석 및 변조
개발자 등록하지 않고 iOS 기기에 앱 설치 하기
Cycript 를 이용해 iOS 앱 로그인 우회 실습
Snoop-it 을 이용해서 iOS 앱 분석하기

1. 키체인에서 인증서 만들기
키채일 접근 > 인증서 지원 > 인증서 생성으로 인증서를 생성한다.
ios_install1

인증서 이름을 정하고 인증서 유형을 코드 서명으로 선택한다.
ios_install2

생성 버튼을 누르면 인증서가 생성된다.

2. 샘플 프로젝트를 생성
현재 설치된 XCode의 버전은 5.0.2 이다.

XCode를 이용해 Single View Application 프로젝트를 하나 생성한다.
ios_install4

프로젝트명은 test으로 만들었다.
ios_install5

프로젝트설정 > Info 에서 iOS Deployment Target을 5.1으로 설정한다.
ios_install6

그리고 프로젝트설정 > Build Settings를 아까 생성한 인증서로 변경해준다.
ios_install7

자 이제 설정은 다 끝났다. 위의 target부분을 ios 기기로 변경해서 빌드한다.
ios_install8

빌드를 하면 인증서키를 사용해서 빌드한다고 메세지가 나오는데 허용하면 ios 기기에 앱이 들어간다.
ios_install9

3. IPA 파일으로 ios기기에 설치
위의 빌드과정에서 자동으로 기기에 앱이 들어가지만, 수동으로 ipa파일을 만들어 복사하는 방법도 있다.
ipa 파일을 만드는 방법은 간단하다.
먼저 Payload 디렉토리를 만들고 그안에 test.app 를 넣은 후에 zip 파일로 압축한 후, 확장자를 ipa으로 변경하면 된다.
빌드할때 생성된 test.app 파일은 /Users/{계정ID}/Library/Developer/Xcode/DerivedData/{APP이름}-{APP_ID}/Build/Products/Debug-iphoneos 에 있다.

그리고 만든 ipa 를 sftp를 이용해서 기기로 복사한 후, installipa으로 설치하면 된다.

성공~ 실행도 잘된다!

참고 : http://highaltitudehacks.com/2013/07/25/ios-application-security-part-7-installing-and-running-custom-applications-on-device-without-a-registered-developer-account/

 


This entry was posted in Objective-C/iPhone, Security/Hacking and tagged . Bookmark the permalink.

3 Responses to 개발자 등록하지 않고 iOS 기기에 앱 설치 하기

  1. frostwood says:

    잘보았습니다. 한가지 여쭈어 보고 싶은것이 이방식으로 테스트가 되나요?
    한번 해보려니 전혀 되지가 았는군요;;;;

  2. aal says:

    정말 감사합니다 도움이 많이 되었습니다! 그런데 target 부분을 ios 기기로 변경할 때 (~~~님의 iphone)까지는 등록이 되었는데 옆에 unavailable 이 떠서 빌드를 할 수 가 없다고 하네요… 혹시 해결방법 알고 계시나요? ㅠㅠ

  3. apollo89 says:

    작년에 이 글을 작성할때는 직접 테스트 해보면서 작성한거라 잘 되었는데..
    최근에는 안해봐서 잘 모르겠네요^^;
    최근에는 SDK가 변경되어서 안될수도 있을꺼 같네요..

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다