Fonte original: Microsoft Security Threat Intelligence

Nos últimos anos, o mercado de criptomoedas expandiu-se consideravelmente, ganhando o interesse de investidores e atores de ameaças. A própria criptomoeda tem sido usada por cibercriminosos para as suas operações, nomeadamente para pagamento de resgate em ataques de ransomware, mas também observámos agentes de ameaças que visam diretamente organizações dentro da indústria de criptomoedas para obter ganhos financeiros. Os ataques direcionados a esse mercado assumiram muitas formas, incluindo fraude, exploração de vulnerabilidades, aplicativos falsos e uso de ladrões de informações, à medida que os invasores tentam obter fundos de criptomoeda.

Também estamos vendo ataques mais complexos em que o agente da ameaça demonstra grande conhecimento e preparação, tomando medidas para ganhar a confiança do alvo antes de implantar cargas úteis. Por exemplo, a Microsoft investigou recentemente um ataque em que o agente da ameaça, rastreado como DEV-0139, aproveitou os grupos de bate-papo do Telegram para atingir empresas de investimento em criptomoedas. DEV-0139 juntou-se a grupos do Telegram usados ​​para facilitar a comunicação entre clientes VIP e plataformas de troca de criptomoedas e identificou seu alvo entre os membros. O ator da ameaça se passou por representante de outra empresa de investimento em criptomoedas e, em outubro de 2022, convidou o alvo para um grupo de bate-papo diferente e fingiu pedir feedback sobre a estrutura de taxas usada pelas plataformas de troca de criptomoedas. O ator da ameaça tinha um conhecimento mais amplo desta parte específica da indústria, indicando que estava bem preparado e ciente do desafio atual que as empresas visadas podem enfrentar.

Depois de ganhar a confiança do alvo, DEV-0139 enviou um arquivo Excel armado com o nome OKX Binance & Huobi VIP fee comparision.xls que continha várias tabelas sobre estruturas de taxas entre empresas de troca de criptomoedas. Os dados do documento provavelmente eram precisos para aumentar sua credibilidade. Este arquivo Excel transformado em arma inicia a seguinte série de atividades:

  1. Uma macro maliciosa no arquivo Excel transformado em arma abusa do UserForm do VBA para ofuscar o código e recuperar alguns dados.

  2. A macro maliciosa descarta outra planilha do Excel incorporada no formulário e a executa em modo invisível. A referida planilha Excel é codificada em base64 e colocada em C:\ProgramData\Microsoft Media\ com o nome VSDB688.tmp

  3. O arquivo VSDB688.tmp baixa um arquivo PNG contendo três executáveis: um arquivo legítimo do Windows chamado logagent.exe, uma versão maliciosa da DLL wsock32.dll e um backdoor codificado em XOR.

  4. O arquivo logagent.exe é usado para carregar o wsock32.dll malicioso, que atua como um proxy DLL para o wsock32.dll legítimo. O arquivo DLL malicioso é usado para carregar e descriptografar o backdoor codificado em XOR que permite que o agente da ameaça acesse remotamente o sistema infectado.

Figura 1. Visão geral do ataque

Investigações adicionais por meio de nossa telemetria levaram à descoberta de outro arquivo que usa a mesma técnica de proxy de DLL. Mas, em vez de um arquivo Excel malicioso, ele é entregue em um pacote MSI para um aplicativo CryptoDashboardV2, datado de junho de 2022. Isso pode sugerir que outras campanhas relacionadas também são executadas pelo mesmo agente da ameaça, usando as mesmas técnicas.

Nesta postagem do blog, apresentaremos os detalhes descobertos em nossa investigação do ataque contra uma empresa de investimento em criptomoeda, bem como a análise de arquivos relacionados, para ajudar organizações semelhantes a compreender esse tipo de ameaça e a se preparar para possíveis ataques. Pesquisadores da Volexity também publicaram recentemente suas descobertas sobre esse ataque.

Tal como acontece com qualquer atividade observada de um ator estatal, a Microsoft notifica diretamente os clientes que foram visados ​​ou comprometidos, fornecendo-lhes as informações de que necessitam para proteger as suas contas. A Microsoft usa designações DEV-#### como um nome temporário dado a um cluster de atividade de ameaça desconhecido, emergente ou em desenvolvimento, permitindo que o Microsoft Threat Intelligence Center (MSTIC) o rastreie como um conjunto exclusivo de informações até atingirmos um alto confiança sobre a origem ou identidade do ator por trás da atividade. Uma vez atendidos os critérios, um DEV é convertido em um ator nomeado.

Compromisso inicial

Para identificar os alvos, o ator da ameaça procurou membros de grupos de investimento em criptomoedas no Telegram. No ataque específico, DEV-0139 entrou em contato com seu alvo em 19 de outubro de 2022 criando um grupo secundário de Telegram com o nome <NameOfTheTargetedCompany> <> OKX Fee Adjustment e convidando três funcionários. O ator da ameaça criou perfis falsos usando detalhes de funcionários da empresa OKX. A captura de tela abaixo mostra as contas reais e as maliciosas de dois dos usuários presentes no grupo.

