Por qué Android Pay y otras aplicaciones no funcionan en dispositivos rooteados

Rootear su dispositivo Android le brinda acceso a una variedad más amplia de aplicaciones y un acceso más profundo al sistema Android. Pero algunas aplicaciones, como Android Pay de Google, no funcionarán en absoluto en un dispositivo rooteado.

Google usa algo llamado SafetyNet para detectar si su dispositivo está rooteado o no, y bloquea el acceso a esas funciones. Google tampoco está solo, muchas aplicaciones de terceros tampoco funcionarán en dispositivos Android rooteados, aunque pueden verificar la raíz de otras maneras.

SafetyNet: Cómo sabe Google que ha rooteado su teléfono Android

Los dispositivos Android ofrecen una «API de SafetyNet”, Que forma parte de la capa de servicios de Google Play instalada en dispositivos Android aprobados por Google. Esta API «proporciona acceso a los servicios de Google que le ayudan a evaluar la salud y la seguridad de un dispositivo Android», según Google. Si es un desarrollador de Android, puede llamar a esta API en su aplicación para verificar si el dispositivo en el que está ejecutando ha sido manipulado.

Esta API de SafetyNet está diseñada para verificar si un dispositivo ha sido manipulado, ha sido rooteado por un usuario, está ejecutando una ROM personalizada o ha sido infectado con malware de bajo nivel, por ejemplo.

Los dispositivos que vienen con Google Play Store y otras aplicaciones instaladas deben aprobar el “Paquete de pruebas de compatibilidad” de Android de Google. Rootear un dispositivo o instalar una ROM personalizada evita que un dispositivo sea «compatible con CTS». Así es como la API de SafetyNet puede saber si está rooteado: solo verifica la compatibilidad con CTS. Del mismo modo, si obtiene un dispositivo Android que nunca vino con las aplicaciones de Google, como una de esas tabletas de $ 20 que se envían directamente desde una fábrica en China, no se considerará «en absoluto» compatible con CTS «, incluso si no lo ha hecho no lo arraigó. .

Para obtener esta información, Google Play Services descarga un programa llamado «snet» y lo ejecuta en segundo plano en su dispositivo. El programa recopila datos de su dispositivo y los envía a Google de forma regular. Google usa esta información para una variedad de propósitos, desde obtener una imagen del ecosistema más amplio de Android hasta determinar si el software de su dispositivo ha sido manipulado o no. Google no explica exactamente qué está buscando snet, pero es probable que snet verifique si la partición de su sistema ha cambiado desde el estado de fábrica.

Puede verificar el estado de SafetyNet de su dispositivo descargando una aplicación como Ejemplo de asistente de SafetyNet Dónde Zona de juegos SafetyNet. La aplicación le preguntará al servicio SafetyNet de Google el estado de su dispositivo y le informará la respuesta que recibe del servidor de Google.

Para obtener más detalles técnicos, lea esta publicación de blog escrito por John Kozyrakis, estratega técnico de Cigital, una empresa de seguridad de software. Buscó en SafetyNet y explica con más detalle cómo funciona.

Está en la aplicación

SafetyNet es opcional para los desarrolladores de aplicaciones, y los desarrolladores de aplicaciones pueden optar por utilizarlo o no. SafetyNet solo evita que una aplicación se ejecute si el desarrollador de una aplicación no quiere que se ejecute en dispositivos rooteados.

La mayoría de las aplicaciones no comprueban la API de SafetyNet en absoluto. Incluso una aplicación que verifica la API de SafetyNet, como las aplicaciones de prueba anteriores, no dejará de funcionar si recibe una mala respuesta. El desarrollador de la aplicación debe verificar la API de SafetyNet y detener la ejecución de la aplicación si se entera de que el software de su dispositivo ha cambiado. La aplicación Android Pay de Google es un buen ejemplo de esto en acción.

Android Pay no funcionará en dispositivos rooteados

La solución de pago móvil Android Pay de Google no funciona en absoluto en dispositivos Android rooteados. Intente iniciarlo y verá un mensaje que dice «No se puede usar Android Pay. Google no puede verificar que su dispositivo o el software que se ejecuta en él sea compatible con Android.

No se trata solo de rootear, por supuesto, ejecutar una ROM personalizada también lo pondría en contra de este requisito. La API de SafetyNet afirmará que no es «compatible con Android» si está utilizando una ROM personalizada con la que no viene el dispositivo.

