APK Studio Setting 관련해서 글이 별로 없는 거 같아서 새로 설치하는 겸 정리해서 올린다.

APK Studio 에 대해 간략하게 설명하면 안드로이드 앱 같은 경우 자바와 C언어로 코딩된 부분이 존재한다.

기본적으로 C언어는 메모리 관리 측면에서 좋기 때문에 내부적으로 C언어로 구성된 부분이 있고 이 C 언어를 사용하기 위해 라이브러리를 통해 C언어를 불러와 사용하게 된다.

이 때문에 자바와 C언어 둘다 코딩된 부분을 디컴파일 할 수 있는 프로그램이 필요하다 그것이 APK Studio이다

JADX라는 디컴파일 프로그램이 존재하지만 Java만 디컴파일 하기 때문에 C언어 관련된 부분을 보기 위해서는 APK Studio가 필요.

 

기본적인 세팅 방법

우선 adb 설치해 주면 자동으로 APK Studio가 adb를 잡아주기 때문에 먼저 설치하겠다.

https://developer.android.com/studio/releases/platform-tools?hl=ko 

 

SDK 플랫폼 도구 출시 노트  |  Android 개발자  |  Android Developers

Android SDK 플랫폼 도구는 Android SDK의 구성요소입니다.

developer.android.com

다운로드는 위 링크에서 표시한 부분을 다운받고 설치만 해주면 된다.

adb tool 같은 경우 압축해제후 아래와 같이 환경 변수 지정이 필요하다.

 

다음으로 자바를 설치를 해보면 아래 링크로 들어가 x64 installer를 설치한다. java 19든 java 17이든 상관 없이 아무거나 설치해 주면 된다.

https://www.oracle.com/kr/java/technologies/downloads/#jdk19-windows

 

Download the Latest Java LTS Free

Subscribe to Java SE and get the most comprehensive Java support available, with 24/7 global access to the experts.

www.oracle.com

보통 설치된 자바는 아래 경로에 있다. 마지막에 모든 경로를 APK Studio에 추가할 테니 우선 경로를 체크해놓자(나중에 자동으로 환경 변수 설정이 안될 수 있다.)

그 다음 APK Stuido를 깔아야한다.

https://github.com/vaibhavpandeyvpz/apkstudio/releases

 

Releases · vaibhavpandeyvpz/apkstudio

Open-source, cross platform Qt based IDE for reverse-engineering Android application packages. - vaibhavpandeyvpz/apkstudio

github.com

자신의 컴퓨터 환경에 맞게 다운받아주면 된다. 필자는 64비트이기 때문에 첫번째 파일 다운로드

압축 풀고 apkstudio.exe 파일을 실행하면 알림창이 하나 뜰텐데 세팅 관련된 내용이고 setting 버튼 누르면 환경 변수 설정하는 창이 나올 것이다. 왼쪽 하단은 환경 변수 설정이 안된 것들이 나온다.

 

여기서는 자바랑 adb를 미리 설치해줘서 환경 변수가 알아서 잡히게 된다.

 

이제 Apktool, Jadx, Uber APK signer 만 설정이 안되어 있는 것을 알 수 있을 것이다. 이 3가지는 하나의 폴더에 모아 환경 변수 설정해주면 된다.

 

환경 변수 창

APK tools 아래 링크에 들어가서 우측 상단 표시해 놓은 곳을 클릭하면 다운로드가 된다. 실행하는 파일이 아니니 안드로이드 관련 폴더를 만들어 넣어둔다.

https://ibotpeaches.github.io/Apktool/

 

Apktool - A tool for reverse engineering 3rd party, closed, binary Android apps.

A tool for reverse engineering 3rd party, closed, binary Android apps. It can decode resources to nearly original form and rebuild them after making some modifications. It also makes working with an app easier because of the project like file structure and

ibotpeaches.github.io

JADX 설치

https://github.com/skylot/jadx/releases/tag/v1.4.5

 

Release 1.4.5 · skylot/jadx

Features [gui] Option for search results count per page (#1652) [debugger] Add logcat output (#1411)(PR #1666) Bug Fixes Don't rename bridged overridden methods (#1672) Don't mark constructor fo...

github.com

버전은 작성 당시 최신 버전을 기준으로 했으니 파일 버전은 다르게 변경되어 있을 수 있다. 해당 파일도 설치하는 것이 아니니 다운로드 받아 앞서 생성한 안드로이드 폴더에 넣어주자

uber설치 <- 설치 이유 앱의 경우 서명을 위해 넣는다.

https://github.com/patrickfav/uber-apk-signer/releases/tag/v1.2.1

 

Release v1.2.1 · patrickfav/uber-apk-signer

minor: fix using incorrect version number

github.com

그러면 다운로드한 파일을 아래와 같이 Android 폴더에 모아놓자.

경로 지정이 필요한건 Jadx, apktool, Uber APK signer 뿐이다.

Java Path : C:\Program Files\Java\jdk-19\bin\java.exe (자바의 경우 환경 변수 설정이 안되어 있을 경우를 대비해 알려줌)

Jadx Path : jadx의 경우 폴더에 bin 안에 jadx.bat으로 경로 지정을 해주면 된다.

APktool : Android 폴더의 apktool 파일 경로로 지정

Uber APK tool : Android 폴더의 Uber 파일 경로로 지정 

 

** android라는 폴더명은 임의로 내가 지은거니 무슨 이름으로 하든 상관없다. 삭제만 안하도록 이름 적도록.**

jadx에서 bat 실행 파일 위치

그럼 아래에서 Save를 누른 후 APK Studio를 재실행 해준다.

그럼 아래처럼 모든 환경설정이 완료될 것이다.

이제 어플 알까기만 하면 끝

'APP 모의해킹 > Android' 카테고리의 다른 글

Activity 강제실행  (0) 2023.03.28
Snapshot  (0) 2023.03.23
burp 인증서 안드로이드 with NOX  (0) 2023.03.22
[Android] 안드로이드 디컴파일 및 Smali 코드 분석  (0) 2023.03.09
[Android] 앱 추출 및 분석  (0) 2023.03.08

+ Recent posts