모의해킹/안드로이드 앱

ADB - 쉘 명령어(shell)

초코맛동산 2024. 11. 7. 20:35

 

1. shell

shell: 안드로이드 에뮬레이터 혹은 디바이스에서 원격 쉘을 사용할 수 있도록 하는 명령어. 리눅스와 비슷한 환경에서의 장치 제어가 가능하다.(리눅스 기본 명령어 일부 사용 가능) 

형식: adb shell or adb shell [명령어] 

-> 전자의 경우 계속해서 shell을 사용하여 명령어를 입력할 수 있음. ($가 ls 명령어 이후에도 유지되는 것을 확인할 수 있음. )

 

-> 후자의 경우 해당 명령어 이후로는 운영체제의 쉘로 돌아감. ($가 ls package manager 명령어 이후에는 운영체제의 쉘로 돌아가는 것을 확인할 수 있음. )

 

 

2. shell 명령어 (일부)

- 더 자세하고, 더 많은 명령어는 오른쪽 링크에서 확인하실 수 있습니다! (https://developer.android.com/tools/adb?hl=ko#am)

pm 기기에 설치된 앱 패키지에 관한 작업을 가능하게 한다. 

- list packages [option] [filter] : 모든 패키지를 출력, filter 사용시 해당 filter와 관련한 패키지명을 출력. (위에서 사용된 -3에 경울 thitd party로 사용자에 의해 설치된 앱만을 필터링)
- list permission-groups : 알려진 모든 권한 그룹을 출력
- list libraries: 현재 기기가 지원하는 모든 라이브러리 출력 
am activity manger로, activity 시작, 프로세스 강제 종료, 인텐트 브로드캐스트, 기기 화면 속성 수정 등 다양한 시스템 작업을 가능하게 한다.  

- start intent : intent에서 지정된 Activity를 시작. 
- kill all : 모든 백그라운드 프로세스 종료 
dpm 개발 및 테스트하는 데 도움이 되도록 하는 기기 정책 관리자 명령어로, 활성 관리자 앱을 제어하거나 기기의 정책 상태 데이터를 변경할 수 있다. 
-> 특정 앱에 기기 관리 권한을 부여하여 보안 설정 등을 조정할 수 있게 해줌. 

(해당 명령어들은 일부임을 알려드립니다.)