드로저 설치

드로저(Drozer)는 모바일 앱 취약점 진단 프레임워크로 안드로이드 시스템에 접근하여 앱을 동적으로 진단할 수 있는 도구이며, 서버와 클라이언트로 동작한다.


드로저 공식 홈페이지에서 윈도우 기반의 드로저 설치 파일을 다운로드 받고, 설치 파일(setup.exe)을 더블클릭하여 로컬PC에 설치한다.

 

드로저(Drozer) 다운로드



드로저 서버역할을 하는 agent.apk 파일을 안드로이드 가상 단말기에 설치한다. 드로저는 명령어를 전달 받고, 명령어를 실행하는 역할로 분류되므로 클라이언트, 서버의 환경을 구축해야 한다.


○ adb install agent.apk



드로저에 명령어를 전달하려면 안드로이드 단말기에 설치되어 있는 드로저 앱을 실행하고, 포트를 활성화해야 한다.



현재 드로저는 31415 포트로 대기(LISTEN) 중인 상태이므로 드로저 관련 명령어를 드로저 서버로 전달해서 처리하려면 adb 명령어로 기본 포트로 포트포워딩을 해야 한다.


○ adb forward tcp:31415 tcp:31415



로컬 PC에서 drozer.bat console connect를 입력하면 드로저 서버에 연결된다. 정상적으로 연결되면 명령어를 입력할 수 있는 dz> 프롬프트가 나타난다.



드로저 사용법 - 명령어 목록

드로저 쉘(dz>)에서 list를 입력하면 드로저에서 지원하는 명령어 목록과 설명이 간략하게 출력된다.



드로저 사용법 - 패키지 전반적인 정보

드로저를 이용해 패키지의 전반적인 정보를 확인하려면 앱의 패키지명을 AndroidManifest.xml에서 확인해야 한다.


확인된 패키지명을 app.package.info 명령어의 인자로 지정하면 패키지 이름, 설치된 디렉토리, UID, GID 등의 정보가 출력된다.


○ run app.package.info -a 패키지명



드로저 사용법 - 노출된 컴포넌트

드로저 쉘에서 app.package.attacksurface 명령어를 입력하면 노출된 컴포넌트에 대한 정보를 확인할 수 있다. 노출된 컴포넌트를 보면 액티비티 컴포넌트만 노출된 상태이다.


○ run app.package.attacksurface 패키지명



드로저 사용법 - 노출된 액티비티 컴포넌트 정보

현재 액티비티 컴포넌트만 노출되었으므로 app.activity.info 명령어를 입력하면 현재 MainActivity가 노출되었다고 출력된다.


○ run app.activity.info -a 패키지명



드로저 사용법 - 노출된 브로드캐스트 컴포넌트 정보

만약, 브로드캐스트 컴포넌트가 노출되어 있다면 노출된 브로드캐스트 컴포넌트 이름을 확인하려면 app.broadcast.info 명령어를 입력하면 노출된 컴포넌트 이름을 확인할 수 있다.


○ run app.broadcast.info -a 패키지명



드로저 사용법 - 노출된 컨텐트 프로바이더 컴포넌트 정보

만약, 컨텐트 프로바이더 컴포넌트가 노출되어 있다면 노출된 컨텐트 프로바이더 컴포넌트 이름을 확인하려면 app.provider.info 명령어를 입력하면 노출된 컴포넌트 이름을 확인할 수 있다.


○ run app.provider.info -a 패키지명



드로저 사용법 - 노출된 서비스 컴포넌트 정보

만약, 서비스 컴포넌트가 노출되어 있다면 노출된 서비스 컴포넌트 이름을 확인하려면 app.service.info 명령어를 입력하면 노출된 컴포넌트 이름을 확인할 수 있다.


○ run app.service.info -a 패키지명



드로저 사용법 - 노출된 액티비티 컴포넌트 실행

드로저 쉘에서 app.activity.start 명령어를 입력하면 현재 노출된 액티비티인 MainActivity가 자동으로 실행된다.


○ run app.activity.start --component 패키지명 액티비티명



▶ 안드로이드 환경구축 ( 취약점 분석)

▶ 안드로이드 컴포넌트 취약점 (Android Content Provider)

▶ 안드로이드 컴포넌트 취약점 (Android Broadcast Receiver)

▶ 안드로이드 컴포넌트 취약점 (Android Activity)

▶ 안드로이드 인시큐어뱅크 앱 설치 (Android InsecureBankv2)

  • 카카오톡-공유
  • 네이버-블로그-공유
  • 네이버-밴드-공유
  • 페이스북-공유
  • 트위터-공유
  • 카카오스토리-공유