Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 안드로이드 리버싱
- 자바스크립트 강의
- 리버싱 플래그
- 리버싱 입문
- 자바스크립트
- adb 옵션
- 드림핵 리버싱
- 인프런 강의 추천
- 더오름
- 안드로이드 모바일 앱 모의해킹
- 제주ICT
- 안드로이드 adb start-server
- 리버싱핵심원리
- 오블완
- 안드로이드 adb
- adb
- 리버싱 초보
- 제주코딩베이스캠프
- 위니브
- 리버싱 스터디
- rev-basic 풀이
- 자바스크립트강의 후기
- 자바스크립트 강의 추천
- 강의 체험단 1기
- 리버싱
- 리버싱 핵심 원리
- 드림핵 플래그
- 드림핵 리버싱 풀이
- dreamhack reversing
- 티스토리챌린지
Archives
- Today
- Total
해보자고
ADB - Android Debug Bridge 본문
ADB(Android Debug Bridge)
: 안드로이드 애뮬레이터 혹은 실제 Device와 통신 및 제어를 가능하게 하는 안드로이드 디버깅 도구. 안드로이드 SDK에 포함되어 있어 추가 설치 없이 간편하게 해당 툴을 사용할 수 있다.
위치: (안드로이드 SDK를 설치했다면) C:(생략)\Android\Sdk\platform-tools
1. ADB 3요소
요소 | 설명 |
클라이언트 | 안드로이드 개발 시스템에서 실행. ADB 명령어 입력한 후 쉘에서 클라이언트 호출. |
서버 | 안드로이드 개발 시스템에서 백그라운드 프로세스로 실행. 클라이언트와 데몬 간 통신을 관리. |
데몬(adbd) | 에뮬레이터나 각 기기에서 백그라운드 프로세스로 실행. 기 기에서 명령어를 실행 |
2. ADB 작동 방식
1 | ADB 클라이언트 시작 시 ADB 서버 프로세서가 실행 중인지 점검 |
2 | 실행 상태가 아닐 때 -> 서버 프로세스 구동 실행 상태일 때 -> TCP 5037 포트에 바인드하며 모든 클라이언트가 해당 포트로 ADB 서버와 통신. 즉, 전송된 명령어를 리슨. |
3 | 에뮬레이터/장치 인스턴스에 대한 연결 설정 |
4 | 포트 번호 5555 ~ 5585의 범위 안에서 홀수 번호 포트를 스캐닝(장치를 찾음) |
5 | 서버가 ADB 데몬을 발견하면 해당 포트 번호와의 연결을 설정. ADB는 홀수 포트를 갖고, 에뮬레이터 인스턴스 콘솔 포트는 짝수 포트와 연결. |
6 | 서버가 모든 장치에 연결되면 사용자는 인스턴스에 접근할 수 있는 ADB 명령을 수행할 수 있다. |
3. ADB 디바이스 장치 선택
3.1 장치가 1개일 때
1. 연결 명령어 입력: adb shell
+) 옵션:
USB 디바이스 | -d |
애뮬레이터 | -e |
3.2 장치가 2개 이상일 때
1. 연결 장치 확인 : adb devices
- 시리얼 번호, 상태로 구성
device | ADB 서버와 연결되어 있는 경우의 상태 표시 |
offline | ADB 서버와 연결되어 있지 않거나 응답이 없는(부팅 중) 경우의 상태 표시 |
2. 연결 명령어 입력: adb -s [장치명] shell
#출처
ADB:
https://developer.android.com/tools/adb?hl=ko
교재:
안드로이드 모바일 앱 모의해킹. 조정원 외 4인 지음.
'모의해킹 > 안드로이드 앱' 카테고리의 다른 글
ADB - bugreport, jdwp (0) | 2024.05.28 |
---|---|
ADB - logcat을 이용한 로그 분석 (0) | 2024.05.28 |
안전하지 않은 SD카드 저장 (0) | 2024.04.21 |
안드로이드 구성 요소 (0) | 2024.04.21 |
안드로이드 아키텍처 (0) | 2024.04.14 |