Los investigadores de ESET han analizado una aplicación para Android extremadamente peligrosa que puede realizar una serie de acciones nefastas. En particular, la limpieza de la cuenta bancaria de la víctima o de la billetera de criptomonedas, así como el secuestro de sus cuentas de correo electrónico o redes sociales. Bajo el nombre de 'DEFENSOR ID', este troyano bancario estaba disponible en Google Play al momento de realizar el análisis. Si bien la aplicación está equipada con funcionalidades para el robo de información, una de las cosas que hace que este troyano bancario sea excepcionalmente peligroso es que después de ser instalado requiere de una sola acción por parte de la víctima –habilitar el Servicio de Accesibilidad de Android– para liberar su funcionalidad maliciosa por completo.

La aplicación DEFENSOR ID logró llegar a la fuertemente protegida tienda de Google Play gracias a su extrema cautela. En este sentido, sus creadores redujeron la superficie maliciosa de la aplicación al mínimo al eliminar todas las funcionalidades potencialmente maliciosas, excepto una: abusar del Servicio de Accesibilidad.

El Servicio de Accesibilidad es conocido desde hace mucho tiempo como el talón de Aquiles del sistema operativo Android. Y si bien las soluciones de seguridad pueden detectar el uso combinado de los servicios de accesibilidad junto con otros permisos, funciones sospechosas o funcionalidades maliciosas, en el caso de DEFENSOR ID, todas fallaron en activar cualquier alarma al enfrentarse a la no existencia de una funcionalidad adicional o permiso.

Por "todas" nos referimos a los mecanismos de seguridad que protegen la tienda oficial de aplicaciones para Android (incluidos los motores de detección de los miembros de la App Defense Alliance) y todos los proveedores de seguridad que participan en el programa VirusTotal (ver Figura 1).

Figura 1. Según el servicio VirusTotal, ningún proveedor de seguridad detectó la aplicación DEFENSOR ID hasta que fue removida de la Play Store

DEFENSOR ID se lanzó el 3 de febrero de 2020 y se actualizó por última vez a la versión 1.4 el 6 de mayo de 2020. En este artículo analizamos la última versión; aunque no pudimos determinar si las versiones anteriores también eran maliciosas. Según su perfil en Google Play (ver Figura 2), la aplicación alcanzó solo 10+ descargas. Nosotros reportamos a Google el 16 de mayo de 2020 y desde el 19 de mayo de 2020 la aplicación ya no está disponible en Google Play.

Bajo el nombre desarrollador figuraba “GAS Brazil”, lo cual sugiere que los ciberdelincuentes detrás de esta aplicación apuntaban a usuarios brasileños. Además de incluir el nombre del país, el nombre de la aplicación probablemente refleje la intención de mostrar relación con la solución antifraude llamada “GAS Tecnologia”. Ese software de seguridad es comúnmente instalado en las computadoras en Brasil, ya que varios bancos requieren su uso a la hora de iniciar sesión en su servicio de banca en línea. Sin embargo, además de la versión en portugués, también hay una versión en inglés de la aplicación DEFENSOR ID (ver Figura 3), y esa aplicación no tiene restricciones geográficas ni de idioma.

Más allá de la relación sugerida con GAS Tecnologia, la aplicación promete una mayor seguridad para sus usuarios. La descripción en portugués promete más protección para las aplicaciones del usuario, incluido el cifrado de extremo a extremo. De manera engañosa, la aplicación figuraba en la sección Educación.

Figura 2. La aplicación DEFENSOR ID en Google Play - Versión en portugués ("Su nueva aplicación Defensor disponible para: Personas físicas / Personas jurídicas. De ahora en adelante tendrá más protección cuando use sus aplicaciones, cifrado de extremo a extremo para los usuarios")

Figura 3. La aplicación DEFENSOR ID en Google Play - versión en inglés

Funcionalidad

Después de iniciarse, DEFENSOR ID solicita los siguientes permisos:

  • permiso para modificar la configuración del sistema
  • permiso para mostrarse sobre otras aplicaciones, y
  • activar servicios de accesibilidad.

Si un usuario desprevenido otorga estos permisos (consulte la Figura 4), el troyano puede leer cualquier texto que se muestre en cualquier aplicación que el usuario pueda haber iniciado y enviarlo a los atacantes. Esto significa que los atacantes pueden robar: credenciales de la víctima para iniciar sesión en aplicaciones, SMS y mensajes de correo electrónico, claves privadas de criptomonedas que se hayan abierto e incluso códigos de doble factor de autenticación (2FA) generados a través de un software.

El hecho de que el troyano pueda robar las credenciales de la víctima y que tenga acceso a los mensajes SMS y a los códigos 2FA generados significa que los operadores de DEFENSOR ID pueden evadir el doble factor de autenticación. Esto les permite, por ejemplo, tomar el control total de la cuenta bancaria de la víctima.