Recuerde, esto no solo detecta el enraizamiento. Si su dispositivo estaba infectado con malware a nivel del sistema capaz de espiar Android Pay y otras aplicaciones, la API de SafetyNet también evitaría que Android Pay funcione, lo cual es bueno.

Rootear su dispositivo rompe el modelo de seguridad normal de Android. Android Pay normalmente protege sus datos de pago mediante las funciones de la zona de pruebas de Android, pero las aplicaciones pueden salir de la zona de pruebas en un dispositivo rooteado. Google no tiene forma de saber qué tan seguro sería Android Pay en un dispositivo en particular si está rooteado o ejecuta una ROM personalizada desconocida, por lo que lo bloquean. Un ingeniero de Android Pay explicó el problema en el Foro de desarrolladores de XDA si tienes curiosidad por saber más.

Otras formas en que las aplicaciones pueden detectar root

SafetyNet es solo una forma de que una aplicación verifique si se está ejecutando en un dispositivo rooteado. Por ejemplo, los dispositivos Samsung incluyen un sistema de seguridad llamado KNOX. Si rootea su dispositivo, se activa la seguridad de KNOX. Samsung Pay, la propia aplicación de pago móvil de Samsung, se negará a trabajar en dispositivos rooteados. Samsung usa KNOX para esto, pero también podría usar SafetyNet.

Asimismo, muchas aplicaciones de terceros le impedirán usarlas y no todas usan SafetyNet. Simplemente pueden verificar la presencia de aplicaciones y procesos raíz conocidos en un dispositivo.

Es difícil encontrar una lista actualizada de aplicaciones que no funcionan cuando un dispositivo está rooteado. Sin embargo, RootCloak proporciona muchos liza. Estas listas pueden estar desactualizadas, pero son las mejores que podemos encontrar. Muchas son aplicaciones bancarias y otras aplicaciones de billetera móvil, que bloquean el acceso en teléfonos rooteados en un esfuerzo por proteger su información bancaria para que no sea capturada por otras aplicaciones. Las aplicaciones para servicios de transmisión de video también pueden negarse a funcionar en un dispositivo rooteado como una especie de medida de DRM, tratando de evitar que grabe una transmisión de video protegida.

Algunas aplicaciones pueden ser engañadas

Google está jugando al gato y al ratón con SafetyNet, actualizándolo constantemente en un intento de mantenerse un paso por delante de las personas que lo eluden. Por ejemplo, el desarrollador de Android Chainfire ha creado un nuevo método para rootear dispositivos Android sin modificar la partición del sistema, conocido como «raíz sin sistema». SafetyNet inicialmente no detectó dispositivos manipulados y Android Pay funcionó, pero SafetyNet finalmente se actualizó para detectar este nuevo método de enraizamiento. Significa Android Pay ya no funciona con root sin sistema.

Dependiendo de cómo una aplicación verifique el acceso a la raíz, es posible que pueda engañarla. Por ejemplo, habría métodos para rootear algunos dispositivos Samsung sin activar la seguridad de KNOX, lo que le permitiría continuar usando Samsung Pay.

En el caso de las aplicaciones que solo buscan aplicaciones raíz en su sistema, existe un módulo Xposed Framework llamado RootCape eso aparentemente le permitiría atraerlos a trabajar de todos modos. Funciona con aplicaciones como DirecTV GenieGo, Best Buy CinemaNow y Movies by Flixster, que normalmente no funcionan en dispositivos rooteados. Sin embargo, si estas aplicaciones se actualizaran para usar SafetyNet de Google, no sería tan fácil engañarlas de esa manera.

La mayoría de las aplicaciones seguirán funcionando normalmente después de rootear su dispositivo. Las aplicaciones de pago móvil son la gran excepción, al igual que otras aplicaciones bancarias y financieras. A veces, los servicios de transmisión de video de pago intentarán evitar que usted también vea sus videos.

Si una aplicación que necesita no funciona en su dispositivo rooteado, siempre puede quitar su dispositivo para usarla. La aplicación debería funcionar una vez que devuelva su dispositivo a su estado seguro de fábrica.

Credito de imagen: Danny Choo en Flickr

Publicaciones Similares

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *