-

[2020 ARGOS 교육] 안드로이드 앱 분석 환경 세팅(nox, adb, jadx, frida, IDA pro) 본문

Basic/android

[2020 ARGOS 교육] 안드로이드 앱 분석 환경 세팅(nox, adb, jadx, frida, IDA pro)

r99bbit 2020. 8. 9. 02:05

본 글은 PC/태블릿 으로 보는 것을 권장드립니다.

0) 개요

 이번 교육에서는 함수 호출, 메시지, 이벤트등을 가로채는 해킹 기술인 후킹(Hooking)을 이용하여 어플리케이션의 동작 흐름을 마음대로 제어하는 기법에 대해 중점적으로 다룰 것입니다. 이전의 시스템 해킹, 웹 해킹 교육과는 비교적 다뤄야 하는 도구들이 많고 환경 설정이 복잡하여 교육 전에 미리 환경을 구성하고 오셔야 합니다. 해당 가이드에서 설치할 도구들은 아래와 같습니다.

 

도구 이름 설명 비고
NOX Player  실제 안드로이드 운영체제를 탑재한 기기를 이용하면 좋겠지만, 아이폰을 사용하고 계신 분들도 있기 때문에 PC 상에서 안드로이드 운영체제를 사용할 수 있는 에뮬레이터 프로그램을 사용합니다. 교육자도 아이폰
ADB  안드로이드 에뮬레이터와 효율적으로 상호작용 하기 위해 설치합니다.  
JADX  어플리케이션 코드 분석을 도와주는 도구입니다.  
frida  후킹(Hooking)을 하게 해주는 도구입니다(javascript 기반 공격 코드)   
IDA Pro  교육의 심화 과정으로 JNI(Java Native Interface)를 분석하고 게임을 해킹하기 위하여 설치합니다.  

 


1) NOX Player 설치

1. NoxPlayer 공식 홈페이지(www.bignox.com/)로 이동하여 최신 버전 NoxPlayer Installer 다운로드

 

2. 다운로드 받은 Installer 실행 / 바로 설치

 

3.  Nox 앱 플레이어 실행

4. 디버그 모드 진입

tools > 설정

 

태블릿 정보 > 빌드 번호 연타하여 개발자 모드 진입

 

개발자 옵션

 

USB 디버깅 켜기


2) ADB 설치

1. 안드로이드 SDK 홈페이지(https://developer.android.com/studio/releases/platform-tools) 이동하여 본인 PC 환경에 알맞는 SDK 설치

 

2. 설치된 파일 확인 및 기억하기 쉬운 경로에 배치

 

3. 윈도우 검색 > 고급 시스템 설정

 

4. 고급 > 환경변수 진입

 

5. 시스템 변수에 ADB 설치 경로 추가(변수 값에 2번에서 설치한 ADB 경로 입력)

 

* (추가) 만약 adb가 connect 되지 않는 현상이 발생할 경우 ADB 경로가 아닌, Nox 설치 경로를 입력

-> 기본 경로는 C:\Program Files (x86)\Nox\bin\

 

6. Path에 ADB 변수 추가

 

 

7. cmd에 adb라고 입력했을 때 다음과 같이 나오면 설치가 완료된 것임(환경변수 창을 닫고, cmd를 껏다 켜야 적용이 됨.)


3) JADX 설치

1. 설치 링크(https://github.com/skylot/jadx/releases/download/v1.1.0/jadx-1.1.0.zip)에서 다운로드 받고 압축 해제(윈도우용)

4) frida 설치

python 설치가 선행 되어야함 -> https://www.python.org/

 

Welcome to Python.org

The official home of the Python Programming Language

www.python.org

 

1. 아래와 같이 순서대로 cmd에 입력(관리자 모드)

pip install --upgrade pip
pip install wheel
pip install frida
pip install frida-tools

 

2. frida-server 다운로드 후 압축 해제(https://github.com/frida/frida/releases/download/12.11.7/frida-server-12.11.7-android-x86.xz)

 

3. frida server가 압축 해제된 폴더에서 cmd 실행(폴더에 들어가서 경로 검색 창에 cmd 입력)

 

4. Nox Player 관리자 모드로 실행한 후 adb connect

"adb connect 127.0.0.1:62001" 입력

 

5. frida-server를 Nox Player에 넣은 후 실행하기

 

adb push [frida-server 경로] /data/local/tmp/를 입력하면 되는데, 우리의 경우 아래와 같이 쓰면 될것이다.

adb push ./frida-server-12.11.7-android-x86 /data/local/tmp/

 

- 이후 frida-server의 권한을 설정하고 실행해준다. 아래와 같이 입력

- adb shell

- cd /data/local/tmp/

- chmod 777 frida-server-12.11.7-android-x86

- ./frida-server-12.11.7-android-x86 &

C:\Users\miny7\Desktop\frida-server-12.11.7-android-x86> adb shell
root@shamu:/ # cd /data/local/tmp/
root@shamu:/data/local/tmp # ls
android_server
frida-server-12.11.7-android-x86
re.frida.server
root@shamu:/data/local/tmp #
root@shamu:/data/local/tmp #
root@shamu:/data/local/tmp # chmod 777 frida-server-12.11.7-android-x86
root@shamu:/data/local/tmp # ./frida-server-12.11.7-android-x86 &

 

6. cmd 창 하나 더 실행한 뒤 frida 실행 확인

 

- frida-ps -U를 입력했을 때 결과가 나오면 정상적으로 결과가 나오면 설치가 완료된 것이다.

C:\Users\miny7>frida-ps -U
 PID  Name
----  ------------------------------------
1494  adbd
2054  android.process.acore
2331  android.process.media
1929  com.android.inputservice
2498  com.android.keychain
2546  com.android.managedprovisioning
2587  com.android.onetimeinitializer
1961  com.android.phone
2521  com.android.providers.calendar
1889  com.android.systemui
2657  com.android.vending
2916  com.android.vending:download_service
2876  com.facebook.lite
2386  com.facebook.lite:fbns
2989  com.facebook.lite:fwkstartlog
2168  com.google.android.gms
2311  com.google.android.gms.persistent
3252  com.google.android.gms.ui
3115  com.google.android.gms.unstable
3011  com.google.android.play.games
2250  com.google.process.gapps
3419  com.sds.squaremessenger
2000  com.vphone.launcher
1504  debuggerd
2157  dhcpcd
1511  drmserver
3822  frida-server-12.11.7-android-x86
1493  healthd
   1  init
1513  installd
1514  keystore
1495  lmkd
3824  logcat
1492  logd
1512  mediaserver
1503  netd
1510  rild
1439  sdcard
1496  servicemanager
2744  su
1499  surfaceflinger
1799  system_server
1037  ueventd
1497  vold
2081  wpa_supplicant
1516  zygote

C:\Users\miny7>

5) IDA Pro 설치

1. IDA Pro 7.0 다운로드

2. 압축 해제

3. 설치 파일 실행 / 설치 진행

4. password는 SN.txt에 적혀있는 내용 복사 붙여넣기

 

5. 설치 계속 진행한 후 IDA 실행 확인


끝.

'Basic > android' 카테고리의 다른 글

[Android] Frida Scripts  (1) 2020.07.22
Comments