Para asegurarse de que el troyano sobrevive al reinicio del dispositivo, abusa de los servicios de accesibilidad ya activados que le permitirán al troyano iniciarse justo después de reiniciar el dispositivo.


Figura 4. Permisos solicitados por DEFENSOR ID

Nuestro análisis muestra que el troyano DEFENSOR ID puede ejecutar 17 comandos recibidos desde el servidor controlado por el atacante, mediante los cuales puede desinstalar una aplicación, iniciar una aplicación y luego realizar cualquier acción de clic/toque controlada remotamente por el atacante (ver Figura 5).

Figura 5. La lista de comandos que DEFENSOR ID puede obtener de su servidor de C&C

En 2018, vimos un comportamiento similar, pero todas las acciones de clic fueron hardcodeadas y adecuadas solo para la aplicación elegida por el atacante. En este caso, el atacante puede obtener la lista de todas las aplicaciones instaladas en el equipo de la víctima y luego iniciar de forma remota la aplicación que elija para robar credenciales o realizar acciones maliciosas (por ejemplo, enviar fondos a través de una transferencia bancaria).

Creemos que esta es la razón por la cual el troyano DEFENSOR ID solicita al usuario que habilite el permiso "Modificar la configuración del sistema". Posteriormente, el malware cambiará el tiempo de espera de la pantalla a 10 minutos. Esto significa que, a menos que las víctimas bloqueen sus dispositivos mediante el botón del equipo, el temporizador proporciona tiempo suficiente para que el malware realice de forma remota operaciones maliciosas en la aplicación.

Si el dispositivo se bloquea, el malware no puede desbloquearlo.

Filtración de datos del malware

Cuando analizamos la muestra, nos dimos cuenta de que los operadores de este malware dejaron la base de datos remota con algunos de los datos de las víctimas de libre acceso, sin ninguna autenticación. La base de datos contenía la última actividad realizada en alrededor de 60 dispositivos comprometidos. No encontramos ninguna otra información robada a las víctimas que fuera accesible.

Gracias a esta fuga de datos pudimos confirmar que el malware realmente funcionó según lo diseñado: el atacante tenía acceso a las credenciales ingresadas de las víctimas, correos electrónicos y mensajes mostrados o escritos, etc.

Una vez que llegamos a la base de datos abierta pudimos observar de forma directa el comportamiento malicioso de la aplicación. Para ilustrar el nivel de amenaza que representaba la aplicación DEFENSOR ID, realizamos tres pruebas.

Primero, iniciamos una aplicación bancaria e ingresamos las credenciales de acceso. Inmediatamente las credenciales que ingresamos estaban disponibles en la base de datos expuesta –observe la Figura 6.

Figura 6. Prueba de la aplicación bancaria: las credenciales ingresadas (izquierda) y disponibles en la base de datos (derecha)

En segundo lugar, escribimos un mensaje de prueba en un cliente de correo electrónico. Un segundo después el mensaje se cargó en el servidor de los atacantes –observe la Figura 7.

Figura 7. Prueba del mensaje de correo electrónico: el mensaje tal como fue escrito (arriba) y de la forma en la que aparece disponible en la base de datos (abajo)

En tercer lugar, documentamos cómo el troyano recupera el código de doble factor de autenticación del Autenticador de Google.

Figura 8. El código de doble factor de autenticación generado por la app tal como apareció en la pantalla del dispositivo (arriba) y de la forma en que aparece disponible en la base de datos (abajo)

Junto con la app maliciosa DEFENSOR ID, se descubrió otra aplicación maliciosa llamada Defensor Digital. Ambas aplicaciones compartían el mismo servidor de C&C, pero no pudimos investigar esta última, ya que había sido eliminada de la tienda Google Play.

Quizás te interese:

Indicadores de Compromiso (IoCs)

Package Name Hash ESET detection name
com.secure.protect.world F17AEBC741957AA21CFE7C7D7BAEC0900E863F61 Android/Spy.BanBra.A
com.brazil.android.free EA069A5C96DC1DB0715923EB68192FD325F3D3CE Android/Spy.BanBra.A

Técnicas de MITRE ATT&CK

Tactic ID Name Description
Initial Access    T1475 Deliver Malicious App via Authorized App Store Impersonates security app on Google Play.
T1444 Masquerade as Legitimate Application Impersonates legitimate GAS Tecnologia application.
Discovery T1418 Application Discovery Sends list of installed apps on device.  
Impact   T1516 Input Injection Can enter text and perform clicks on behalf of user.
Collection T1417 Input Capture Records user input data.
Command and Control T1437 Standard Application Layer Protocol Uses Firebase Cloud Messaging for C&C.