Según el Página de Wikipedia para el rooting de Android ,
El proceso del rooting varía mucho según el dispositivo, pero suele incluir la explotación de una debilidad de seguridad en el firmware del dispositivo y luego copiar el
su
binario a una ubicación en el PATH del proceso actual (por ejemplo/system/xbin/su
) y concederle permisos de ejecución con la opciónchmod
mando. Una aplicación supervisora como SuperUser o SuperSU puede regular y registrar las solicitudes de permisos elevados de otras aplicaciones. Existen muchas guías, tutoriales y procesos automáticos para dispositivos Android populares que facilitan un proceso de rooteo rápido y sencillo.
Ahora, quería saber qué exploits se utilizan en este proceso, así que empecé a buscar por ahí. Encontré un par de referencias a exploits de Android (en particular RageAgainstTheCode ), pero un par de preguntas aquí ( este y ¿Cómo regula su los permisos de las aplicaciones? ) me da la impresión de que no se está llevando a cabo ninguna explotación real.
Por lo que he deducido, el proceso funciona así:
- Desbloquear el gestor de arranque ( dispositivo de limpieza por motivos de seguridad )
- Instalar el custom recovery (permitirá flashear archivos ZIP arbitrarios)
- Flashear el archivo zip SuperUser o SuperSU en el custom recovery.
Según tengo entendido, el custom recovery es capaz de flashear el archivo ZIP porque existe en un nivel inferior (por así decirlo) al de la ROM, y como tal, puede modificar la ROM para instalar el su
binario y la aplicación SuperUser. Es decir, no se está utilizando ningún exploit real para conseguir el Root.
¿Me estoy perdiendo algo aquí? ¿Se está realizando implícitamente algún exploit durante uno de estos pasos?
Como nota, estoy hablando de que un usuario rootee un teléfono, no de que un trozo de código malicioso consiga acceso Root.