A equipe de Threat Intelligence da Tempest vem, desde dezembro de 2018, monitorando o comportamento de uma ameaça focada em fraudar correntistas de grandes bancos brasileiros. O ataque se baseia em sobrescrever a tela da vítima com uma camada falsa na qual o fraudador solicita todos os dados necessários para executar transações fraudulentas.
Quando a vítima acessa o Internet Banking em um momento no qual o fraudador está online, este pode enviar uma tela que sobrepõe a interface original do site sob o falso pretexto de que é necessário instalar um módulo de segurança. Nessa tela, o fraudador pode requisitar quaisquer dados necessários para a realização de uma transação fraudulenta em nome da vítima, geralmente o pagamento de boletos.
Há indícios que ligam essa ameaça a uma campanha de phishing massiva envolvendo mais de 120 mil vítimas na virada de 2018 para 2019 e que foi documentada pela Tempest. Entretanto, diferentemente daquela campanha, esta possui mecanismos de ocultação distintos e usa um aplicativo legítimo para Windows possivelmente adulterado para carregar o malware.
Elementos-chave
O processo de infecção se baseia em 4 pequenos programas e explora um mecanismo de administração nativo do Windows.
O malware é ativado usando o software WinGUp, ferramenta para a atualização de software.
O atacante possui um painel de controle que coleta dados de computadores infectados e de outros operadores da ameaça cujos registros apontam para 2800 vítimas.
A ameaça usa os mesmos servidores de envio de mensagens identificados na campanha de phishing que fez 120 mil vítimas há poucos meses.
Quatro Scripts
O processo de infecção se inicia em uma elementar mensagem de phishing que visa persuadir o usuário a clicar em um link. Assim que o usuário clica no link, ele faz o download e ativa um arquivo que inicia a execução de quatro scripts em cadeia, concebidos para fragmentar o ataque e torná-lo silencioso para as ferramentas de segurança.
O primeiro script tem origem no arquivo original, é gerado em VBScript e armazenado na pasta C:userspublic do computador da vítima. Este componente possui duas funções: a primeira é enviar uma requisição ao servidor do fraudador para que este contabilize uma nova vítima infectada - outro "contador" deste tipo foi encontrado.
A segunda função desse script é executar outro VBScript a partir de um servidor na Internet controlado pelo fraudador. Entretanto, essa requisição só é respondida pelo servidor se for executada em um formato específico. Ao limitar o formato de comunicação o fraudador insere mais uma camada de ocultação à ameaça, pois sua parte server só irá se comunicar com quem fizer a solicitação no formato correto.
Caso a requisição seja feita fora do formato esperado, o servidor emite uma resposta indicando que a requisição foi bem-sucedida - mas não devolve conteúdo algum. Entretanto, se a comunicação se dá no formato correto, o servidor envia um novo script.
Este novo script explora o Windows Management Instrumentation Command-line (WMIC) para fazer o download de outro código malicioso em JScript.
O Windows Management Instrumentation (WMI) é uma tecnologia desenvolvida pela Microsoft disponível desde as versões 98 e NT4 do Windows. Ela permite a execução local e remota de diversas atividades administrativas como obter e alterar informações do registro, ler o sistema de arquivos, executar arquivos, dentre outras. O WMIC é a versão do WMI que suporta a execução de atividades via linha de comando. Já foram documentados diversos ataques que se baseiam no abuso do WMI ou do WMIC.
O código em JScript cria e executa um novo script em PowerShell, o qual faz o download de um arquivo de extensão BMP (lcdjxzyuuh.bmp) com o cabeçalho indeterminado o que, à primeira vista, pode parecer um arquivo danificado.
Após o download, o mesmo script executa a cifra XOR em cada byte do arquivo de modo a decifrá-lo. O uso de XOR em ameaças é comum, uma vez que se trata de uma cifra relativamente simples e que não consome muito processamento do computador.
Assim que o arquivo é decifrado, fica evidente que ele se trata de um arquivo ZIP.
Por fim, o script descompacta o malware, que consiste em três arquivos AIRfH.exe, gup.xml e libcurl.dll.
GUP
A ativação da ameaça se dá por meio do uso do WinGUp (Generic Updater running under Windows environment). Segundo o seu desenvolvedor, Don HO, a ferramenta foi imaginada como um módulo de atualização de seu editor de código fonte, o Notepad++. Entretanto, em meio à sua concepção, HO percebeu que o WinGUp poderia ser usado para a atualização de qualquer aplicativo para Windows; assim ele disponibilizou a aplicação para qualquer desenvolvedor em sua página do GitHub.
O WinGUp se baseia em um arquivo XML por meio do qual o desenvolvedor insere os parâmetros necessários para a checagem da versão atual de seu sistema e determina as URLs dos servidores nos quais é possível buscar novas versões do aplicativo. Estes servidores podem armazenar dados sobre quais computadores estão com a versão atualizada do software. Também fica a cargo do WinGUp a instalação de novos binários e a remoção de versões antigas.
Foi identificado pela Tempest que o WinGUp está sendo usado pela ameaça exclusivamente para ativar o malware. Também foi possível comprovar pela checagem do hash dos arquivos que a versão da ferramenta que é instalada nos computadores das vítimas é diferente dos releases oficiais, o que pode ser uma evidência de que o WinGup foi adulterado ao fazer parte da ameaça.
Com a ameaça ativada, o fraudador receberá uma notificação assim que a vítima acessar seu Internet Banking.
Operação da ameaça
A ameaça foi concebida para operar como um RAT - Remote Access Tool ou Remote Access Trojan. Isso significa que, por mais que seu processo de infecção seja automatizado, ela depende que o atacante opere manualmente a console do malware durante o momento da fraude.
Os pesquisadores da Tempest tiveram acesso ao painel usado para contabilizar dados de vítimas e operadores. Há um contador de downloads, além do contador de infectados mencionado anteriormente e estas interfaces também informam a data e hora da execução de comandos, o servidor de comando e controle usado em cada operação, o endereço IP do fraudador que operou o RAT, o nome do computador do operador, o endereço IP da vítima criptografado e a instituição financeira afetada.
A opção por desenvolver o sistema de modo a coletar esse volume de dados de vítimas e operadores demonstra que não se trata de uma plataforma concebida somente para o uso de um fraudador, mas sim para coordenar uma operação mais complexa e que demanda um certo nível de prestação de contas entre os operadores e o administrador do sistema.
Até o fechamento deste artigo, somente um dos arquivos da ameaça era apontado como malicioso por uma dentre as 69 engines do Virus Total e o painel contabilizava 2800 vítimas que são correntistas de nove instituições financeiras. Entretanto, essa ameaça usa 10 servidores de envio de phishing que estão por trás de uma campanha que afetou mais de 120 mil vítimas no Brasil a qual foi identificada pela Tempest e noticiada pela imprensa especializada.
É frequentemente recomendado que as organizações submetam seus funcionários a treinamentos sobre como identificar mensagens maliciosas. Programas educativos desse tipo também são úteis para proteger as pessoas no ambiente doméstico, além torná-las propagadoras das formas de proteção entre seus círculos sociais.
Também é importante implementar mecanismos de controle que impeçam que os usuários consigam ativar novos softwares e serviços em seus computadores, bem como refinar o monitoramento de ferramentas de perímetro, de prevenção à fuga da informação e os sistemas operacionais de modo a identificar atividades suspeitas.