반응형

출처: http://blog.naver.com/taeyoun795/220658614529


1.4.3 Drozer를 이용한 안드로이드 앱 동적 분석

(1) Drozer란?

 

Drozer 는 안드로이드 앱을 위한 통합 자동 보안 진단 도구이다.

 

문서 및 다운로드 등은 drozer 메인 사이트를 참고한다. 현재 최신 버전은 2.3.4 이다.

 

Drozer 메인 사이트: https://labs.mwrinfosecurity.com/tools/drozer/

 

그림 287 drozer 메인 사이트

사전 준비 사항

 

-호스트 PC(Window/Linux/Mac OS X)

-안드로이드 디바이스 혹은 애뮬레이터(Android 2.1 이상)

 

시스템 필요 요건

 

-JDK 1.6 이상

-Python 2.7

-Android SDK

(Java와 adb는 시스템 환경 변수로 등록되어 있어야 함)

 

(2) drozer 실행 및 명령어

 

Step 1) 디바이스에 drozer 클라이언트 프로그램 설치

 

drozer 클라이언트 프로그램(agent.apk)은 drozer 메인 사이트에서 다운로드 받은 설치 프로그램을 압축해제 하면 볼 수 있다.

 

그림 288 agent.apk

adb 명령으로 디바이스 혹은 애뮬레이터에 설치한다.

 

그림 289 drozer 클라이언트 프로그램 설치

설치된 drozer Agent 프로그램을 실행 후 오른쪽 하단의 OFF를 클릭하여 ON한다.

 

그림 290 drozer agent 실행

 

Step 2) 포트 포워딩

 

다시 윈도우 커맨드로 돌아와서 drozer Agent에 의해 오픈된 TCP 소켓과 진단 PC를 연결하기 위해 포트 포워딩을 해 준다. 디폴트 포트는 31415이다.

 

 

그림 291 포트포워딩

Step 3) drozer 콘솔 접속

 

drozer 콘솔에 접속한다.

 

그림 292 drozer 콘솔 접속

 

정상적으로 실행되면 연결된 디바이스의 안드로이드 ID를 볼 수 있다.

 

Step 4) drozer 명령어 확인

 

drozer 콘솔은 CLI 기반이며 drozer 명령 프롬프트에서 help를 입력하면 drozer에서 사용되는 명령어를 보여준다.

 

그림 293 drozer 명령어

명령어

설명

run [모듈]

drozer 모듈을 실행한다.

list

현재 세션에서 실행할 수 있는 모든 drozer 모듈을 보여 준다. 적절한 실행 권한이 없으면 몇몇 모듈은 감춰진다

shell

Agent 프로세스가 설치되어 있는 디바이스의 Linux Shell을 실행한다.

cd

모듈의 full name을 반복적으로 입력하는 것을 피하기 위해 root 세션의 namespace를 마운트한다.

clean

drozer에 의해 안드로이드 디바이스에 생성된 임시 파일들을 삭제한다.

contributors

drozer 프레임워크와 모듈 제작자를 보여 준다.

echo

text를 console에 출력한다.

exit

drozer 세션 종료시킨다.

help

특정 모듈 혹은 명령에 대한 도움말 출력한다.

load

drozer 명령이 포함된 파일을 로딩한 후 실행한다.

module

인터넷으로부터 추가 drozer 모듈을 찾고 설치한다.

permission

drozer agent에 주어진 권한을 보여 준다.

set

환경 변수 등록

unset

환경 변수 해제

표 7 drozer 명령어

또한 help [명령어] 혹은 help [모듈이름] 을 입력하면 좀 더 자세한 설명을 보여 준다.

 

그림 294 drozer 명령어 확인

그림 295 drozer 모듈 확인

 

referer

drozer 메뉴얼 2015


반응형

+ Recent posts