Figura 2. Perfis legítimos de funcionários de exchanges de criptomoedas (esquerda) e perfis falsos criados pelo autor da ameaça (direita)

É importante notar que o ator da ameaça parece ter um amplo conhecimento da indústria de criptomoedas e dos desafios que a empresa visada pode enfrentar. O ator da ameaça fez perguntas sobre as estruturas de taxas, que são as taxas usadas pelas plataformas de troca de criptografia para negociação. As taxas são um grande desafio para os fundos de investimento, pois representam um custo e devem ser otimizadas para minimizar o impacto nas margens e nos lucros. Como muitas outras empresas do setor, os maiores custos vêm das taxas cobradas pelas bolsas. Este é um tópico muito específico que demonstra como o ator da ameaça estava avançado e bem preparado antes de entrar em contato com o seu alvo.

Depois de ganhar a confiança do alvo, o autor da ameaça enviou ao alvo um documento Excel transformado em arma contendo mais detalhes sobre as taxas para parecer legítimo. O ator da ameaça usou a discussão sobre a estrutura de taxas como uma oportunidade para pedir ao alvo que abrisse o arquivo Excel transformado em arma e preenchesse suas informações.

Análise armada de arquivos Excel

O arquivo Excel armado, que tem o nome de arquivo OKX Binance & Huobi VIP fee comparision.xls (Sha256: abca3253c003af67113f83df2242a7078d5224870b619489015e4fde060acad0), é bem elaborado e contém informações legítimas sobre as taxas atuais usadas por algumas exchanges de criptografia. Os metadados extraídos mostraram que o arquivo foi criado pelo usuário Wolf:

Figura 3. As informações no arquivo Excel malicioso

A macro é ofuscada e abusa do UserForm (recurso usado para criar janelas) para armazenar dados e variáveis. Neste caso, o nome do UserForm é IFUZYDTTOP, e a macro recupera as informações com o seguinte código IFUZYDTTOP.MgQnQVGb.Caption onde MgQnQVGb é o nome do rótulo no UserForm e .caption permite recuperar as informações armazenadas no UserForm .

A tabela abaixo mostra os dados recuperados do UserForm:

A macro recupera alguns parâmetros do UserForm, bem como outro arquivo XLS armazenado em base64. O arquivo XLS é colocado no diretório C:\ProgramData\Microsoft Media como VSDB688.tmp e é executado no modo invisível.

Figura 4. O código desofuscado para carregar a planilha extraída no modo invisível.

Além disso, a planilha principal do arquivo Excel é protegida com a senha dragão para incentivar o alvo a habilitar as macros. A planilha fica então desprotegida após a instalação e execução do outro arquivo Excel armazenado em Base64. Provavelmente, isso é usado para enganar o usuário para ativar macros e não levantar suspeitas.

Planilha extraída

O segundo arquivo Excel, VSDB688.tmp (Sha256: a2d3c41e6812044573a939a51a22d659ec32aea00c26c1a2fdf7466f5c7e1ee9), é usado para recuperar um arquivo PNG que é analisado posteriormente pela macro para extrair dois arquivos executáveis ​​e o backdoor criptografado. Abaixo estão os metadados da segunda planilha:

Figura 5. O segundo arquivo está completamente vazio, mas contém a mesma técnica de abuso de UserForm do primeiro estágio.

A tabela abaixo mostra os dados desofuscados recuperados do UserForm:

A macro recupera alguns parâmetros do UserForm e baixa um arquivo PNG de hxxps://od.lk/d/d021d412be456a6f78a0052a1f0e3557dcfa14bf25f9d0f1d0d2d7dcdac86c73/Background.png. O arquivo não estava mais disponível no momento da análise, indicando que o autor da ameaça provavelmente o implantou apenas para este ataque específico.

Figura 6. Código desofuscado que mostra o download do arquivo Background.png

O PNG é então dividido em três partes e escrito em três arquivos diferentes: o arquivo legítimo logagent.exe, uma versão maliciosa do wsock32.dll e o backdoor criptografado XOR com o GUID (56762eb9-411c-4842-9530-9922c46ba2da). Os três arquivos são usados ​​para carregar a carga principal no sistema de destino.

Figura 7. Os três arquivos são gravados em C:\\ProgramData\SoftwareCache\ e executados usando a API CreateProcess

Análise do carregador

Dois dos três arquivos extraídos do arquivo PNG, logagent.exe e wsock32.dll, são usados ​​para carregar o backdoor criptografado XOR. As seções a seguir apresentam nossa análise aprofundada de ambos os arquivos.

Logagent.exe

Logagent.exe (Hash: 8400f2674892cdfff27b0dfe98a2a77673ce5e76b06438ac6110f0d768459942) é um aplicativo de sistema legítimo usado para registrar erros do Windows Media Player e enviar as informações para solução de problemas.

O arquivo contém os seguintes metadados, mas não está assinado:

