Hace apenas 8 días desde que llegase la versión final de Android 13. Una release con muchas novedades invisibles relacionadas con permisos y seguridad, aunque puede que esto no sea suficiente. El permiso de accesibilidad es el principal caballo de Troya de Android: las apps pueden controlar al completo nuestro dispositivo valiéndose de él.
Como recoge ThreatFabric, ya se está trabajando en un troyano capaz de saltarse las nuevas limitaciones de Android 13 con este permiso. Mediante el permiso de accesibilidad se han sufrido sonados casos como el de Flubot, el troyano tras la estafa del SMS. Este nuevo malware funciona de una forma aún más sofisticada, pero basándose en el mismo principio.
El permiso de accesibilidad no deja de dar problemas
El permiso de accesibilidad, como su propio nombre indica, es una herramienta de Android pensada para que usuarios con ciertos impedimentos puedan interactuar con el teléfono. Al activar este permiso, la app puede ver, tocar y recoger todos los datos de la pantalla. En otras palabras, puede tener control total sobre el teléfono, ya que el propósito original es que dicha app pueda realizar las tareas básicas que el usuario no puede realizar. Aunque nace con un buen fin, el permiso es más que peligroso para la seguridad.
Para intentar solucionar parcialmente el problema, con la llegada de Android 13 Google impuso algunas limitaciones. El sistema ahora detecta si una app se ha instalado desde una tienda de apps o desde fuera de ella. Si se ha instalado desde fuera, se bloqueará la opción de darle permiso de accesibilidad. Saltarse esta limitación no parecía tan difícil: lograr que tu APK malicioso se instale desde una tienda de apps.
Investigadores de Threatfabric descubrieron un nuevo malware bajo el nombre de BugDrop, una app que simula ser un lector de códigos QR. Nada más abrirla, la app pide el permisos de accesibilidad. Pero, ¿cómo lo consigue? Este APK no actúa como un APK normal, sino que su código esconde un paquete llamado com.secpro.androidapkupdater, que logra engañar al sistema y actuar como si fuera una tienda de aplicaciones. Dentro de este paquete sí que se solicita el acceso al permiso de accesibilidad, y puede obtenerlo sin mayor problema.
Este método se hereda de un malware antiguo, que tenía la capacidad de instalar APKs en el dispositivo. En Android 13 esto se logra gracias a la cadena "com.example.android.apis.content.SESSION API PACKAGE INSTALLED", de este complejo nombre solo debes quedarte con la palabra "Session". En Android 13, como te indicábamos, no es posible que una app que ha sido cargada desde fuera obtenga permisos de accesibilidad, pero sí que pueden obtenerlos las apps con una API basada en inicio de sesión (ya que este es el método que utilizan las tiendas de apps).
¿En otras palabras? Android 13 no distingue realmente lo que es una tienda de apps y lo que no, simplemente concede o no la posibilidad de acceder a este permiso dependiendo de si la app ha sido cargada desde fuera o si utiliza la API basada en sesión (una API REST con autenticación basada en token).
Este malware está aún en fase temprana de desarrollo, por lo que no hay noticias sobre aplicaciones que estén empezando a infectar con él de forma global. No obstante, pone en jaque la seguridad de un sistema que prometía solventar los problemas del famoso permiso de accesibilidad.
Ver 28 comentarios