Distribuyen backdoor y ransomware de Buhtrap a través de plataforma de publicidad digital | WeLiveSecurity

Distribuyen backdoor y ransomware de Buhtrap a través de plataforma de publicidad digital

Investigadores de ESET documentaron cómo cibercriminales han estado utilizando una plataforma de publicidad digital para distribuir el conjunto de amenazas Buhtrap

Investigadores de ESET documentaron cómo cibercriminales han estado utilizando una plataforma de publicidad digital para distribuir el conjunto de amenazas Buhtrap

Qué mejor manera de atacar a profesionales de la contabilidad que hacerlo mientras realizan búsquedas en la web en busca de documentos relacionados a su trabajo. Esto es justamente lo que ha estado sucediendo durante los últimos meses, en los que un grupo ha estado utilizando dos conocidos backdoors —Buhtrap y RTM—, así como ransomware y malware para robar criptomonedas para atacar organizaciones, principalmente en Rusia. Para ello, los atacantes publicaron anuncios maliciosos en Yandex.Direct, en un intento de redirigir a potenciales blancos de ataque hacia un sitio en el cual ofrecen descargas maliciosas escondidas como plantillas de documentos. Yandex es conocido por ser el principal motor de búsqueda en Internet en Rusia, mientras que Yandex.Direct es la plataforma online de publicidad.

Nosotros hemos contactado a Yandex y han removido esta campaña de publicidad maliciosa, conocida como malvertising.

Si bien el código fuente del backdoor Buhtrap ha sido filtrado en el pasado y por lo tanto puede ser utilizado prácticamente por cualquiera, este no es el caso del código de RTM; al menos hasta donde nosotros sabemos. En este artículo explicaremos cómo los actores maliciosos distribuyeron malware haciendo uso abusivo de Yandex.Direct y lo alojaron en GitHub. Luego, concluiremos con un análisis técnico del malware que utilizaron.

Mecanismo de distribución y víctimas

Lo que nos permite establecer un vínculo entre los diferentes payloads es la forma en que fueron distribuidos: todos los archivos maliciosos creados por los cibercriminales estaban alojados en dos repositorios diferentes en GitHub.

Por lo general había solo un archivo malicioso descargable desde repositorio, pero éste cambiaba con frecuencia. Sin embargo, desde que el historial de cambios está disponible desde el repositorio de GitHub, podemos saber qué malware fue distribuido en un momento dado. Una forma de atraer a las víctimas para que descarguen estos archivos maliciosos fue a través de un sitio web, blanki-shabloni24[.]ru, como se puede apreciar en la Figura 1.

