Android Debug Bridge (adb) is a versatile command-line tool that lets you communicate with a device. The adb command facilitates a variety of device actions, such as installing and debugging apps, and it provides access to a Unix shell that you can use to run a variety of commands on a device.
When I first started playing around with adb, I quickly noticed it can be hard finding resources online demonstrating the list of commands available. I currently use adb to de-google my phone as well as remove location and bio metric features.
Thanks to the book Operator Handbook here is a big list of useful adb commands.
The list includes:
Basics
Package Installation
Paths
File Operations
Phone Information
Package Information
Configure Settings
Device related Commands
Logs
Permissions
ADB BASICS
adb devices = lists connected devices
adb root = restarts add with root permissions
adb start-server = starts the adb server
adb kill-server adb reboot = kills the adb server
adb reboot = reboots the device
adb devices -1 = list of devices by product/model
adb shell = starts the background terminal
exit = exits the background terminal
adb help = list all commands
adb -s <deviceName> <command> = redirect command to specific device
adb -d <command> = directs command to only attached USB device
adb -e <command> = directs command to only attached emulator
PACKAGE INSTALLATION
ad shell install <apk> = install app
adb shell install <path> = install app from phone path
adb shell install -r <path> = install app from phone path
adb shell uninstall <name> = remove the app
PATHS
/data/data/<package>/databases = app databases
/data/data/<package/shared_prefs/ = shared preferences
/data/app = apk installed by user
/system/app = pre-installed APK files
/mmt/asec = encrypted apps
/mmt/emmc = internal SD Card
/mmt/adcard = external/Internal SD Card
/mmt/adcard/external_sd = external SD Card
adb shell Is = list directory contents
adb shell ls -s = print size of each file
adb shell ls -R = list sub directories recursively
FILE OPERATIONS
adb push <local› <remote> = copy file/dir to device
adb pull <remote> <local> = copy file/dir from device
run-as <package> cat <file> = access the private package files
PHONE INFO
adb get-stat-p = print device state
adb get-serialno = get the serial number
adb shell dumpsys iphonesybinfo = get the IMEI
adb shell netstat = list TCP connectivity
adb shell pwd = print current working directory
adb shell dumpsys battery = battery status
adb shell pm list features = list phone features
adb shell service list = list all services
adb shell dumpsys activity <package>/<activity> = activity info
adb shell ps = print process status
adb shell wm size = displays the current screen resolution
dumpsys window windows | grep -E 'mCurrentFocus | mFocusedApp' = print current app's opened activity
PACKAGE INFO
adb shell list packages = list package names
adb shell list packages -r = list package name + path to apks
adb shell list packages -3 = list third party package names
adb shell list packages -s = list only system packages
adb shell list packages - u = list package names + uninstalled
adb shell dumpsys package packages = list info on all apps
adb shell dump <name> = list info on one package
adb shell path <package> = path to the apk file
CONFIGURE SETTINGS
adb shell dumpsys battery set level <n> = change the level from 0 to 100
adb shell dumpsys battery set status<n> = change the level to unknown
adb shell dumpsys battery reset = reset the battery
adb shell dumpsys battery set usb <n> = change the status of USB connection. ON or OFF
adb shell wm size WxH = sets the resolution to WXH
DEVICE RELATED CMDS
adb reboot-recovery = reboot device into recovery mode
adb reboot fastboot = reboot device into recovery mode
adb shell screencap -p "/path/to/screenshot.png" = capture screenshot
adb shell screenrecord "/path/to/record.mp4" = record device screen
adb backup -apk -all -f backup.ab = backup settings and apps
adb backup -apk - shared -all -f backup.ab = backup settings
adb backup -apk -nosystem -all -f backup.ab = backup only non-system apps
adb restore backup.ab = restore a previous backup
adb shell am start | startservice | broadcast <INTENT> [<COMPONENT>] -a <ACTION>e.g. android.intent.action.VIEW -c <CATEGORY>e.g.android.intent.category.LAUNCHER = start activity intent
adb shell am start -a android.intent. action.VIEW -d URL = open URL
adb shell am start -t image/* -a android.intent.action.VIEW = opens gallery
LOGS
adb logcat [options] [filter] [filter] = view device log
adb bugreport = print bug reports
PERMISSIONS
adb shell permissions groups = list permission groups definitions
adb shell list permissions -g -r = list permissions details
For a lot more including Red Team, OSINT & Blue Team, check out:
Operator Handbook: Red Team + OSINT + Blue Team
Happy Days.
Subscribe to our email newsletter and unlock access to members-only content and exclusive updates.
Comments