Un nuevo malware para Android, denominado NoVoice, ha infectado al menos 2.3 millones de dispositivos al explotar vulnerabilidades conocidas para obtener acceso root. El malware se distribuyó a través de más de 50 aplicaciones en Google Play Store, incluyendo limpiadores, galerías de imágenes y juegos, que no requerían permisos sospechosos y ofrecían la funcionalidad prometida.

Los investigadores de la empresa de ciberseguridad McAfee descubrieron el malware NoVoice, aunque no pudieron vincularlo a un actor de amenazas específico. Sin embargo, destacaron similitudes con el troyano Android Triada. El malware explotaba vulnerabilidades antiguas con parches entre 2016 y 2021 para obtener acceso root.

Cadena de infección de NoVoice

Según los investigadores de McAfee, el actor de amenazas ocultaba componentes maliciosos en el paquete com.facebook.utils, mezclándolos con clases legítimas del SDK de Facebook. Un payload cifrado (enc.apk) oculto en una imagen PNG mediante esteganografía se extraía (h.apk) y cargaba en la memoria del sistema, eliminando todos los archivos intermedios para eliminar rastros.

El malware evitaba infectar dispositivos en ciertas regiones, como Pekín y Shenzhen en China, y realizaba 15 comprobaciones de emuladores, depuradores y VPN. Si no se otorgaban permisos de ubicación, continuaba con la cadena de infección. Luego se conectaba al servidor de comando y control (C2) y recopilaba información del dispositivo para determinar la estrategia de explotación.

El malware consultaba al C2 cada 60 segundos y descargaba componentes para exploits específicos del dispositivo, diseñados para rootear el sistema víctima. McAfee observó 22 exploits, incluyendo bugs use-after-free del kernel y fallos del controlador GPU Mali. Estos exploits otorgaban un shell root y permitían deshabilitar SELinux, eliminando protecciones de seguridad fundamentales.

Después de rootear el dispositivo, bibliotecas clave del sistema como libandroid_runtime.so y libmedia_jni.so eran reemplazadas por wrappers que interceptaban llamadas al sistema y redirigían la ejecución a código de ataque. El rootkit establecía múltiples capas de persistencia, incluyendo scripts de recuperación, reemplazo del manejador de fallos del sistema con un cargador del rootkit y payloads de respaldo en la partición del sistema, que no se borraban con un restablecimiento de fábrica.

Un daemon de vigilancia se ejecutaba cada 60 segundos para verificar la integridad del rootkit y reinstalar automáticamente componentes faltantes. Si las comprobaciones fallaban, forzaba un reinicio del dispositivo, lo que hacía que el rootkit se recargara.

Robo de datos de WhatsApp

En la fase posterior a la explotación, se inyectaba código controlado por el atacante en cada aplicación lanzada en el dispositivo. Se desplegaban dos componentes principales: uno que permitía la instalación o eliminación silenciosa de aplicaciones, y otro que operaba dentro de cualquier aplicación con acceso a internet. Este último servía como mecanismo principal de robo de datos, y McAfee observó que se dirigía principalmente a WhatsApp.

Cuando se abría WhatsApp en un dispositivo infectado, el malware extraía datos sensibles necesarios para replicar la sesión de la víctima, incluyendo bases de datos de cifrado, claves del protocolo Signal e identificadores de cuenta como número de teléfono y detalles de copia de seguridad en Google Drive. Esta información se exfiltraba al C2, permitiendo a los atacantes clonar la sesión de WhatsApp en su propio dispositivo.

Los investigadores señalaron que, aunque solo recuperaron un payload centrado en WhatsApp, el diseño modular de NoVoice hace posible que se hayan utilizado otros payloads dirigidos a cualquier aplicación del dispositivo. Las aplicaciones maliciosas que contenían NoVoice fueron eliminadas de Google Play después de que McAfee, miembro de App Defense Alliance, las reportara a Google.

En una declaración a BleepingComputer, un portavoz de Google dijo: 'Los dispositivos actualizados desde mayo de 2021 están protegidos contra NoVoice, ya que las vulnerabilidades explotadas fueron parcheadas hace años. Como capa adicional de defensa, Google Play Protect elimina automáticamente estas aplicaciones y bloquea nuevas instalaciones. Los usuarios siempre deben instalar las últimas actualizaciones de seguridad disponibles para su dispositivo.'

Sin embargo, los usuarios que instalaron estas aplicaciones previamente deben considerar sus dispositivos y datos comprometidos. Dado que NoVoice se dirige a fallos corregidos hasta mayo de 2021, actualizarse a un dispositivo con un parche de seguridad posterior mitiga eficazmente esta amenaza en su forma actual. Se recomienda a los usuarios de Android actualizarse a modelos con soporte activo e instalar solo aplicaciones de editores confiables y conocidos, incluso en Google Play.

image
image
App on Google Play carrying the NoVoice payload
App on Google Play carrying the NoVoice payload
Validation checks performed on the infected device
Validation checks performed on the infected device
Compromise chain for the NoVoice Android malware
Compromise chain for the NoVoice Android malware
Code for stealing WhatsApp databases
Code for stealing WhatsApp databases
article image
article image