Android 4.3 adbd: возможно ли защитить паролем root-доступ?

#android #security #adb #daemon

#Android #Безопасность #adb #демон

Вопрос:

Я знаю, что в AOSP7 это обрабатывается намного лучше и даже предлагает пользователю переключатель для отключения отладки на сетевом и более общем уровне. Но 4.3, похоже, этого не позволяет. Я хочу иметь возможность защитить паролем корневую команду adb, выполненную по сети. У кого-нибудь есть какие-либо предположения о том, как этого можно достичь?

Спасибо ^^

Ответ №1:

В Android у вас будет root-доступ с помощью «su», который на самом деле является программой, которая запускает другие программы с другим идентификатором пользователя (идентификатор пользователя 0, который является идентификатором пользователя root). Вы можете перехватывать запросы su, заменив программу su в / sbin / su на любую пользовательскую версию su.

Этот пост определенно поможет вам :

https://android.stackexchange.com/questions/2974/what-is-the-default-android-root-password

Кстати, путь к исполняемому файлу su в вашем устройстве Android может отличаться в зависимости от инструмента, который вы использовали для рутирования вашего устройства.

Это может быть один из следующих путей:

1- / sbin / su

2-/system/xbin /su

3-/system/bin/su

Чтобы узнать, где находится ваш файл su, введите это в оболочке adb:

    Which su
  

Вы можете изменить исходный код su (я думаю, c ) таким образом, чтобы для каждого доступа требовался пароль. На самом деле вы можете делать все, что угодно, используя c . Вы даже можете написать свой собственный двоичный файл su, но для этого вам нужно знать, что на самом деле делает su. вы даже можете написать su с помощью сценариев bash, а не c .

Ссылка на пример рабочего исходного кода su:

https://github.com/ChainsDD/su-binary

Комментарии:

1. Кажется логичным ответом, спасибо за ссылку. Однако я не могу найти никаких следов ‘su’ в sbin. Устройство подключено к сети через Ethernet, поэтому я могу получить доступ просто с помощью IP-адреса.

2. Вы должны использовать root-доступ, чтобы видеть su через adb shell.

3. adb root adb shell cd / sbin ls Здесь у меня есть adbd, watchdogd и ueventd

4. Вы не можете изменить двоичный код su, хотя потому что он нечитаем. Но вы можете увидеть источник здесь: github.com/ChainsDD/su-binary

5. Вы можете изменить исходный код su (я думаю, c ) таким образом, чтобы для каждого доступа требовался пароль. На самом деле вы можете делать все, что угодно, используя c . Вы даже можете написать свой собственный двоичный файл su, но для этого вам нужно знать, что на самом деле делает su. вы даже можете написать su с помощью сценариев bash, а не c .