
RustyWater representa o payload principal e a espinha dorsal de toda a operação adversarial nos ataques do grupo Static Kitten.
RustyWater representa o payload principal e a espinha dorsal de toda a operação adversarial nos ataques do grupo Static Kitten.
RustyWater é um executável compilado em Rust (disfarçado como reddit.exe com um ícone falso do Cloudflare) conhecido como RustyWater (ou vinculado ao Archer RAT/RUSTRIC), apresentando forte evasão de AV/EDR através de injeção de processo e persistência baseada no registro.
1-ANTI-ANÁLISE O Reddit.exe implementa um sistema abrangente de anti-análise de 8 camadas que sonda ativamente o ambiente de execução em busca de sinais de monitoramento, virtualização ou depuração. Cada camada atua como um filtro, garantindo que o payload só seja acionado em um alvo genuíno.
Camada 1: Verificação da Contagem de Núcleos da CPU
Inicialmente, o soldado RustyWater examina o ambiente para avaliar o poder da máquina em que se encontra. Ele se pergunta: Quantos núcleos este processador possui? Ambientes de análise, como sandboxes, geralmente têm recursos limitados e frequentemente possuem dois núcleos ou menos. Se o soldado descobrir que a máquina é fraca, ele imediatamente decide que o ambiente não é seguro e desaparece sem deixar rastros, desperdiçando todo o esforço dos analistas.
Na imagem fornecida, uma seção do código do programa Reddit.exe ilustra esse mecanismo. A seta aponta para a linha que verifica a "contagem de CPU", onde o programa examina o número de núcleos do processador. Se a contagem for dois ou menos, significa que o ambiente ao redor é suspeito e a execução é interrompida imediatamente.

Camada 2: Detecção de Artefatos de Máquina Virtual
Não convencido apenas pela verificação da CPU, o soldado investiga mais a fundo. Ele sabe que as máquinas virtuais deixam pegadas digitais específicas, como uma trilha de migalhas. Ele verifica a lista de processos em execução em busca de nomes familiares associados a softwares de virtualização: vmtoolsd.exe (VMware), vboxtray.exe (VirtualBox) e xenservice.exe (Xen). Ele também verifica a existência de arquivos de driver específicos no disco, como vmmouse.sys ou VBoxGuest.sys.
A lógica é simples: se uma máquina está executando ferramentas VMware, provavelmente é uma VM. Se é uma VM, provavelmente é um ambiente de análise. Se é um ambiente de análise, o soldado aborta a missão.

Camada 3: Varredura de Registro de Ferramentas de Análise
O soldado então se aventura no Registro do Windows, um vasto banco de dados de configurações do sistema. Ele sabe que os analistas de segurança frequentemente deixam suas ferramentas para trás, e essas ferramentas deixam artefatos. Ele procura por chaves de registro associadas a softwares de depuração e monitoramento, como Wireshark, Process Hacker, OllyDbg e IDA Pro. A presença de qualquer uma dessas chaves confirma que o ambiente é hostil, acionando um desligamento imediato.

Camada 4: Análise do Tamanho da RAM
Se o sistema relatar menos de 4 GB, o soldado suspeita de uma sandbox com recursos escassos e interrompe a execução. Essa verificação é uma maneira confiável de filtrar muitos sistemas de análise automatizados.

Camada 5: Detecção de Depurador
O soldado agora verifica seus arredores imediatos. Ele usa uma chamada de API do Windows simples, mas eficaz — IsDebuggerPresent — para determinar se está sendo executado sob o controle de um depurador. Um depurador é como um microscópio; se um estiver presente, significa que alguém está observando cada instrução do soldado. O soldado não atuará sob tal vigilância.

Camada 6: Verificação de Tempo de Atividade do Sistema
O próprio tempo se torna um fator. O soldado verifica há quanto tempo o sistema está em execução desde a última inicialização. Sandboxes e ambientes de análise geralmente são inicializados recentemente, pouco antes da execução de uma amostra. Se o tempo de atividade do sistema for inferior a 15 minutos, o soldado o marca como um ambiente suspeito e de curta duração e recua.

Camada 7: Análise do Nome de Usuário
O soldado então verifica a identidade do usuário. Ele compara o nome de usuário atual com uma lista negra de contas de análise comuns: "sandbox", "virus", "malware", "analysis", "vmware" e "test". Esses nomes de usuário são frequentemente usados em ambientes de análise isolados. Se o nome de usuário corresponder a qualquer entrada da lista, a missão é imediatamente abortada.

Camada 8: Verificação do Endereço MAC e Perfil de Hardware
Finalmente, o soldado examina a placa de rede da máquina. Ele verifica o endereço MAC em relação aos prefixos de fornecedor conhecidos usados por softwares de virtualização. Um endereço MAC começando com 00:0C:29 pertence à VMware, enquanto 08:00:27 pertence à VirtualBox. Ele também verifica perfis de hardware em busca de strings como "VMware" ou "VirtualBox" na descrição do sistema. Se algum deles for encontrado, o soldado sabe que está dentro de uma máquina virtual e desliga tudo.

O implante se disfarça habilmente como um componente legítimo do Windows Update, tornando-se menos suspeito para observadores casuais. O mecanismo de persistência inclui:
Tratamento de erros para problemas de permissão (fallback para HKCU se o acesso a HKLM falhar)
Validação de caminho para garantir que o executável exista no local especificado
Verificação de inicialização para confirmar que a entrada do registro foi criada com sucesso
Isso garante que, toda vez que o usuário fizer login, o Reddit.exe seja executado automaticamente com seus privilégios.

A capacidade final e mais sofisticada é a injeção de processo no explorer.exe, permitindo que o implante execute shellcode dentro de um processo confiável do sistema.
O Reddit.exe implementa uma técnica clássica, mas eficaz, de injeção de thread remota:
Descoberta de Processo: Varre os processos em execução para localizar explorer.exe e obter seu PID.
Aquisição de Handle: Abre o processo alvo com privilégios PROCESS_ALL_ACCESS.
Alocação de Memória: Usa VirtualAllocEx para alocar memória RWX (Leitura, Escrita, Execução) dentro do espaço de endereço do explorer.exe.