Un nuevo troyano de Android, conocido como SoumniBot, ha sido identificado en Corea del Sur. Este malware se destaca por su innovadora táctica para evadir análisis y detección, utilizando una ofuscación del manifiesto de Android, explicó el investigador de Kaspersky, Dmitry Kalinin.
Cada aplicación de Android incluye un archivo XML de manifiesto (“AndroidManifest.xml”) que especifica los componentes de la aplicación, junto con los permisos y funciones requeridas. Los analistas de amenazas a menudo comienzan su investigación examinando este archivo para entender el comportamiento de la aplicación.
Sin embargo, los actores detrás de SoumniBot complican el análisis del archivo de manifiesto utilizando tres técnicas distintas.
La primera técnica es el uso de un método de compresión no válido al desempaquetar el archivo de manifiesto del APK con la biblioteca libziparchive. Esta estrategia engaña a la biblioteca, que trata cualquier valor distinto de 0x0000 o 0x0008 como sin comprimir, permitiendo a los desarrolladores de aplicaciones usar valores distintos de 8 para escribir datos sin comprimir. Los desempaquetadores correctamente implementados rechazarían un manifiesto con este tipo de compresión, pero Android lo maneja correctamente, permitiendo que se instale la aplicación.
En segundo lugar, SoumniBot tergiversa el tamaño del archivo de manifiesto, presentando un valor mayor que el real. Esto permite copiar el archivo “sin comprimir” directamente, haciendo que el analizador de manifiesto ignore datos adicionales y superpuestos. Los analizadores de manifiestos más estrictos no leerían un archivo de este tipo, pero el analizador de Android lo maneja sin problemas.
Por último, el malware utiliza nombres de espacios de nombres XML largos en el archivo de manifiesto, lo que dificulta a las herramientas de análisis asignar suficiente memoria para procesar estos nombres. A pesar de ello, el analizador de manifiesto de Android maneja estos archivos sin errores.
Una vez iniciado, SoumniBot solicita su configuración a un servidor codificado para obtener los servidores que envían y reciben datos utilizando el protocolo MQTT. El malware puede acceder a metadatos de dispositivos, listas de contactos, mensajes SMS, fotos, videos y lista de aplicaciones instaladas.
Además, SoumniBot puede agregar o eliminar contactos, enviar mensajes SMS, alternar el modo silencioso y activar el modo de depuración de Android. También puede ocultar su icono, lo que dificulta su desinstalación.
Una característica única de SoumniBot es su capacidad para buscar en medios de almacenamiento externo archivos .key y .der que contienen rutas a “/NPKI/yessign”, referentes a certificados de firma digital utilizados por bancos y gobiernos en Corea del Sur.
El investigador Kalinin concluyó que los creadores de malware buscan maximizar las infecciones sin ser detectados, lo que los lleva a emplear tácticas que complican la detección. En este caso, SoumniBot tuvo éxito debido a las validaciones insuficientemente estrictas en el código del analizador de manifiestos de Android.
fuente: thehackernews