Figura 1 – Página de aterrizaje (landing page) de blanki-shabloni24[.]ru[

El diseño del sitio web, así como los nombres de todos los archivos maliciosos, fueron muy reveladores: eran todos acerca de formularios, plantillas y contratos. El nombre del programa falso se traduce como: “Colección de plantillas 2018: formularios, plantillas, contratos, muestras”. Dado que Buhtrap y RTM han sido utilizados en el pasado contra departamentos de contabilidad, inmediatamente creímos que se estaba llevando adelante una estrategia similar. Pero, ¿cómo fueron redirigidas las potenciales víctimas hacia el sitio web?

Campañas de infección

Al menos algunas de las potenciales víctimas que terminaron en este sitio web fueron engañadas a través de malvertising. Más abajo se puede ver un ejemplo de una URL que redirecciona al sitio web malicioso:

https://blanki-shabloni24.ru/?utm_source=yandex&utm_medium=banner&utm_campaign=cid|{blanki_rsya}|context&utm_content=gid|3590756360|aid|6683792549|15114654950_&utm_term=скачать бланк счета&pm_source=bb.f2.kz&pm_block=none&pm_position=0&yclid=1029648968001296456

Podemos ver en la URL que un banner publicitario fue posteado en bb.f2[.]kz, que es un foro de contabilidad legítimo. Es importante notar aquí que estos banners aparecieron en varios sitios web diferentes, todos con el mismo id de campaña (blanki_rsya) y la mayoría de ellos relacionados a servicios de contabilidad o asistencia legal. Desde la URL también se puede ver lo que el usuario estaba buscando –“скачать бланк счета” o “download invoice template (descargar plantilla de factura)”- reforzando nuestra hipótesis de que el blanco de ataque eran organizaciones. Una lista de los sitios web en los que aparecieron los anuncios y los términos de búsqueda relacionados se puede apreciar en la Tabla 1.

Search term RUSearch term EN (Google Translate)Domain
скачать бланк счетаdownload invoice templatebb.f2[.]kz
образец договораcontract exampleIpopen[.]ru
заявление жалоба образецclaim complaint example77metrov[.]ru
бланк договораcontract formblank-dogovor-kupli-prodazhi[.]ru
судебное ходатайство образецjudicial petition examplezen.yandex[.]ru
образец жалобыexample complaintyurday[.]ru
образцы бланков договоровexample contract formsRegforum[.]ru
бланк договораcontract formassistentus[.]ru
образец договора квартирыexample apartment contractnapravah[.]com
образцы юридических договоровexamples of legal contractsavito[.]ru

Tabla 1 – Términos de búsqueda utilizados y dominios en los que los banners con anuncios fueron desplegados

El sitio blanki-shabloni24[.]ru probablemente fue configurado de esta manera como una forma de sobrevivir a un escrutinio básico. Un anuncio asociado a un sitio web de apariencia profesional con un enlace hacia GitHub no es que parezca malo. Además, los cibercriminales pusieron los archivos maliciosos en su repositorio de GitHub solo por un período de tiempo limitado; probablemente mientras la campaña de anuncios estuvo activa. La mayor parte del tiempo, el payload en GitHub era un archivo zip vacío o un ejecutable limpio. Para resumir, los cibercriminales fueron capaces de distribuir anuncios a través del servicio Yandex.Direct hacia sitios web que era probable que fuesen visitados por contadores que estuviesen realizando búsquedas de términos específicos.

Observemos ahora los diferentes payloads que fueron distribuidos de esta manera.

Análisis del payload

Línea de tiempo de la distribución

Esta campaña de malware comenzó a finales de octubre de 2018 y al momento de escribir este artículo sigue activa. Desde que todo el repositorio estuvo disponible públicamente en GitHub, fuimos capaces de establecer una línea de tiempo precisa de las familias de malware distribuidas (ver Figura 2). Hemos observado seis familias de malware diferentes alojadas en GitHub durante este período de tiempo. Hemos añadido una línea que ilustra el momento en el que los enlaces de los anuncios fueron vistos, a partir de la telemetría de ESET, para comparar esta información con el histórico de Git. Podemos ver una correlación con los momentos en que los payloads estuvieron disponibles en GitHub. En el caso de la discrepancia que se puede ver al final de febrero, la misma puede explicarse porque nos faltó parte de la historia debido a que el repositorio fue removido de GitHub antes de que pudiésemos recuperarla en su totalidad.

Figura 2 – Línea de tiempo de la distribución del malware

Certificados de firma de código

Múltiples certificados de firma de código fueron utilizados para firmar malware distribuido durante esta campaña. Algunos de los certificados fueron utilizados para firmar más de una familia de malware, lo cual es un indicador adicional que vincula las distintas muestras de malware a la misma campaña. En el caso de los binarios que cargaron al repositorio de Git, los operadores no los firmaron de manera sistemática. Teniendo en cuenta que tuvieron acceso a la clave privada de estos certificados, es sorprendente que no los utilizaron para todos. A finales de febrero de 2019, los operadores también comenzaron a crear firmas individuales con un certificado perteneciente a Google, para el cual no poseían la llave privada.

Todos los certificados involucrados en esta campaña, y las familias de malware que firmaron, están desplegadas en la Tabla 2.

Cert’s CNThumbprintSigned malware family
TOV TEMA LLC775E9905489B5BB4296D1AD85F3E45BC936E7FDCWin32/ClipBanker
TOV "MARIYA"EE6FAF6FD2888A6D11DD710B586B78E794FC74FCWin32/ClipBanker
"VERY EXCLUSIVE LTD"BD129D61914D3A6B5F4B634976E864C91B6DBC8EWin32/Spy.Buhtrap
"VERY EXCLUSIVE LTD."764F182C1F46B380249CAFB8BA3E7487FAF21E2AWin32/Filecoder.Buhtrap
TRAHELEN LIMITED7C1D7CE90000B0E603362F294BC4A85679E38439Win32/Spy.RTM
LEDI, TOV15FEA3B0B839A58AABC6A604F4831B07097C8018Win32/Filecoder.Buhtrap
Google Inc1A6AC0549A4A44264DEB6FF003391DA2F285B19FWin32/Filecoder.Buhtrap
MSIL/ClipBanker

Tabla 2 – Lista de certificados y malware firmados por ellos

También utilizamos estos certificados de firma de código para ver si podíamos establecer enlaces con otras familias de malware. Para la mayoría de los certificados, no encontramos malware que no fuese distribuido a través del repositorio de GitHub. Sin embargo, en el caso del certificado TOV “MARIYA”, el mismo fue utilizado para firmar malware perteneciente a la botnet Wauchos así como algún adware y mineros de criptomonedas. Es muy poco probable que estas variantes de malware estuviesen asociadas a la campaña que analizamos, y también es probable que el certificado involucrado fuese comprado en algún mercado clandestino online.

Win32/Filecoder.Buhtrap

El componente que primero atrajo nuestra atención es el nunca antes visto Win32/Filecoder.Buhtrap. Se trata de un binario en Delphi que algunas veces viene empaquetado. Fue distribuido principalmente durante febrero y marzo de 2019. Implementa el comportamiento esperado de un ransomware, descubriendo discos locales y redes compartidas y cifrando archivos encontrados en estos dispositivos. No requiere una conexión a Internet para cifrar los archivos de sus víctimas, ya que no se comunica con el servidor para enviar las llaves de cifrado. En su lugar, anexa un “token” al final del mensaje de rescate y demanda a la víctima que se comunique con los operadores a través correo o Bitmessage.  La nota de rescate puede encontrarse en el Apéndice A.

Para cifrar todos los recursos importantes que sea posible, Filecoder.Buhtrap inicia un thread dedicado a finalizar procesos de programas estratégicos que puedan ser utilizados para abrir archivos que contengan información de valor, ya que los archivos no pueden ser cifrados mientras estén siendo utilizados en algún proceso. Los procesos apuntados son principalmente en sistemas de gestión de bases de datos (DBMS). Además, Filecoder.Buhtrap remueve archivos log y backups, para hacer que sea lo más difícil posible para la víctima recuperar sus archivos sin backups offline. Para hacer eso, es ejecutado el script en la Figura 3.

Figura 3 – Script para remover backups y archivos log

Filecoder.Buhtrap utiliza el servicio online legítimo IP Logger, el cual fue diseñado para recopilar información sobre quién está visitando un sitio web. Esto es utilizado para mantener un registro de las víctimas del ransomware. La línea de comando en la Figura 4 es la responsable de esto.

Figura 4 – Consulta a iplogger.org

Los archivos cifrados son elegidos en función de no coincidir con tres listas de exclusión. Primero, no cifra archivos con las siguientes extensiones: .com, .cmd, .cpl, .dll, .exe, .hta, .lnk, .msc, .msi, .msp, .pif, .scr, .sys and .bat . Segundo, todos los archivos para los que la ruta contiene en su directorio alguna de las cadenas que aparece en la Figura 5, son excluidos.

Figura 5 – Directorios excluidos del cifrado

En tercer lugar, nombres de archivos específicos son excluidos del cifrado, entre ellos el nombre del archivo de la nota de rescate. La Figura 5 muestra esta lista. Combinadas, estas exclusiones tienen la clara intención de dejar la máquina de la víctima cifrada y booteable, y mínimamente utilizable.

Figura 6 – Archivos excluidos del cifrado

Esquema de cifrado de archivos

Cuando el malware es ejecutado genera un par de llaves 512-bit RSA. El exponente privado (d) y los módulos (n) son entonces cifrados utilizando una llave pública de 2048-bit harcodeada (exponentes público y módulo), comprimido zlib y codificado en base64. El código responsable de esto se muestra en la Figura 7.

Figura 7 – Salida de la rutina de generación del par de llaves 512-bit RSA del decompilador Hex-Rays

La Figura 8 muestra un ejemplo de la versión en texto plano de la llave privada generada que constituye el token añadido a la nota de rescate.

Figura 8 – Ejemplo de una llave privada generada

La llave pública de los atacantes puede verse en la Figura 9.

Figura 9 – Llave pública RSA hardcodeada

Los archivos están cifrados mediante AES-128-CBC con una llave de 256-bit. Para que cada archivo sea cifrado, una nueva llave y un nuevo vector de inicialización son generados. La información de la llave es añadida al final del archivo cifrado. A continuación, examinamos el formato de un archivo cifrado.

Archivos cifrados tienen la siguiente cabecera:

Magic HeaderEncrypted SizeDecrypted sizeEncrypted data
0x56 0x1Auint64_tuint64_tencrypt('VEGA' + filedata[:0x5000])

Los datos del archivo general con el valor mágico “VEGA” antepuesto es cifrado hasta los primeros 0x5000 bytes. Toda la información necesaria para descifrar el archivo es añadida al archivo con la siguiente estructura:

File size markerSize of AES key blobAES key blobSize of RSA key blobRSA key blobOffset to File size marker
0x01 or 0x02uint32_tuint32_tuint32_t
  • Marcador de tamaño del archivo contiene una advertencia que indica que si el tamaño es 0x5000 bytes
  • Llave blob AES = CompresiónZlib (CifradoRSA (Llave AES + IV, llave pública generada del par de llaves RSA))
  • Llave blob RSA = CompresiónZlib (CifradoRSA (Llave privada RSA generada, llave pública RSA hardcodeada))

Win32/ClipBanker

Win32/ClipBanker es un componente que fue distribuido intermitentemente desde finales de octubre hasta principios de diciembre de 2018. Su rol es monitorear el contenido del portapapeles, buscando direcciones de criptomonedas. Si se encuentra una dirección de criptomonedas apuntada, la misma es reemplazada por una dirección presumiblemente perteneciente al operador del malware. Las muestras que observamos no estaban empaquetadas ni ofuscadas. El único mecanismo utilizado para esconder su comportamiento es el cifrado del string. Las direcciones de criptomonedas de los operadores están cifradas utilizando RC4. Varias criptomonedas son el blanco, como Bitcoin, Bitcoin cash, Dogecoin, Ethereum y Ripple.

Un muy insignificante monto de BTC fue enviado a la dirección de Bitcoin de los atacantes durante el período de distribución, lo cual sugiere que la campaña no fue muy exitosa. Adicionalmente, no hay forma de estar seguro de que estas transacciones están relacionadas con este malware.

Win32/RTM

Win32/RTM es un componente que fue distribuido durante unos pocos días a comienzos de marzo de 2019. RTM es un troyano bancario escrito en Delphi que apunta sistemas bancarios remotos. Allá por 2017, investigadores de ESET publicaron un white paper que contiene un análisis extensivo de este malware. Como poco ha cambiado desde ese entonces, sugerimos a los lectores interesados referirse a esa publicación para más detalles. En enero de 2019, Palo Alto Networks también publicó un post sobre este malware.

Downloader Buhtrap

Por un corto período de tiempo, el paquete disponible en GitHub era un downloader que no compartía ninguna semejanza con anteriores herramientas de Buhtrap. Este downloader alcanza https://94.100.18[.]67/RSS.php?<some_id> para llegar a la siguiente fase y cargarlo directamente en la memoria. Hemos identificado dos comportamientos diferentes para esta segunda fase del código. En una, la URL RSS.php arroja el backdoor Buhtrap de manera directa. Este backdoor es muy similar al disponible a través del código fuente filtrado.

Hemos visto varias campañas diferentes utilizando el backdoor Buhtrap, probablemente por diferentes actores. La principal diferencia en este caso es que, en primer lugar, el backdoor es cargado directamente en la memoria, sin utilizar el usual truco de carga lateral de la DLL documentado en un post anterior, y segundo; cambiaron la llave RC4 utilizada para cifrar el tráfico de red hacia el servidor C&C. La mayoría de las campañas que vimos activas ni siquiera se molestaron en modificar esta llave.

En el otro caso, más intricado, hemos visto que la URL RSS.php sirvió otro downloader. Este downloader implementa cierta ofuscación, como reconstrucción dinámica de tablas de importación. El objetivo final de este downloader es contactar al servidor C&C en https://msiofficeupd[.]com/api/F27F84EDA4D13B15/2 para enviar logs y esperar por una respuesta. Trata a este último como un blob binario, los carga en la memoria y los ejecuta. El payload que hemos visto ejecutar a este downloader fue el mismo backdoor Buhtrap que describimos anteriormente, aunque puede que existan otros payload.

Android/Spy.Banker

Algo interesante fue que se descubrió un componente Android en el repositorio de GitHub, aunque solo estuvo aquí durante un día (el 1 de noviembre de 2018). Aparte del hecho de que estuvo alojado en GitHub ese día, la telemetría de ESET no muestra evidencia de una distribución activa de este malware.

El componente Android fue alojado en GitHub como un Android Application Package (APK). Está fuertemente ofuscado. El comportamiento malicioso está oculto en un JAR cifrado localizado en la APK. Está cifrado con RC4 utilizando la siguiente llave:

key = [
0x87, 0xd6, 0x2e, 0x66, 0xc5, 0x8a, 0x26, 0x00, 0x72, 0x86, 0x72, 0x6f,
0x0c, 0xc1, 0xdb, 0xcb, 0x14, 0xd2, 0xa8, 0x19, 0xeb, 0x85, 0x68, 0xe1,
0x2f, 0xad, 0xbe, 0xe3, 0xb9, 0x60, 0x9b, 0xb9, 0xf4, 0xa0, 0xa2, 0x8b, 0x96
]

La misma llave y algoritmo son usados para cifrar los strings. El JAR está ubicado bajo APK_ROOT + image/files. Los primeros 4 bytes del archivo contienen la longitud del JAR cifrado, el cual comienza inmediatamente luego del campo longitud.

Una vez que desciframos el archivo, se vuelve evidente que se trata de Anubis, un Android Bancario que ya ha sido documentado. Este malware tiene las siguientes capacidades:

  • Grabar la señal del micrófono
  • Realizar capturas de pantalla
  • Obtener la posición del GPS
  • Keylogger (registro de las pulsaciones del teclado)
  • Cifrar datos del dispositivo y exigir un rescate
  • Enviar spam

Los servidores C&C son:

  • sositehuypidarasi[.]com
  • ktosdelaetskrintotpidor[.]com

Un aspecto interesante es que utilizó Twitter como canal de comunicación alternativo (al cual recurrir) para recuperar otro servidor C&C. La cuenta de Twitter utilizada por la muestra que analizamos es @JohnesTrader, pero esta cuenta ya había sido suspendida al momento de realizar el análisis.

El malware contiene una lista de aplicaciones apuntadas en el dispositivo Android. Esta lista parece ser más larga de lo que era cuando investigadores de Sophos lo analizaron. Tenía como blanco de ataque a varias aplicaciones bancarias de distintas partes del mundo, como son algunas apps para compras online como Amazon e eBay, así como aplicaciones de criptominería. Hemos incluido la lista completa en el Apéndice B.

MSIL/ClipBanker.IH

El ultimo componente en ser distribuido durante la campaña cubierta en este artículo es un ejecutable Windows .NET, el cual fue distribuido en marzo de 2019. La mayoría de las versiones que observamos fueron empaquetadas con ConfuserEx v1.0.0. Al igual que con la variante de ClipBanker descrita anteriormente, este componente también toma el control del portapapeles. Apunta a un amplio rango de criptomonedas, así como a las ofertas comerciales de Steam. Además, utiliza el servicio IP Logger para exfiltrar claves privadas del formato de importación de billetera (WIF, por sus siglas en inglés) de Bitcoin.

Mecanismo defensivo

Además de beneficiarse de mecanismos de anti debugging, anti dumping y anti tampering de ConfuserEx, este malware implementa rutinas de detección en busca de productos de seguridad y máquinas virtuales.

Para corroborar si está corriendo en una máquina virtual, utiliza WMI (WMIC) de Windows para consultar información sobre el BIOS, específicamente

wmic bios

Luego parsea la salida del comando en busca de estas palabras clave específicas: VBOX, VirtualBox, XEN, qemu, bochs, VM.

Para detectar productos de seguridad, el malware envía una consulta de Windows Management Instrumentation (WMI) a Windows Security Center utilizando la API ManagementObjectSearcher, como se puede apreciar en la Figura 10. Una vez decodificado en base64, la llamada es:

ManagementObjectSearcher(‘root\\SecurityCenter2’, ‘SELECT * FROM AntivirusProduct’)

Figura 10 – Rutina de detección de productos de seguridad

Además, el malware comprueba si CryptoClipWatcher, una herramienta de defensa diseñada para proteger a usuarios del secuestro del portapapeles, está corriendo, y en caso de que sí lo esté, suspende los hilos de este proceso ­-deshabilitando la protección.

Persistencia

En la versión que analizamos, el malware se copia a sí mismo en %APPDATA%\google\updater.exe y establece la bandera oculta en el directorio de google. Luego, modifica el valor de Software\Microsoft\Windows NT\CurrentVersion\Winlogon\shell en el Registro de Windows y añade la ruta de updater.exe. Por esta razón, cada vez que un usuario se registra, el malware es ejecutado.

Comportamiento malicioso

Al igual que con el ClipBanker que analizamos previamente, este malware .NET monitorea el contenido del portapapeles, en busca de direcciones de criptomonedas –y si se encuentra una, es reemplazada con una de las direcciones de los operadores. La Figura 11 despliega una lista de las direcciones apuntadas basadas en una enumeración encontrada dentro del código.

Figura 11 – Símbolo de enumeración para tipos de direcciones que soporta

Para cada uno de estos tipos de direcciones existe una expresión regular asociada. El valor STEAM_URL es para tomar control del sistema de oferta comercial de Steam, tal como podemos ver en las expresiones utilizadas para detectarla en el portapapeles:

\b(https:\/\/|http:\/\/|)steamcommunity\.com\/tradeoffer\/new\/\?partner=[0-9]+&token=[a-zA-Z0-9]+\b

Canal de exfiltración

Además de reemplazar direcciones en el portapapeles, este malware .NET también apunta a claves privadas WIF de Bitcoin, billeteras de Bitcoin Core y billeteras de Electrum Bitcoin. El malware utiliza iplogger.org como canal de exfiltración para capturar la llave privada WIF. Para hacerlo, los operadores agregan los datos de la llave privada de archivos en el encabezado del USer-Agent HTTP, como se muestra en la Figura 12.

Figura 12 – consola de IP Logger con datos exfiltrados

En cuanto a la exfiltración de las billeteras, los operadores no utilizaron iplogger.org. La limitación de 255 caracteres en el campo User-Agent desplegado en la interfaz web de IP Logger podría explicar por qué optaron por otro método. En la muestra que analizamos, el otro servidor de exfiltración fue almacenado en la variable de entorno DiscordWebHook. Lo que resulta desconcertante es que esta variable de entorno nunca se establece en ninguna parte del código. Esto parece sugerir que el malware aún está en desarrollo y que esta variable es establecida en la máquina de pruebas de los operadores.

Existe otro indicador que refuerza la idea de que el malware aún está en etapa de desarrollo. Y es que el binario incluye dos URL de iplogger.org y ambas son consultadas tras la exfiltración. En la solicitud a una de estas URLs el valor en el campo Referer es antepuesto por “DEV /”. También encontramos una versión del malware que no fue empaquetada con ConfuserEx y el capturador de esta URL es denominado DevFeedbackUrl. Basados en el nombre de la variable de entorno, creemos que los operadores están planeando utilizar el servicio legítimo Discord y abusar de su sistema webhook para exfiltrar billeteras de criptomonedas.

Conclusión

Esta campaña es un buen ejemplo de cómo se puede abusar de un servicio de publicidad legítimo para distribuir malware. Mientras que esta campaña específicamente apunta a organizaciones rusas, no nos sorprendería que este modelo fuese utilizado entorno a otro servicio de publicidad fuera de Rusia. Para evitar ser víctima de este tipo de estafas, los usuarios siempre deben asegurarse de que la fuente desde la cual descargan el programa es conocida y que se trata de un distribuidor de programas con cierta reputación.

Indicadores de Compromiso (IoCs)

Lista de muestras

SHA-1FilenameESET Detection Name
79B6EC126818A396BFF8AD438DB46EBF8D1715A1hashfish.exeWin32/ClipBanker.HM
11434828915749E591254BA9F52669ADE580E5A6hashfish.apk Android/Spy.Banker.KW
BC3EE8C27E72CCE9DB4E2F3901B96E32C8FC5088hashfish.exeWin32/ClipBanker.HM
CAF8ED9101D822B593F5AF8EDCC452DD9183EB1Dbtctradebot.exe Win32/ClipBanker.HM
B2A1A7B3D4A9AED983B39B28305DD19C8B0B2C20blanki.exeWin32/ClipBanker.HM
1783F715F41A32DAC0BAFBBDF70363EC24AC2E37blanki.exeWin32/Spy.Buhtrap.AE
291773D831E7DEE5D2E64B2D985DBD24371D2774blanki.exeWin32/Spy.Buhtrap.AE
4ADD8DCF883B1DFC50F9257302D19442F6639AE3masterblankov24.exeWin32/Spy.Buhtrap.AG
790ADB5AA4221D60590655050D0FBEB6AC634A20masterblankov24.exeWin32/Filecoder.Buhtrap.A
E72FAC43FF80BC0B7D39EEB545E6732DCBADBE22vseblanki24.exeWin32/Filecoder.Buhtrap.B
B45A6F02891AA4D7F80520C0A2777E1A5F527C4Dvseblanki24.exeWin32/Filecoder.Buhtrap.C
0C1665183FF1E4496F84E616EF377A5B88C0AB56vseblanki24.exeWin32/Filecoder.Buhtrap.C
81A89F5597693CA85D21CD440E5EEAF6DE3A22E6vseblanki24.exe Win32/Spy.RTM.W
FAF3F379EB7EB969880AB044003537C3FB92464Cvseblanki24.exeWin32/Spy.RTM.W
81C7A225F4CF9FE117B02B13A0A1112C8FB3F87Emaster-blankov24.exeWin32/Filecoder.Buhtrap.B
ED2BED87186B9E117576D861B5386447B83691F2blanki.exeWin32/Filecoder.Buhtrap.B
6C2676301A6630DA2A3A56ACC12D66E0D65BCF85blanki.exeWin32/Filecoder.Buhtrap.B
4B8A445C9F4A8EA24F42B9F80EA9A5E7E82725EFmir_vseh_blankov_24.exe Win32/Filecoder.Buhtrap.B
A390D13AFBEFD352D2351172301F672FCA2A73E1master_blankov_300.exe Win32/Filecoder.Buhtrap.B
1282711DED9DB140EBCED7B2872121EE18595C9Bsbornik_dokumentov.exeWin32/Filecoder.Buhtrap.B
372B4458D274A6085D3D52BA9BE4E0F3E84F9623sbornik_dokumentov.exe MSIL/ClipBanker.IH
9DE1F602195F6109464B1A7DEAA2913D2C803362nike.exeMSIL/ClipBanker.IH

Lista de servidores

DomainIP AddressMalware family
sositehuypidarasi[.]com212.227.20[.]93, 87.106.18[.]146Android/Spy.Banker
ktosdelaetskrintotpidor[.]com87.106.18[.]146Android/Spy.Banker
94.100.18[.]67Win32/RTM
stat-counter-7-1[.]bit176.223.165[.]112Win32/RTM
stat-counter-7-2[.]bit95.211.214[.]14Win32/RTM
blanki-shabloni24[.]ru37.1.221[.]248, 5.45.71[.]239
Superjob[.]icu185.248.103[.]74Win32/Buhtrap
Medialeaks[.]icu185.248.103[.]74Win32/Buhtrap
icq.chatovod[.]info185.142.236[.]220Win32/Buhtrap
womens-history[.]me185.142.236[.]242Win32/Buhtrap

Técnicas de MITRE ATT&CK

Win32/Filecoder.Buhtrap

TacticIDNameDescription
ExecutionT1204User executionThe user must run the executable
Defense evasionT1116Code signingSome of the samples are signed
T1140Deobfuscate/Decode Files or InformationThe strings are encrypted using RC4
DiscoveryT1083File and Directory DiscoveryFiles and Directories are discovered for encryption
T1135Network Share DiscoveryThe network shares are discovered to find more files to encrypt

Win32/ClipBanker

TacticIDNameDescription
ExecutionT1204User executionThe user must run the executable
Defense evasionT1116Code signingSome of the samples are signed
T1140Deobfuscate/Decode Files or InformationThe cryptocurrency addresses are encrypted using RC4

MSIL/ClipBanker

TacticIDNameDescription
ExecutionT1204User executionThe user must run the executable
PersistenceT1004Winlogon Helper DLLPersistence is achieved by altering the Winlogon\shell key
Defense evasionT1116Code signingSome of the samples are signed
T1140Deobfuscate/Decode Files or InformationThe strings are encrypted using a static XOR key
T1158Hidden Files and DirectoriesThe executable used for persistence is in a newly created hidden directory
DiscoveryT1083File and Directory DiscoveryLook for specific folders to find wallet application storage
CollectionT1115Clipboard DataBitcoin WIF private key is stolen from the clipboard data
ExfiltrationT1020Automated ExfiltrationCrypto wallet software’s storage is automatically exfiltrated
T1041Exfiltration Over Command and Control ChannelExfiltrated data is sent to a server
Command and ControlT1102Web ServiceUses IP Logger legitimate service to exfiltrate Bitcoin WIF private keys
T1043Commonly Used PortCommunicates with a server using HTTPS
T1071Standard Application Layer ProtocolCommunicates with a server using HTTPS

Downloader Buhtrap

TacticIDNameDescription
ExecutionT1204User executionThe user must run the executable
T1106Execution through APIExecutes additional malware through CreateProcess
Defense evasionT1116Code signingSome of the samples are signed
Credential AccessT1056Input CaptureBackdoor contains a keylogger
T1111Two-Factor Authentication InterceptionBackdoor actively searches for a connected smart card
CollectionT1115Clipboard DataBackdoor logs clipboard content
Exfiltration T1020Automated ExfiltrationLog files are automatically exfiltrated
T1022Data EncryptedData sent to C&C is encrypted
T1041Exfiltration Over Command and Control ChannelExfiltrated data is sent to a server
Command and ControlT1043Commonly Used PortCommunicates with a server using HTTPS
T1071Standard Application Layer ProtocolHTTPS is used
T1105Remote File CopyBackdoor can download and execute file from C&C server

Apéndice A: Ejemplo de nota de rescate

Versión original

Versión traducida

Apéndice B: Aplicaciones apuntadas por Anubis

Discusión