Implicaciones de seguridad del rooting de android [duplicado]

6

Sé que esta pregunta se ha formulado muchas veces, pero no vi una respuesta clara por parte de los expertos en seguridad, o es de hace varios años y las cosas podrían haber cambiado.

Mi pregunta es doble:

  1. en primer lugar, hoy en día, ¿cómo funciona el proceso de enraizamiento de un teléfono Android (por favor, detalle si hay varias alternativas)? ¿Se basa en un agujero de seguridad o es un tipo de ataque (como el acceso físico al dispositivo) que no forma parte del perímetro de seguridad de Android? En el primer caso, ¿por qué no está arreglado, ya que hay recompensas abiertas para el sistema Android? Tenga en cuenta que solo estoy hablando del sistema Android en sí (como un teléfono Nexus), con los últimos parches.

  2. Segunda pregunta relacionada: ¿Cuál sería el riesgo de seguridad de rootear un teléfono Android? Si no me equivoco, se podrían agrupar en al menos dos cuestiones: el proceso de enraizamiento en sí y las consecuencias.

    a. Con respecto al proceso de enraizamiento, ¿existe algún procedimiento de código abierto (o al menos revisado de cerca) para enraizar un teléfono nexus que pueda garantizar que no haya malware instalado en el proceso? (ver también la primera pregunta)

    b. Por lo que entiendo, tener un Android rooteado no es diferente a tener un sistema operativo Linux con una cuenta root. ¿Hay alguna aplicación (gratuita, de código abierto) que pueda monitorear (qué comandos se han lanzado, etc.) y evitar que las aplicaciones accedan a la cuenta raíz sin mi consentimiento? (para que sea Linux OS donde cualquier cuenta que requiera privilegios de root debe pasar por 'sudo' y pedirle al usuario que ingrese su contraseña).

pregunta thomasUJ 16.01.2016 - 19:07
fuente

2 respuestas

2

Limitaré mis respuestas a los teléfonos Nexus.

He rooteado mi teléfono Nexus. Estoy seguro de que el rooting funcionará en los nuevos teléfonos Nexus. (Los teléfonos Samsung también pueden ser rooteados)

El enraizamiento no se basa en ningún agujero de seguridad en particular. La idea general es poder ejecutar comandos como usuario root (como en el sistema Linux). Rootear un teléfono en sí mismo no puede ser calificado como un ataque; Pero el problema es que si alguien roba un teléfono y luego trata de descifrarlo, puede ser un problema. Los teléfonos Nexus se borrarán completamente durante el proceso de enraizamiento.

Con respecto a los riesgos de seguridad para ejecutar aplicaciones en teléfonos rooteados. Un ejemplo muy simple sería, si una aplicación almacena en caché una cookie de sesión autenticada (o contraseña) en un área del teléfono a la que el usuario no puede acceder generalmente (en teléfonos no rooteados), entonces se puede acceder a ella en teléfonos rooteados. (Perder un teléfono rooteado puede provocar el robo de contraseñas o el robo de cookies)

Un ejemplo no tan simple sería que un atacante intente ejecutar una aplicación en un teléfono rooteado y utilice quizás tablas IP en el teléfono Android para redirigir el tráfico a un proxy (para una aplicación que generalmente no puede ser proxy).

Para protegerse contra este tipo de amenazas, las aplicaciones emplean mecanismos de protección de raíz que hacen que las aplicaciones no se ejecuten en teléfonos rooteados o se ejecuten de manera restringida en teléfonos rooteados.

Hay aplicaciones de contador que intentan ocultar la capacidad de raíz para omitir el mecanismo de defensa de detección de raíz. Ellos trabajan a veces.

Pero un atacante realmente experto puede llegar al nivel de modificar el código fuente de la apk y usar una versión modificada de la aplicación para adaptarse a su propósito.

Por lo tanto, la mejor forma de que una aplicación sea no confiar en el lado del cliente para proteger datos confidenciales o en la integridad de los datos recibidos (el código fuente o la suposición de que la aplicación no funcionará en un teléfono rooteado)

Para rootear el teléfono , lo había usado como una guía y funcionó para mí. enlace

Puede usar la aplicación de superusuario para administrar las otras aplicaciones con acceso de root. Por lo tanto, si una aplicación solicita acceso de raíz, deberá permitirlo explícitamente a través de la aplicación de superusuario. enlace

No estoy seguro de que esto haya respondido tus preguntas completamente Déjeme saber si tiene alguna pregunta y trataré de responder.

    
respondido por el aRun 28.01.2016 - 06:39
fuente
1
  1. El proceso general de enraizamiento de un teléfono funciona mediante explotación de una vulnerabilidad en el sistema operativo Android correspondiente para llevar a cabo una escalada de privilegios que a su vez te hace (un usuario no root) root. A continuación, puede instalar el firmware modificado. Esto es, por definición, confiar en los agujeros de seguridad

  2. No hay garantía de que usar el exploit en su teléfono para rootearlo no incluya malware a menos que sepa el código fuente. Además, si descarga una imagen o kernel personalizados, puede descargar fácilmente un firmware de puerta trasera sin querer. Entonces, si decide rootear su teléfono, definitivamente elija un kernel personalizado de una página como XDA Developers donde el código se revisa al menos un poco. Nunca instale un kernel de código cerrado.

Puede enumerar procesos en Linux con bastante facilidad con ps aux , sin embargo, esto tiene poco o ningún sentido con los dispositivos móviles. Además, el principal problema con los dispositivos rooteados es que no se puede simplemente volver del modo de usuario normal al de root. El acceso a la raíz por lo general solo se usa temporalmente en Linux, por lo que incluso con una raíz perfectamente sin puerta trasera, su dispositivo móvil seguirá siendo más vulnerable.

    
respondido por el AdHominem 28.01.2016 - 07:35
fuente

Lea otras preguntas en las etiquetas