안드로이드 취약점 점검 시 자주 사용하거나 알아두면 유용한 adb 명령어에 대해 정리할 예정이다!

먼저 adb가 무엇인지부터 짚고 넘어가자.

adb란?

: Android Debug Bridge의 약자로서 명령줄 도구
: 앱 개발자가 데스크톱 컴퓨터를 사용해 연결된 Android 디바이스와 통신하거나 디바이스 애뮬레이터를 실행할 수 있도록 도와주는 도구
: 안드로이드 취약점 점검 시에는 루트 권한으로 명령어를 사용하기 위해 루팅된 폰에서 많이 사용한다.


adb 명령어

아직 adb를 사용해 본적이 없다면 이전 포스팅에 설명한 설정과정부터 진행하고 와야한다.

지난번 포스팅에서도 설명했던 명령어도 포함하여 설명한다.

  1. 연결된 device 목록 확인

      adb devices 

  1. 연결된 디바이스의 리모트 쉘 실행

1)  adb shell 

한개의 디바이스나 애뮬레이터가 연결되어 있으면 기본 명령어로 실행이 가능하지만 1개이상이면 실행이 불가능하다.
(LG로 시작하는 기기는 usb 연결 단말기이고, 127.0.0.1은 녹스 실행한 가상 에뮬레이터이다. )

따라서, 옵션 -d (usb 연결 단말기)나 -e (녹스 등의 가상에뮬레이터)를 사용해서 연결해야한다.

2) adb -d shell → usb 단말기 연결


3) adb -e shell → 가상 에뮬레이터 연결


** 이 때도, 둘 이상의 에뮬레이터가 연결되어 있으면 에러를 반환하므로 주의한다.

  1. adb 버전 확인

     adb version 
    

    



  1. 연결된 장치에 apk 파일을 설치하는 명령어 
     adb install [apk파일경로\파일명] 



  5.  로컬 컴퓨터에 존재하는 파일을 디바이스로 복사하는 명령어

     adb push [로컬파일 경로] [디바이스경로] 






  6. 디바이스에 존재하는 파일을 로컬 컴퓨터로 복사하는 명령어


      adb pull [디바이스 경로] [로컬컴퓨터 경로] 




7. 디바이스에 존재하는 애플리케이션(apk)의 저장 경로 확인

      adb pm list packages -f | grep [패키지명] 


+ Recent posts