Analisando SHEET#CREEP: O Malware Retorna com Nova Obfuscação de Configuração
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumo
Uma operação de espionagem ativa conhecida como SHEETCREEP depende de um trojan de acesso remoto em C# que utiliza a API do Google Sheets para comando e controle. Os atacantes entregam o malware através de um atrativo de phishing em ISO com tema diplomático, após o qual o RAT estabelece persistência e executa comandos por meio de um espaço de execução do PowerShell em processo. Amostras recentes mostram que os operadores reforçaram o malware introduzindo ofuscação baseada em XOR para dados de configuração.
Investigação
A equipe de Pesquisa de Ameaças da Securonix descobriu a campanha extraindo credenciais de conta de serviço do Google Cloud incorporadas do binário RAT. Após autenticar na planilha de comando e controle ao vivo, os pesquisadores identificaram 91 abas de vítimas ativas, incluindo sandboxes, ambientes de pesquisa, e uma vítima de alta confiança localizada no Paquistão. Sua análise também mostrou que a proteção de configuração do malware evoluiu por meio de uma abordagem de ofuscação atualizada.
Mitigação
As organizações devem evitar abrir anexos não solicitados, especialmente arquivos ISO que contêm arquivos de atalho LNK. Os defensores devem monitorar o %LOCALAPPDATA%MicrosoftVault diretório para executáveis suspeitos e revisar tarefas agendadas em busca de entradas enganosas ou inesperadas. A visibilidade robusta do endpoint através de ferramentas como Sysmon e AMSI também pode ajudar a detectar atividades do PowerShell em processo ligadas a esse malware.
Resposta
Se tráfego HTTPS incomum para serviços de API do Google for observado a partir de processos não-browser, o sistema afetado deve ser isolado imediatamente. As equipes de segurança devem inspecionar tarefas agendadas em busca de itens não autorizados, como WindowsVaultSyncService. Deve-se também realizar uma revisão forense de %LOCALAPPDATA%MicrosoftVault para identificar binários ocultos ou atribuídos ao sistema associados à intrusão.
Fluxo de Ataque
Detecções
Uso Possível de Escolha para Execução Atrasada (via linha de comando)
Ver
Imagem de Disco Óptico VHDMP Foi Montada (via VHDMP)
Ver
Tarefa Agendada Suspeita (via audit)
Ver
Possível Atividade de Utilitário de Comando e Controle do Google (via proxy)
Ver
IOCs (HashSha256) para detectar: Analisando SHEET#CREEP: SHEETCREEP está ativo novamente com ofuscação de configuração diferente
Ver
IOCs (SourceIP) para detectar: Analisando SHEET#CREEP: SHEETCREEP está ativo novamente com ofuscação de configuração diferente
Ver
IOCs (DestinationIP) para detectar: Analisando SHEET#CREEP: SHEETCREEP está ativo novamente com ofuscação de configuração diferente
Ver
Detecção de Comunicação C2 do Sheet#CREEP via API do Google Sheets [Firewall]
Ver
Detectar Uso de Mutex do Malware SHEET#CREEP [Windows Sysmon]
Ver
Detecção de Padrões de Persistência e Execução do SHEETCREEP [Criação de Processo no Windows]
Ver
Execução de Simulação
Pré-requisito: O Check de Pré-voo de Telemetria & Baseline 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 um diagnóstico incorreto.
-
Narrativa e Comandos de Ataque: O adversário pretende estabelecer persistência e executar um trojan de acesso remoto (RAT) usando a técnica SHEETCREEP. Primeiro, eles simulam a execução inicial via um arquivo LNK malicioso que chama
cmd.exepara iniciar um executável suspeito específico. Em seguida, eles estabelecem persistência criando uma tarefa agendada nomeadaWindowsVaultSyncServicecom uma descrição enganosa para se misturar com as atualizações do sistema. Finalmente, eles implantam a cargavaultsvc.exenaC:UsersAppDataLocalMicrosoftVaultdiretório e executam para acionar a parte final da lógica de detecção. -
Script de Teste de Regressão:
# Script de Simulação SHEETCREEP # Nota: Este script deve ser executado com privilégios administrativos para criar tarefas agendadas. $targetDir = "$env:LOCALAPPDATAMicrosoftVault" $payloadName = "vaultsvc.exe" $payloadPath = "$targetDir$payloadName" $taskName = "WindowsVaultSyncService" $taskDesc = "Tarefa de Atualização de Núcleo do Windows Edge Máquina Discord Atualização" Write-Host "[+] Iniciando Simulação SHEETCREEP..." -ForegroundColor Cyan # 1. Simular Seleção 1: Execução CMD com string específica Write-Host "[+] Simulando Seleção 1: Padrão de comando CMD..." -ForegroundColor Yellow Start-Process cmd.exe -ArgumentList '/c start "" "Document_11052026-03578240540350-93.exe"' -WindowStyle Hidden # 2. Simular Seleção 2: Criação de Tarefa Agendada Write-Host "[+] Simulando Seleção 2: Criação de Tarefa Agendada..." -ForegroundColor Yellow $action = New-ScheduledTaskAction -Execute "cmd.exe" -Argument "/c echo Persistência Estabelecida" $trigger = New-ScheduledTaskTrigger -AtLogOn Register-ScheduledTask -Action $action -Trigger $trigger -TaskName $taskName -Description $taskDesc -Force # 3. Simular Seleção 3: Colocação e execução de carga útil Write-Host "[+] Simulando Seleção 3: Implantação e execução de carga útil..." -ForegroundColor Yellow if (!(Test-Path $targetDir)) { New-Item -Path $targetDir -ItemType Directory -Force | Out-Null } # Criar um arquivo binário fictício para imitar o RAT New-Item -Path $payloadPath -ItemType File -Force | Out-Null # Executar a carga fictícia Start-Process -FilePath $payloadPath -WindowStyle Hidden -ErrorAction SilentlyContinue Write-Host "[+] Comandos de simulação enviados. Verifique SEIM para alertas." -ForegroundColor Green -
Comandos de Limpeza:
# Limpeza da Simulação SHEETCREEP $targetDir = "$env:LOCALAPPDATAMicrosoftVault" $payloadPath = "$targetDirvaultsvc.exe" $taskName = "WindowsVaultSyncService" Write-Host "[+] Limpando artefatos de simulação..." -ForegroundColor Cyan # Remover Tarefa Agendada Unregister-ScheduledTask -TaskName $taskName -Confirm:$false -ErrorAction SilentlyContinue # Remover Carga e Diretório if (Test-Path $payloadPath) { Remove-Item $payloadPath -Force } if (Test-Path $targetDir) { Remove-Item $targetDir -Recurse -Force } Write-Host "[+] Limpeza concluída." -ForegroundColor Green