0x002 OperatingSystem/04. Android

[Theory] 동적 디버깅

KimSangLab 2017. 12. 29. 15:45

 안드로이드 앱을 동적으로 디버깅 하기 위한 절차는 다음과 같다.

  1) APK Tools 를 이용해 디버깅 모드로 덤프한다.
  2) APK Tools 를 이용해 디버깅 모드로 덤프한 것을 디버깅 모드로 다시 패키징한다.
  3) 디버깅 모드로 패키징한 apk 파일을 서명해 AVD에서 실행한다.
  4) Netbeans 를 이용해 1) 에서 진행한 코드를 프로젝트에 추가 하고 android.jar 파일을 라이브러리에 추가한다.
  5) DDMS를 이용해 대생 앱에 대한 포트를 확인 및 연결한다.
  6) Netbeans IDE 탭 메뉴에서 Debug > Attach Debugger > Select JPDA를 선택해 Host 와 Port 를 설정함으로써 원격 디버깅을 연결한다.
  7) 분석할 부분에 브레이크 포인트를 설정한다.
  8) 에뮬레이터에서 특정 이벤트를 발생해 브레이크 포인트 설정 부분의 라인을 실행하게 유도한 뒤 동적 디버깅을 시작한다.

출처 : 안드로이드 모바일 악성코드와 모의 해킹 진단