Cómo evitar que las aplicaciones descubran que mi teléfono está enraizado

28

Tengo que instalar una aplicación que descubrió que mi dispositivo está rooteado.

Entonces esta es una pregunta de dos partes.

  1. ¿Cómo descubrió en primer lugar que mi teléfono ha sido rooteado?

  2. Cómo evitar que la aplicación descubra que mi teléfono está rooteado

satts
fuente

Respuestas:

18

Para detectar el estado de rooteo del dispositivo, una aplicación emite un sucomando. Si el estado de salida es 0, significa que el dispositivo está rooteado ... de lo contrario, no.

Para evitar esto, puede simplemente Denyacceder a la raíz utilizando la ventana emergente de SuperUser (siempre que esté permitido desde la configuración de SuperUser, aparece una ventana emergente cuando una aplicación emite un sucomando). Después de esto, la aplicación obtendránon-zero estado de salida y no podrá determinar el estado de rooteo.

Actualización:
algunas aplicaciones pueden usar otras formas de verificar el estado raíz (como verificar elsu existencia del archivo binario). Me gustaría admitir que ninguno es un método perfecto sin resultados falsos positivos, pero a veces tienen éxito con la suerte.

El mejor método universal para evitar la detección: restringir el permiso del demonio de la aplicación. No puedo sugerir limitaciones de permisos exactos porque no conozco las funciones de la aplicación. Puede estropear las funcionalidades de la aplicación.

En el último, me gustaría decir: Técnicamente, no hay forma de evitar la detección con una tasa de éxito del 100%. En caso de limitaciones de permisos, la aplicación aún puede sospechar que algo está mal.

Android Quesito
fuente
1
De no ser pedante o nitpicky, otra manera es comprobar en el binario /system/xbin/susi existe - que es en realidad una "silenciosa" poco, entonces se intenta ejecutar su, disimulado que sé :)
t0mm13b
2
@ t0mm13b No es una prueba real porque si alguien ha colocado suun archivo de texto en esa ubicación mediante una raíz temporal, la aplicación mostrará resultados falsos.
Android Quesito
@SachinShekhar La aplicación no ha solicitado su previliges ya que mi aplicación SuperUser lanzaría una notificación. ¿Hay algo que deba hacer al iniciar sesión en el teléfono y cambiar algo
Satts
@ user1654218 Asegúrese de que la Always Allowopción SuperUser no esté activa. Puede evitar la detección por Always Denyo Deny Alltambién (los textos de opciones pueden variar dependiendo de la versión).
Android Quesito
@ user1654218 ¿Cuál es la aplicación en la pregunta? Es posible que la aplicación esté usando un método incorrecto con buena suerte.
Android Quesito
6

Utilizo OTA Rootkeeper , que incluye una función para hacer una copia de seguridad suy desrootear temporalmente el teléfono. Una vez desarraigado temporalmente, puede volver a enraizar restaurando elsu copia de seguridad.

(Además, también intenta preservar la raíz cuando aplica una actualización OTA de su proveedor de servicios inalámbricos, que es una característica realmente agradable).

Michael Hampton
fuente
4

Esto es lo que funcionó para mí:

1- Necesitas tener Xposed Framework instalado, puedes instalarlo desde aquí: http://repo.xposed.info/module/de.robv.android.xposed.installer , Xposed es un framework para módulos que pueden cambiar el comportamiento del sistema y las aplicaciones sin tocar ningún APK.

2- Descargue el módulo xposed de Root Cloak desde aquí http://repo.xposed.info/module/com.devadvance.rootcloak y actívelo.

3- Añade la aplicación de la que intentas ocultar la raíz.

Se requerirá reiniciar un par de veces dentro del proceso.

lmm
fuente
2

Superusuario ya tiene una casilla de verificación de desroote temporal, funciona bien, probado

Szilveszter Szilagyi
fuente
3
Bienvenido a los entusiastas de Android . Gracias por tu contribución. Sería mejor si pudieras ampliar esta respuesta un poco explicando dónde se encuentra y si necesita una versión pro o no (si está disponible) :)
Andrew T.
-1

Esta pregunta ya ha sido formulada y respondida:

Para resumir, busque la aplicación llamada "Superusuario" (como una sugerencia).

-editar- Por sugerencia si el enlace se cae:

¿Cómo puedo desactivar la raíz en un dispositivo modificado?

Si instala SuperUser, puede controlar qué aplicaciones tienen acceso de root. De forma predeterminada, bloquea todas las solicitudes y le pregunta qué desea hacer. Puede otorgar acceso a una aplicación indefinidamente y revocarla en cualquier momento, o permitir solo solicitudes específicas con un tiempo de espera. La mayoría de las ROM rooteadas vienen preinstaladas, incluyendo CyanogenMOD, y muchos métodos de rooteo también lo instalarán por usted.

Como alternativa, puede eliminar el binario su y Busybox de su dispositivo para desarraigarlo de manera efectiva.

Westley
fuente
3
Inhabilitar y ocultar raíces son dos cosas diferentes. También responder con solo un enlace no se considera útil. Si el enlace muere, la respuesta es menos que útil.
roxan
@Cookster Quería evitar que las aplicaciones detecten mi teléfono como rooteado. No quiero deshabilitar root en mi teléfono
CustomRom
"Si instala SuperUser, puede controlar qué aplicaciones tienen acceso de root". ¿Me estoy perdiendo de algo? Bloquee el acceso de todas las aplicaciones a la raíz y mantenga el teléfono rooteado.
Westley
Sí, te pierdes algo. La cuestión no era "cómo evitar que aplicaciones de ganar privs de raíz", pero "cómo evitar que aplicaciones de detección privs raíz podría estar disponible .
Izzy
-3

El enraizamiento es reversible. Entonces, si desrooteas tu teléfono, la aplicación no verá nada.

air-dex
fuente
9
No es una solución útil. El interrogador y muchos otros rootearon sus teléfonos por buenas razones, y probablemente necesiten los privilegios de root para algo.
Izzy