Análisis de la actividad del troyano bancario Buhtrap

Cyphort publicó recientemente un artículo sobre el troyano bancario Buhtrap [https://www.cyphort.com/banking-malware-buhtrap-caught-action/] dirigido a usuarios de bancos rusos y ucranianos, según lo informó Group-IB en marzo de 2016 [http://www.group-ib.com/brochures/gib-buhtrap-report.pdf].

El revelador artículo de Cyphort analiza la cadena de vulnerabilidad desde el sitio web eurolab[.]ua que dirige a los usuarios a través de un atributo HTML script src aparentemente introducido hacia rozhlas[.]site, que proporciona el código exploit para CVE-2016-0189 (Internet Explorer 11 VBScript Engine Memory Corruption).

La detonación del código exploit produce la descarga del malware de primer nivel, que es responsable de evaluar el perfil del sistema y, luego, descargar el malware Buhtrap real o un binario no malicioso según el entorno de ejecución. Los sistemas que muestran indicios de estar involucrados en determinadas operaciones bancarias recibirán el malware (a veces, en la forma de un paquete instalador NSIS) y otros sistemas recibirán el binario no malicioso. En algunos casos, las zonas protegidas no ejecutarán el malware correctamente.
El malware de primer nivel mencionado posee el valor hash SHA-256 de cd703f7bd0e449fbc9ccdaaae85beef2f874988236a50cd40d3f93b817d5b670. El sitio web rozhlas[.]site (ahora sin conexión) fue un terreno de almacenamiento provisional genérico que se utilizó para alojar el malware Buhtrap y el binario no malicioso, así como el código exploit.

Figura 1: Ejemplo de un flujo de trabajo general para la instalación del malware Buhtrap

Descargar selectivamente el malware de segundo nivel según la evaluación del perfil del objetivo es una táctica que también ha sido implementada por otros sistemas de almacenamiento provisional/carga de malware genéricos, como Andromeda, que en algunos casos buscan específicamente operaciones de puntos de venta. Los analistas y los responsables de las respuestas ante incidentes deben ser capaces de seguir la actividad de amenazas y explotación para llegar a cargas de segundo nivel y así obtener el conocimiento total. La popularidad de los entornos de análisis automatizados mediante zonas protegidas desafortunadamente significa que los actores de amenazas siguen invirtiendo en tácticas de ejecución de malware que reducirán la visibilidad cuando la carga se detone en tales entornos de análisis.
Si bien el blog Cyphort hace un buen trabajo analizando el primer nivel, hay contexto adicional y otros indicadores que rodean a este primer nivel de actividad de amenazas que pueden ser de interés para los responsables de la protección de redes y los analistas de inteligencia de amenazas.
Con respecto a la muestra descrita analizada por Cyphort, el dominio C2 rozhlas[.]site parece haber sido utilizado únicamente para entregar contenido malicioso, según una variedad de consultas al motor de búsqueda que solo mostraron actividad de actores de amenazas. Además del sitio eurolab[.]ua mencionado anteriormente que dirigía a rozhlas[.]site, el 19 de agosto de 2016 otros sitios en Rusia y Ucrania también estaban redirigiendo a los usuarios hacia allí mediante redirecciones de script src. Aunque no tenemos el contenido real de la página en cuestión, a continuación se muestra una lista de otros sitios que utilizaban la táctica de script src durante el mismo período:

Sitio Fecha
infored.ru 2016-08-18
waralbum.ru 2016-08-19
mobile.womenhealthnet.ru 2016-08-26
travelermap.ru 2016-09-19

Debido a que claramente los actores de amenazas asociados con Buhtrap utilizan el sitio rozhlas[.]site, es interesante analizar otras muestras de malware que inician la conectividad de red con rozhlas[.]site.

Muestra 1: Knock

a0c428ae70bfc7fff66845698fb8ce045bffb3114dde4ea2eac19561a619c6c8

Esta muestra establece una conexión saliente con http://rozhlas[.]site/knock.html, que coincide con el nombre de la cadena PDB que se encuentra dentro del binario C:\Users\dev\Documents\Visual Studio 2015\Projects\knock\Release\knock.pdb. La muestra también contiene un valor HTTP User-Agent interesante utilizado en la conectividad saliente con la URL de knock. El encabezado HTTP observado durante el análisis es el siguiente:

GET /knock.html HTTP/1.1
Accept: text/*
User-Agent: Mozilla/5.0 (compatible; MSIE 273.0; Windows NT 6.1; WOW64; Trident/5.0; MASP)
Host: rozhlas.site

Este User-Agent nunca se observó en circulación (según el corpus de HTTP de ASERT que contiene alrededor de 120 millones de encabezados de clientes HTTP recopilados desde una posición estratégica global) y, por ende, podría valer la pena realizar una investigación adicional como parte razonable de un mecanismo de detección basado en la red o en YARA. Si bien solo se descubrió una muestra de este malware hasta el momento, puede volver a aparecer. A continuación, se muestra una regla YARA para detectar esta muestra:

rule buhtrapknock {

meta:

author = “Curt Wilson”
org = “Arbor Networks ASERT”
hash = “a0c428ae70bfc7fff66845698fb8ce045bffb3114dde4ea2eac19561a619c6c8”
desc = “connects to C2 and issues HTTP client request for knock.html”

strings:

$s1 = “C:\\Users\\dev\\Documents\\Visual Studio 2015\\Projects\\knock\\Release\\knock.pdb” ascii wide
$s2 = “User-Agent: Mozilla/5.0 (compatible; MSIE 273.0; Windows NT 6.1; WOW64; Trident/5.0; MASP)” ascii wide
$s3 = “/knock.html” ascii wide

condition:

uint16(0) == 0x5a4d and 2 of ($s*)

}

Esta muestra, que parece ser un descargador según los esquemas de detección antimalware (que puede, por supuesto, ser genérica e imprecisa), se descubrió en circulación con el nombre de archivo cache.bin.

En función de la presencia de “Knock” en el código y en las comunicaciones de red, es posible que el propósito de esta muestra sea simplemente informarle al actor de amenazas coordinador (también conocido como “botmaster”) que otra máquina está en peligro. También es posible que una conexión con C2 mediante esta solicitud de cliente HTTP única desencadene otro tipo de proceso, aunque sin acceso al código del lado del servidor o a un C2 activo esto es difícil de determinar.

La muestra se creó durante la ejecución de otras dos muestras de malware, 6e43b7aff8a151eef979493b98eec3ce447489e9ec4deab656a40ef3ed0ca6ab y 97f80175fb58cc514bdcb79d11fe1bcec1b74422171d9493d179a90dcacd7d93, que se describirán como muestra 2 y muestra 3 en este artículo.

Muestra 2: El generador de perfiles de Buhtrap coloca Knock

6e43b7aff8a151eef979493b98eec3ce447489e9ec4deab656a40ef3ed0ca6ab

Este archivo se encontró en la URL http://rozhlas[.]site/news/business/cache.bin el 07/09/2016.

Se observó que esta muestra conecta http://rozhlas[.]site/news/business/release.bin con User-Agent Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0).

El análisis de un volcado de memoria revela un listado de 120 archivos EXE diferentes que incluye nombre de archivo y extensión. Todas las extensiones eran .EXE, excepto una instancia de .ex y una instancia de una extensión .dll. En total, la lista incluía 122 archivos. Todos estos nombres de archivo coinciden con la lista de software bancario que Buhtrap está buscando (como lo establece Cyphort en https://www.cyphort.com/wp-content/uploads/2016/09/Files.png) a excepción del nombre wclnt.exe. Wclnt.exe parece estar asociado con Sberbank of Russia. Wikipedia describe a Sberbank como tal:

Sberbank of Russia es una empresa de servicios bancarios y financieros rusa con sede en Moscú. Sberbank tiene operaciones en varios países europeos y postsoviéticos.

Mientras que el malware de primer nivel Buhtrap solo busca la presencia del software wclnt.exe para generar la descarga y ejecución del segundo nivel, el software wclnt.exe de Sberbank también ha sido blanco de otros malware bancarios, como Carberp. Podemos ver esto si revisamos el código fuente de Carberp publicado a mediados de 2013 en https://github.com/hzeroo/Carberp/blob/master/source%20-%20absource/pro/all%20source/BJWJ/source/RuBnk/Sber.cpp

El mismo nombre de archivo wclnt.exe aparece en un análisis del troyano bancario Ranbyus, mencionado a principios de 2013 por Xyliltol en http://www.xylibox.com/2013/01/trojanwin32spyranbyus.html

Muestra 3: El generador de perfiles de Buhtrap coloca Knock

97f80175fb58cc514bdcb79d11fe1bcec1b74422171d9493d179a90dcacd7d93

Esta parece ser otra instancia del malware de primer nivel Buhtrap que evalúa el perfil del sistema y descarga una carga inofensiva o el malware Buhtrap de segundo nivel.
En la muestra original, que está comprimida o codificada de tal manera que ofusca algunos aspectos de la funcionalidad, podemos observar lo que parece ser algún tipo de clave.

A continuación, se muestra una regla YARA para activar la presencia de esta clave y otras características de identificación:
rule buhtrapkey {

meta:

author = “Curt Wilson”
hash = “97f80175fb58cc514bdcb79d11fe1bcec1b74422171d9493d179a90dcacd7d93”
desc = “Buhtrap Related Malcode”

strings:

$s1 = “1A59D5ABEBFD652D826A976C3C81CC6C”
$s2 = “ReturnValue” ascii wide

condition:

uint16(0) == 0x5a4d and all of ($s*)

}

En la práctica, esta regla YARA funciona mejor cuando se aplica contra volcados de memoria del componente malware Buhtrap de primer nivel, pero también puede funcionar en muestras de malware principal, según su estructura. Se podría añadir un parámetro filesize en la sección condition, sin embargo, este valor debe ser más grande que el volcado de memora más grande en cuestión.

Muestra 4:

04e473e49695503226bcc16e74765a700c53a0ed185228ac40ba371ace71e8e8

La cuarta muestra relacionada con Buhtrap que analizamos contiene una URL que dirige a una carga benigna conocida en rozhlas[.]site/news/business/release.bin.

Esta muestra, al igual que otras, utiliza el nombre de archivo LogParser.exe en un intento por hacerse pasar por la utilidad Microsoft Log Parser y utiliza el siguiente ícono:

Las propiedades del archivo de malware también pretenden imitar la presencia de Log Parser 2.2:

El LogParser.exe legítimo tiene propiedades similares:

Esta muestra está firmada por Bit-Trejd, un punto que veremos más detalladamente en un próximo informe. El código binario LogParser.exe real está firmado por Microsoft, no por Bit-Trejd. Esta firma sospechosa debe ser indicio de un problema.

En la segunda parte, cubriremos el análisis de otro malware firmado por este certificado.

Reglas YARA: https://www.arbornetworks.com/blog/asert/wp-content/uploads/2016/11/Buhtrap_yara_ASERT.zip

sha-256:
681a9de3918b987302b895b29b0bba6c8d430847d5a8234d9e4ab748a4885624

IOC en formato CSV: https://www.arbornetworks.com/blog/asert/wp-content/uploads/2016/11/buhtrap_ioc.csv

sha-256:
3fa6f753fd195ced50e40ff5fd366e8586c6752ab3b371ad8b19a6c04f5fe21f

Conclusión

La finalidad de este artículo es proporcionar contexto adicional en torno a la amenaza de Buhtrap. Asimismo, brinda indicadores adicionales y datos que resultan útiles para los responsables de las respuestas ante incidentes y otros investigadores de amenazas.

 

  • Posted in ASERT Blog
  • Comentarios desactivados en Análisis de la actividad del troyano bancario Buhtrap