Android 디컴파일하기

SSY·2023년 2월 9일
0

Decompile

목록 보기
1/2
post-thumbnail

시작하며

이 글이 Android디컴파일을 설명하는 글중 가장 자세히 설명하는게 아닐까 한다. 이 글을 하나하나 따라오면 디컴파일은 5분안에 될거라 생각한다.

1. apk파일 다운로드

다음 사이트에서 원하는 APK파일 다운로드 진행

2. dex2jar 다운로드

이 파일은 apk파일 내에 있는 dex파일을 jar파일로 변환시켜주는 파일이다. 만약 이녀석은 안거치고 apk파일을 바로 jar파일로 변경시, class내부 코드를 볼 수 없게 된다.

최신버전 다운로드하러 가기

dex2jar를 안쓰고 디컴파일을 했을때?

하단 사진을 보면 class.dex, class2.dex파일이 보일것이다. 위 파일이 바로 안드로이드 class파일이 뭉쳐있는 파일이다. 위 파일을 class파일로 변환시켜줘야 한다.

3. JD-GUI 다운로드

dex2jar을 통해 dex파일을 jar파일로 변환시켰다면, 이제 코드를 볼 수 있는 GUI프로그램이 있어야 한다.

다운로드하러 가기

4. 디컴파일 시작하기

dex-tools-2.1버전 기준으로 설명합니다.

  1. 아래와 같이 dex-tools-2.1에 다운받은 apk파일 위치시킨다.
  1. dex2jar를 실행시키기 위한 권한을 부여한다.

    sudo chmod +x d2j_invoke.sh

  2. 이제 본격적으로 apk파일 내에 있는 dex파일을 class파일로 변환한다.

    ./d2j-dex2jar.sh target.apk

  3. 변환 완료된 결과물을 확인한다.

  1. GD-GUI를 킨다.

  2. 아까 추출한 target-dex2jar.jar를 위 화면에다 끌어다 놓는다.

위에 보시다시피 android프로젝트 Package까지 잘 나온걸 확인할 수 있다. 이제 이걸 활용해 안드로이드 프로가드가 제대로 적용됐는지 확인할 수 있다.

5. apktool 활용 및 디컴파일

https://dnight.tistory.com/entry/APKTOOL-%EC%84%A4%EC%B9%98-%EB%B0%A9%EB%B2%95

profile
불가능보다 가능함에 몰입할 수 있는 개발자가 되기 위해 노력합니다.

0개의 댓글