//////
Search

안드로이드 원격 디버깅 기본 설정 / 명령어

기본 명령어

ADB 설치 경로
Android Studio를 설치하면 기본적으로 설치되지만, 만약 Android Studio를 설치하지 않았다면 개별적으로 ADB만 설치가 가능하다.
쉘 접속
adb shell
Plain Text
복사
파일 전송
adb push [전송할 파일 이름] [전송받을 경로 (대부분 /data/local/tmp)]
Plain Text
복사
APK 파일 가상 머신에 설치 (재설치 옵션을 붙임)
adb install -r [APK 파일 경로]
Plain Text
복사
가상 머신 파일 컴퓨터로 가져오기
adb pull [전송할 가상머신 파일] [전송받을 로컬 경로]
Java
복사
동적 디버깅을 위한 포워딩 (default 포트 23946)
adb forward tcp:23946 tcp:23946
Plain Text
복사
가상머신 환경 확인 (x86 / x64)
adb shell getprop ro.product.cpu.abi adb shell getprop ro.product.cpu.abi2
Plain Text
복사

동적 디버깅 설정 방법

1.
가상 머신의 환경을 확인한다.
adb shell getprop ro.product.cpu.abi
Plain Text
복사
2.
android server 파일을 전송한다. 파일은 IDA 설치 경로의 dbgsrv 폴더에 존재한다. > Intel CPU 일 경우 -> android_x86_serverandroid_x64_server > > ARM 일 경우 -> android_serverandroid_server64
컴퓨터에서 가상머신 실행 -> 컴퓨터의 CPU를 따라간다.
일반 기기 -> ARM CPU
adb push "C:\Program Files\IDA 7.2\dbgsrv\android_x86_server" /data/local/tmp
Plain Text
복사
Galaxy S7 ( Android 8.0.0 ) 로 테스트한 결과 android_server 로 동작하는것을 확인
3.
전송받은 server 파일의 권한을 변경한다.
adb shell chmod 777 /data/local/tmp/android_x86_server
Plain Text
복사
4.
분석하고자 하는 APK 파일을 설치한다.
adb install -r [APK 파일 경로]
Plain Text
복사
5.
서버를 실행하고, 포워딩을 진행한다.
adb shell /data/local/tmp/android_x86_server & adb forward tcp:23946 tcp:23946
Plain Text
복사
6.
동적 디버깅을 시도 한다.