Desofuscando malware hecho en Java: una mirada al top 10 de Brasil

Share this…

Hace unas semanas mencionábamos que los scripts maliciosos se afianzan en Brasil. Vimos cómo el top 10 de amenazas está compuesto por diversos lenguajes y plataformas, y analizamos malware en Javascript. Hoy vamos a continuar con otra de las amenazas más vistas en Brasil, downloaders de troyanos bancarios hechos en Java.

Siguiendo la pista de los servicios de cloud utilizados para alojar el malware en Javascript, nos encontramos con que también se están almacenando allí otras amenazas del top 10 de Brasil. En particular, vimos una alta actividad de archivos maliciosos detectados por ESET comoJava/TrojanDownloader.Banload.AK.

Estos archivos son ejecutables .jar, con nombres como Boleto_Cobranca, Pedido_Atualizacao oImprimir_Debitos. Si los decompilamos, obtenemos código ofuscado con nombres de variables y métodos extremadamente largos:

codigo ofuscado Java

Más allá de la ofuscación, podemos observar algunos de los imports en la imagen. Vemos que las últimas cinco clases importadas tienen que ver con cifrado, utilizando el algoritmo simétrico DES. Luego, si identificamos los métodos que realizan el descifrado, y realizamos el remplazo de métodos y variables por nombres más representativos, nos queda algo así:

descifrado DES en Java

La clave utilizada para el descifrado es igual al nombre de la clase de Java. Por lo tanto, adaptando un poco el código de main, puede hacerse que el malware descifre todas susstrings para nosotros. De hecho, podemos parsear la clase principal en búsqueda de estasstrings y luego pasar este listado a nuestro código modificado, para que lleve a cabo el descifrado.

A continuación, vemos algunas de las strings cifradas y descifradas:

strings descifradas DES en Java

Hemos resaltado la dirección IP del servidor contactado por el malware, que varía entre las distintas muestras que hemos analizado. Vemos, además, que se construye un archivo deVisual Basic Script, que es luego ejecutado con cscript.exe.

Vale la pena aclarar que los archivos analizados tienen otras funcionalidades, lo cual se puede observar en el resto de los imports. Quizá lo que más vale la pena mencionar tiene que ver con la detección de entornos virtualizados, frustrando su ejecución. También vemos funciones dedescarga de archivos de Internet, como se comprueba con el resto de los imports:

imports malware ofuscado Java

Llama la atención la diversidad en lenguajes y plataformas utilizadas en Brasil, pero se observa cómo los objetivos de los cibercriminales y sus métodos de propagación siguen siendo los mismos.

Fuente:https://www.welivesecurity.com/