오늘은 다른 방법으로 APK파일을 디 컴파일 하는 방법에 대해서 알아보자
우리가 APK파일을 디 컴파일 하는 가장 큰 이유는
필요한 부분을 소스 코드 부분에 첨가 하기 위해서도 하지만,
소스를 디 컴파일해서 어떻게 코딩이 되어 있는지 확인하여 루틴을 이해하는 것도
한 가지 목적이다.
먼저 필요한 Tool은
1) java 설치는 필수이다.
2) Dex2Jar 를 다운 받아야 한다.
3) jd-GUI 가 필요하다.(소스 파일로 변환해서 보기 위해)
○ 툴 다운로드 받기
1) Java의 경우는 너무나도 유명하고 이 앞전에도 다운받는 위치를 설명
했기 때문에 별도로 설명하지 않겠지만,
java가 설치되어 있지 않다면 java를 다운로드 받아 설치하기 바랍니다.
2) Dex2jar
- 다운로드 주소 : https://code.google.com/p/dex2jar/downloads/list
해당 페이지에서 가장 최신 버전을 다운로드 받으면 되겠다.
3) jd-GUI
- 다운로드 주소 : https://code.google.com/p/innlab/downloads/list
해당 페이지에서 자산의 OS 버전에 맞는 것으로 다운로드 받으면 되겠다.
○ APK 디컴파일 하기
1) 디컴파일 하고자 하는 APK 파일의 확장자를 zip으로 변경
2) 변경한 압축파일을 압축해제 후 classes.dex 파일을 추출함
3) Dex2jar 를 활용하여 추출한 classes.dex 파일을 변환
하지만, Dex2jar를 활용할 때 APK을 직접 주어도 변환이 되고 있음
- 실행 예시 화면 -
4) 변환된 파일을 jd-GUI 툴로 불러서 소스 코드 확인
5) 필요한 경우 소스 코드를 저장하여 활용 하거나 검색을 활용하여 필요한 부분 확인
안드로이드 특성상 디 컴파일이 가능하기 때문에
난독화를 하거나 디 컴파일 하더라도 분석이 어렵도록 하기 위한 방법들이
많이 동원 되고 있다.
'모바일' 카테고리의 다른 글
[Android] 오딘 다운로드 및 사용법 (0) | 2014.10.29 |
---|---|
[Android] 간단하게 안드로이드 개발 환경을 구축해 보자 (0) | 2014.10.28 |
[Ansroid] APKTool 사용법 (0) | 2014.10.28 |
[모바일] 삼성 휴대폰 다운로드 모드와 리커버리 모드 진입 방법 (0) | 2014.10.27 |
[Android] 모바일 광고 종류 (0) | 2014.10.27 |