Root en Linux (o en cualquier sistema similar a Unix) es simplemente el usuario con ID de Usuario 0. El programa su (que en realidad significa "Cambiar Usuario", no "Super Usuario") es simplemente un programa para iniciar otro programa con un ID de usuario diferente al programa de inicio (por defecto para uid 0, que es para el usuario root). Android no utiliza el tradicional /etc/passwd, sin embargo, todavía utiliza el ID de Usuario de Linux y el ID de Grupo para gestionar permisos.
Si deseas interceptar las solicitudes de su para poder solicitar la contraseña o hacer cumplir otras reglas, necesitarás reemplazar /sbin/su con tu propia versión de su. Un enfoque alternativo es el descrito aquí: http://www.koushikdutta.com/2008/11/fixing-su-security-hole-on-modified.html aunque eso requerirá que las aplicaciones cooperen lanzando un Intent cuando quieren cambiar de usuario.
El marco de seguridad de Android es más o menos así: cada aplicación instalada se ejecuta en su propio ID de Usuario (seleccionado en el momento de la instalación), y los permisos de la aplicación se implementan como grupos de usuarios.
¿Puedo cambiar la contraseña de root después de rootear mi dispositivo Android simplemente escribiendo "passwd"?
Android no utiliza /etc/passwd, por lo que tampoco tiene el programa passwd
.
¿Cómo funciona el proceso de root? quiero decir, ¿qué hacen las aplicaciones de "root con un solo clic" en mi teléfono?
No estoy muy seguro del proceso exacto, probablemente quieras preguntar a los desarrolladores de root. Sin embargo, supongo que simplemente revierte la verificación de seguridad que originalmente evitaba que los desarrolladores establezcan el setuid 0.
Y soy un desarrollador, ¿cómo puedo encontrar APIs ocultas (como en iOS) para el desarrollo de aplicaciones con root?
Dado que Android es de código abierto, no hay API verdaderamente oculta en Android. Sin embargo, hay algunas API no publicitadas o no documentadas, puedes buscar esto en el código fuente de Android. Sin embargo, estas APIs no se tratan de desarrollos con root, suelen ser APIs en desarrollo que aún no están listas o están demasiado localizadas para un propósito específico que no es útil para el desarrollador público (o tal vez Google todavía no ha realizado su utilidad). No tienes restricciones para utilizar estas APIs, pero dado que no son APIs oficialmente admitidas, podrían desaparecer o romper las compatibilidades en el futuro. Si necesitas utilizar estas APIs, asegúrate de que tu aplicación falle de manera controlada.
1 votos
No es un iPhone no hay contraseña.