Про adb
Коротше кажучи, adb
(Android Debug Bridge) - це утиліта, яку потрібно встановити на комп’ютер, щоб дозволити їй отримати оболонку на телефоні, який або підключений через USB-кабель, або в тій же мережі Wi-Fi.
На деяких пристроях під керуванням Android Lollipop (5.1.1) та, можливо, нижчих версіях ОС, можна було обманути пристрій підключитися до себе, оскільки adb
клієнт також постачався в телефоні. Це вже неможливо, оскільки від Android Marshmallow (6.0) далі Google видалив adb
бінарне з телефонів, щоб зменшити корисну поверхню атаки.
Однак, можливо, вручну ввести adb
клієнта в телефон, не потрібно самостійно складати двійковий файл. Докладнішу інформацію про цю тему, а також про встановлення на комп’ютер та загальне усунення несправностей див. У вікі тегів adb .
Де його взяти
Деякий час тому, щоб отримати adb
та іншу утиліту, яку зателефонували fastboot
, довелося завантажити повний SDK для Android з Google, якщо вони хочуть офіційний пакет. На сьогоднішній день, як каже XDA , з'явився невеликий офіційний пакет . Він включає бінарні файли для найбільш поширених операційних систем.
Як це працює
adb
Клієнт, встановлений на комп'ютері, робить з'єднання з підключеним або іншим чином виявленого телефону, за допомогою внутрішнього сервера. Потім користувач зможе надіслати на телефон самі різні команди, які будуть прослуховані adbd
, демон, що знаходиться на телефоні.
Під час використання adb
ви представляєте себе за ім'я користувача shell
(UID 2000
). Цей користувач особливий тим, що він може надати доступ до додатків та отримати більше інформації, ніж простий користувач. Цей факт, однак, не означає, що adb
це те саме, що su
, оскільки останній дозволяє видавати себе за будь-якого користувача.
Більш детальну інформацію про adb
та її роботу можна отримати, переглянувши офіційну документацію .
Видача команд з телефону
Більшість команд, які можна видавати через, adb
як правило, є утилітами, які попередньо встановлені в телефоні.
Для того, щоб отримати доступ до них, вам потрібно встановити на своєму телефоні додаток емулятора терміналів (зауважте, що Termux особливий тим, що він вказує своє PATH
, тим самим ігноруючи системні бінарні файли). Наприклад, це дозволить видавати такі команди, як logcat
безпосередньо на мобільному пристрої. Не забудьте опустити adb
префікс.
Варто зазначити, що якщо вам не вистачить кореневих дозволів, діапазон команд, які ви зможете виконати, та інформація, до якої ви зможете отримати доступ, буде значно меншою, ніж якщо ви користуєтесь adb
, тому що UID, який викликає їх, буде сама програма та програми мають менші дозволи, ніж UID 2000
.