ErrorFather, el troyano que se apodera de las apps bancarias
A medida que los sistemas de seguridad se vuelven más eficientes, los actores malintencionados intentan adaptarse desarrollando métodos más sofisticados para eludirlos. Ahora, los investigadores de Cyble han descubierto un «nuevo» troyano con capacidades avanzadas de ocultación que apunta a aplicaciones bancarias de Android.
El troyano se llama ErrorFather y está basado principalmente en el código de Cerberus, un troyano bancario que surgió en 2019. Cerberus emplea métodos como VNC (control remoto de dispositivos), keylogging (captura de las teclas que se pulsa) y ataques de sobreposición (sitios web maliciosos disfrazados de una aplicación legítima). Sin embargo, ErrorFather agrega modificaciones al código que lo hacen prácticamente indetectable por los métodos actuales.
Contenido:
ErrorFather, el troyano indetectable que apunta a tus aplicaciones bancarias
ErrorFather utiliza un enfoque de descarga de varias etapas para aumentar su eficacia y evitar la detección. Si no se está al tanto, el malware de descarga funciona dejando caer archivos ejecutables maliciosos (conocidos como «payloads») en el dispositivo objetivo. Para ello, explotan vulnerabilidades a nivel de sistema operativo que comprometen el dispositivo. En esencia, el descargador garantiza la realización de las condiciones necesarias para la implementación del payload final.
Hay un APK principal que, a su vez, contiene un APK de segunda etapa llamado «final-signed.apk». El troyano almacena este descargador de segunda etapa en Assets, una biblioteca nativa de Android, lo que lo hace difícil de detectar como malware. Una vez que «final-signed.apk» se encuentra en Assets, el APK principal lo instala en el dispositivo utilizando una técnica basada en sesiones. Esto significa que tus ajustes para restringir la instalación de APK externos no serán efectivos.
El descargador de segunda etapa no implementa directamente el archivo de manifiesto que solicita permisos y servicios peligrosos, lo que aumenta la indetectabilidad del troyano. El final-signed.apk contiene un archivo cifrado que contiene el código. Este último se encarga de ejecutar «libmcfae.so» (un archivo nativo) para iniciar el proceso de descifrado del payload final («decrypted.dex»).
El troyano utiliza una estructura sofisticada y de varias capas. El equipo de Cyble presentó el troyano en la plataforma VirusTotal, y ningún motor antivirus fue capaz de detectarlo. Esto es bastante interesante si se considera que el troyano se basa en código que data de 2019 y ya se ha detectado.
¿Cómo funciona el troyano una vez instalado?
Una vez que se instala «final-signed.apk» y se ejecuta con éxito el payload final, el troyano se comunica con un bot de Telegram. El bot recibe el modelo de dispositivo, la marca y la versión de la API. También inicia procesos maliciosos como keylogging, ataques de sobreposición, VNC y recopilación de IPI (Información Personal Identificable). Además, ejecuta un algoritmo de generación de dominios (DGA) para crear un servidor de control y comando (C&C).
El algoritmo DGA es clave para mantener en funcionamiento el troyano. En esencia, asegura que siga funcionando incluso en caso de fallo de los servidores principales al establecer hasta cuatro C&C adicionales para mantener la comunicación.
Los ataques de sobreposición funcionan de la misma manera que el troyano bancario original de Cerberus. Primero, obtiene la lista de aplicaciones instaladas y la envía a servidores remotos. Los servidores buscarán aplicaciones bancarias de las que se puedan obtener sus credenciales. Después de detectar posibles objetivos, el servidor remoto «le dice» al troyano cuáles son. Una vez que accede a las aplicaciones bancarias objetivo, el troyano utiliza la inyección web HTML para mostrar una página de phishing falsa. Si introduce sus credenciales en la página falsa, la parte maliciosa recibirá los datos.
No se limitan a apuntar a tus credenciales bancarias. También intentarán robar sus datos de tarjetas de crédito. Estos últimos son un objetivo más fácil para causar daños financieros, ya que las cuentas bancarias protegidas por barreras de seguridad de inicio de sesión adicionales (como el 2FA) aún podrían evitar que el atacante acceda a ellas.
¿Cómo me puedo proteger de estos troyanos?
Aunque el troyano basado en Cerberus, ErrorFather, emplea métodos bastante sofisticados, puedes evitar convertirte en víctima siguiendo consejos básicos de seguridad. Esto incluye instalar aplicaciones solo desde Play Store, habilitar 2FA en tus cuentas bancarias y otras sensibles (como tu cuenta de Google), y evitar abrir enlaces recibidos a través de SMS o aplicaciones de mensajería. También debes evitar otorgar permisos sensibles a aplicaciones desconocidas, especialmente si proceden de fuentes no oficiales. Por último, disponer de un buen software antivirus en nuestro dispositivo es fundamental para detectar comportamientos extraños o fuera de lugar. Para Android tenemos ESET Mobile, que dispone de una versión limitada gratuita, y su versión completa (de pago) para estar 100% protegidos.
vía: androidheadlines.com