Análise da Campanha Blinder Tunnel: Táticas, Técnicas e Infraestrutura
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumo
Um agente de ameaça alinhado ao estado iraniano está conduzindo a campanha Blinder Tunnel contra organizações de infraestrutura crítica no Oriente Médio. Os atacantes dependem de engenharia social, se passando pelo Aeroporto de Dubai para distribuir projetos do Visual Studio armados. Esses projetos abusam de ferramentas de desenvolvedor confiáveis para implantar malware personalizado, incluindo ShelbyLoader V2 e utilitários de tunelamento Blackwood, enquanto utilizam infraestrutura de comando e controle baseada no GitHub.
Investigação
Pesquisadores da Unit 42 rastrearam a atividade desde a preparação da infraestrutura no final de 2025 até o alvo ativo observado em 2026. A investigação revelou uma cadeia de infecção em múltiplas etapas envolvendo o sequestro de AppDomainManager e carregamento de DLL malicioso. A análise de malware também revelou o uso de APIs do GitHub para comunicação C2 e resolvers de deposição, juntamente com nomeações e marcações temáticas inspiradas em Peaky Blinders.
Mitigação
As organizações devem fortalecer os ambientes de desenvolvimento e monitorar a execução suspeita de utilitários confiáveis, como msbuild.exe. Implementar controles rigorosos de carregamento de DLLs e detectar DLLs inesperadas ou não padronizadas dentro dos diretórios do sistema pode reduzir a exposição ao ataque. As equipes de segurança também devem implantar proteção avançada de endpoint capaz de detectar execução em memória e atividade não autorizada de PowerShell.
Resposta
Quando uma atividade suspeita é detectada, as organizações devem isolar endpoints afetados e iniciar a redefinição de credenciais. As equipes de segurança devem examinar a telemetria de detecção e resposta de endpoints (EDR) em busca de comportamento anômalo de processos, particularmente sinais de sequestro de processos legítimos. Os investigadores também devem revisar conexões não autorizadas a serviços em nuvem públicos, como o GitHub, para padrões de tráfego incomuns ou não padronizados.
Fluxo de Ataque
Detectores
Possíveis Pontos de Persistência [ASEPs – Software/NTUSER Hive] (via registro_evento)
Execução de Processos do Sistema a Partir de Caminhos Atípicos (via criação_de_processo)
Possível Download de Arquivo do Github Iniciado por Processo Incomum (via conexão_de_rede)
Comando e Controle Suspeito por Solicitação DNS de Domínio de Nível Superior (TLD) Incomum (via dns)
IOCs (HashSha256) para detectar: Análise da Campanha Blinder Tunnel
IOCs (SourceIP) para detectar: Análise da Campanha Blinder Tunnel
IOCs (DestinationIP) para detectar: Análise da Campanha Blinder Tunnel
Atividade Suspeita do Domínio de Phishing cloud.g-drive.cam [Google Cloud Platform]
Detecção de Processos Renomeados Levando ao Sequestro de AppDomainManager [Criação de Processo no Windows]
Detecção de Projeto Malicioso do Visual Studio Blinder Tunnel [Evento de Arquivo no Windows]
Execução de Simulação
-
Narrativa do Ataque & Comandos: O adversário inicia uma campanha de phishing. A vítima recebe um e-mail que parece ser um documento compartilhado do Google Cloud. Quando a vítima clica no link, o navegador faz uma solicitação GET para
https://cloud.g-drive.cam/login/auth. Esta solicitação é capturada pelo proxy corporativo, que deve acionar a regra de detecção com base na presença do domínio malicioso no URL. -
Script de Teste de Regressão:
# Script de simulação para acionar a regra de detecção solicitando o domínio de phishing. # Isso simula um usuário clicando em um link em um e-mail de phishing. $PhishingUrl = "https://cloud.g-drive.cam/auth/login?user=victim" Write-Host "Simulando conexão ao domínio de phishing: $PhishingUrl" try { # Usamos -ErrorAction SilentlyContinue porque o domínio não existe de fato, # mas a solicitação DNS e a tentativa de conexão gerarão o log do proxy. Invoke-WebRequest -Uri $PhishingUrl -Method Get -UseBasicParsing -ErrorAction SilentlyContinue Write-Host "Tentativa de conexão concluída. Verifique o SIEM para os logs de proxy." } catch { Write-Host "Conexão falhou conforme esperado (domínio provavelmente inexistente), mas a telemetria deve ser gerada." } -
Comandos de Limpeza:
# Nenhuma alteração permanente é feita no sistema. # Para limpar o cache web local se necessário: Clear-History Write-Host "Limpeza de simulação completa. Nenhum artefato deixado no host."