Про 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.