O logagent.exe importa a função do wsock32.dll, que é abusado pelo agente da ameaça para carregar código malicioso no sistema de destino. Para acionar e executar o wsock32.dll malicioso, logagent.exe é executado com os seguintes argumentos recuperados anteriormente pela macro: 56762eb9-411c-4842-9530-9922c46ba2da /shadow. Ambos os argumentos são recuperados por wsock32.dll. O GUID 56762eb9-411c-4842-9530-9922c46ba2da é o nome do arquivo para o wsock32.dll malicioso carregar e /shadow é usado como uma chave XOR para descriptografá-lo. Ambos os parâmetros são necessários para o funcionamento do malware, dificultando potencialmente a análise isolada.

Figura 8. Execução da linha de comando do processo em execução logagent.exe

Wsock32.dll

O legítimo wsock32.dll é a API do Windows Socket usada por aplicativos para lidar com conexões de rede. Neste ataque, o agente da ameaça usou uma versão maliciosa do wsock32.dll para evitar a detecção. O wsock32.dll malicioso é carregado por logagent.exe por meio do carregamento lateral de DLL e usa proxy de DLL para chamar as funções legítimas do wsock32.dll real e evitar a detecção. O proxy de DLL é uma técnica de sequestro em que uma DLL maliciosa fica entre o aplicativo que chama a função exportada e uma DLL legítima que implementa essa função exportada. Neste ataque, o wsock32.dll malicioso atua como um proxy entre logagent.exe e o wsock32.dll legítimo.

É possível perceber que a DLL está encaminhando a chamada para as funções legítimas observando a tabela de endereços de importação:

Figura 9. Tabela de endereços de importação de

Figura 10. A recuperação de dados com o PeStudio revelou o nome do arquivo original do wsock32.dll malicioso.

Quando o wsock32.dll malicioso é carregado, ele primeiro recupera a linha de comando e verifica se o arquivo com o GUID como nome de arquivo está presente no mesmo diretório usando a API CreateFile para recuperar um identificador de arquivo.

Figura 11. Verificação da presença do arquivo 56762eb9-411c-4842-9530-9922c46ba2da para descriptografia

O wsock32.dll malicioso carrega e decodifica o implante final na memória com o nome GUID que é usado para acessar remotamente a máquina infectada.

Depois que o arquivo é carregado na memória, ele fornece acesso remoto ao autor da ameaça. No momento da análise, não foi possível recuperar a carga final. No entanto, identificamos outra variante desse ataque e recuperamos a carga útil, que será discutida na próxima seção. Os implantes identificados estavam se conectando novamente ao mesmo servidor de comando e controle (C2).

Ataque relacionado

Identificamos outro arquivo usando um mecanismo semelhante ao logagent.exe e entregando a mesma carga. O carregador é empacotado como um pacote MSI e contém um aplicativo chamado CryptoDashboardV2 (Hash: e5980e18319027f0c28cd2f581e75e755a0dace72f10748852ba5f63a0c99487). Depois de instalar o MSI, ele usa um aplicativo legítimo chamado tplink.exe para carregar a DLL maliciosa chamada DUser.dll e também usa proxy de DLL.

Figura 12. Detalhes de instalação do arquivo MSI

Depois que o pacote é instalado, ele executa e carrega a DLL usando o seguinte comando: C:\Users\user\AppData\Roaming\Dashboard_v2\TPLink.exe” 27E57D84-4310-4825-AB22-743C78B8F3AA /sven, onde visivelmente usa um GUID diferente.

Uma análise mais aprofundada do DUser.dll malicioso mostrou que seu nome original também é HijackingLib.dll, o mesmo que o malicioso wsock32.dll. Isso pode indicar o uso da mesma ferramenta para criar esses proxies DLL maliciosos. Abaixo estão os detalhes do arquivo DUser.dll:

Assim que a DLL estiver em execução, ela carrega e decodifica o implante na memória e começa a sinalizar o mesmo domínio. Nesse caso, o implante usa o nome GUID 27E57D84-4310-4825-AB22-743C78B8F3AA e a chave XOR /sven.

Análise de implante

A carga útil decodificada na memória pela DLL maliciosa é um implante usado pelo agente da ameaça para acessar remotamente a máquina comprometida. Conseguimos obter o da segunda variante que descobrimos. Abaixo estão os detalhes da carga útil:

Detalhes de detecção

Antivírus Microsoft Defender

O Microsoft Defender Antivirus detecta componentes de ameaça como o seguinte malware:

  • TrojanDownloader:O97M/Wolfic.A

  • TrojanDownloader:O97M/Wolfic.B

  • TrojanDownloader:O97M/Wolfic.C

  • TrojanDownloader:Win32/Wolfic.D

  • TrojanDownloader:Win32/Wolfic.E

  • Comportamento:Win32/WolficDownloader.A

  • Comportamento:Win32/WolficDownloader.B

Microsoft Defender para Ponto de Extremidade

Alertas com os seguintes títulos na central de segurança podem indicar atividades de ameaças na sua rede:

  • Um executável carregou uma dll inesperada

  • Sequestro de ordem de pesquisa de DLL

  • O malware ‘Wolfic’ foi evitado