Использует ли рутирование уязвимость в системе безопасности?

Согласно странице Википедии для рутирования Android ,

Процесс рутирования сильно различается в зависимости от устройства, но обычно включает в себя использование уязвимости в системе безопасности прошивки устройства , а затем копирование suдвоичного файла в место в PATH текущего процесса (например /system/xbin/su) и предоставление ему прав на выполнение с помощью chmodкоманды. Приложение супервизора, такое как SuperUser или SuperSU, может регулировать и регистрировать запросы на повышенные разрешения от других приложений. Для популярных устройств Android существует множество руководств, учебных пособий и автоматических процессов, упрощающих процесс рутирования.

Теперь я хотел знать, какие эксплойты используются в этом процессе, поэтому я начал искать. Я нашел пару ссылок на эксплойты Android (в частности , RageAgainstTheCode ), но пара вопросов здесь ( этот вопрос и Как su регулирует разрешения приложений? ) создают у меня впечатление, что на самом деле эксплойт не выполняется.

Из того, что я собрал, процесс работает следующим образом:

  1. Разблокировать загрузчик ( стирает устройство из соображений безопасности )
  2. Установите кастомное рекавери (позволит прошивать произвольные ZIP-файлы)
  3. Прошить ZIP-файл SuperUser или SuperSU в кастомном рекавери.

Насколько я понимаю, пользовательское рекавери может прошивать ZIP-файл, потому что он существует на более низком уровне (так сказать), чем ПЗУ, и поэтому может модифицировать ПЗУ для установки suдвоичного файла и приложения SuperUser. То есть никакой реальный эксплойт не используется для получения root-прав.

Я что-то здесь сильно упускаю? Выполняется ли какой-либо эксплойт неявно во время одного из этих шагов?

В качестве примечания, я говорю о рутировании телефона пользователем, а не о вредоносном фрагменте кода, получающем root-доступ.

Ответы (1)

Во-первых, нет ничего лучше процесса укоренения. Вы частично сами ответили на свой вопрос: рутировать устройство можно разными способами. К двум наиболее известным методам относятся:

  • используя эксплойт (SuperOneClick & Co делают это: вы устанавливаете приложение, нажимаете на него и получаете root-права)
  • через пользовательское восстановление (которое является непосредственно загрузочным и, таким образом, может напрямую обращаться к устройству, поэтому вы можете установить любое ПЗУ, которое, в свою очередь, может уже быть рутированным)

Итак, отвечая на ваш вопрос: да и нет - все зависит от того, как вы рутируете свое устройство. Перечисление всех возможных эксплойтов может занять много времени, поэтому лучше пропустим эту часть. Вы также можете проверить вопросы в «связанном» разделе этой страницы для получения более подробной информации (в частности , каковы шаги для рутирования устройства Android в целом? ).