SOC Prime Bias: Crítico

12 Jan 2026 14:55 UTC

Mudda Água, o Desvio para Rust: Por Dentro do Implant RogueDourado

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon Seguir
Mudda Água, o Desvio para Rust: Por Dentro do Implant RogueDourado
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumo

MuddyWater lançou uma campanha de spear-phishing direcionada a organizações diplomáticas, marítimas, financeiras e de telecomunicações no Oriente Médio. Os atacantes confiaram em documentos Word armados com macros embutidas para implantar RustyWater, um implante baseado em Rust. Uma vez instalado, o malware persiste através de uma chave de registro Run, se comunica com o comando e controle via HTTP e injeta código no explorer.exe para se misturar com a atividade normal do usuário. O implante incorpora salvaguardas contra análise e suporta funcionalidade modular pós-compromisso para estender o controle do atacante.

Investigação

A equipe TRIAD da CloudSEK analisou o documento malicioso, recuperou a carga útil codificada em hex e identificou o executável Rust reddit.exe. A inspeção estática mostrou o uso da biblioteca reqwest para C2 baseado em HTTP, um mecanismo de manipulador de exceções vetorizadas para anti-depuração e persistência via o caminho de registro CurrentUser Run. Testes dinâmicos confirmaram a injeção de processo no explorer.exe e comportamento C2 assíncrono com tempo de retorno aleatório. A investigação compilou indicadores chave, incluindo hashes, artefatos de registro e os domínios maliciosos usados para comunicações.

Mitigação

Observe modificações suspeitas em HKCUSoftwareMicrosoftWindowsCurrentVersionRun, especialmente entradas que apontam para binários armazenados em ProgramData. Detecte cadeias de execução impulsionadas por macro onde o Office aciona cmd.exe via WScript.Shell. Adicione detecções de rede para padrões de tráfego HTTP consistentes com codificação JSON → Base64 → XOR e para beaconing com jitter aleatório. Fortaleça os controles de e-mail para bloquear ou colocar em quarentena anexos do Word com macro habilitada de remetentes desconhecidos ou não confiáveis.

Resposta

Se a atividade do RustyWater for detectada, isole o endpoint e adquira uma imagem de memória para apoiar a forense focada em injeção. Remova a persistência da chave Run maliciosa e exclua quaisquer arquivos soltos em ProgramData. Bloqueie os domínios e IPs C2 identificados nos controles de perímetro. Expanda a caça para identificar atividade macra relacionada e artefatos de injeção explorer.exe em todo o ambiente para garantir o completo isolamento.

Fluxo de ataque

Execução de Simulação

Pré-requisito: O Check de Pré-voo de Telemetria & Baseline deve ter sido aprovado.

Justificativa: Esta seção detalha a execução precisa da técnica do adversário (TTP) projetada para acionar a regra de detecção. Os comandos e a narrativa refletem diretamente os TTPs identificados e visam gerar a telemetria exata esperada pela lógica de detecção.

  • Narrativa do Ataque & Comandos:
    Um operador APT recebe um e-mail de spear-phishing com um anexo do Office com macro maliciosa habilitada. Ao abrir, a macro solta dois arquivos de carga útil—Cybersecurity.doc and CertificationKit.ini—no ProgramData diretório para escondê-los em um local confiável por muitas aplicações. A macro utiliza PowerShell para gravar os arquivos, o que aciona eventos de criação de arquivo do Sysmon que a regra de detecção monitora.

  • Script de Teste de Regressão:

    # -------------------------------------------------
    # Simulação de queda de arquivo APT do MuddyWater (Windows)
    # -------------------------------------------------
    $progData = $Env:ProgramData
    
    # Definir conteúdo do payload (dados fictícios para teste)
    $docContent = "Este é um documento de Cybersegurança fictício usado para teste de detecção."
    $iniContent = "[Settings]`nKey=Value`n"
    
    # Criar Cybersecurity.doc
    $docPath = Join-Path -Path $progData -ChildPath "Cybersecurity.doc"
    $docContent | Out-File -FilePath $docPath -Encoding UTF8
    
    # Criar CertificationKit.ini
    $iniPath = Join-Path -Path $progData -ChildPath "CertificationKit.ini"
    $iniContent | Out-File -FilePath $iniPath -Encoding UTF8
    
    Write-Host "Arquivos de simulação do MuddyWater criados:"
    Write-Host "`t$docPath"
    Write-Host "`t$iniPath"
    # -------------------------------------------------
  • Comandos de Limpeza:

    # Remover artefatos de simulação
    Remove-Item -Path "$Env:ProgramDataCybersecurity.doc" -ErrorAction SilentlyContinue
    Remove-Item -Path "$Env:ProgramDataCertificationKit.ini" -ErrorAction SilentlyContinue
    Write-Host "Arquivos de simulação removidos."