UNC6692 usa engenharia social no Microsoft Teams para implantar a suíte modular SNOW

UNC6692 usa engenharia social no Microsoft Teams para implantar a suíte modular SNOW

Campanha combina phishing via Teams, extensão maliciosa para Chromium, túneis WebSocket, backdoor Python, coleta de credenciais e extração de bases do Active Directory.

ComponenteCampanha do cluster UNC6692 com a suíte SNOWBELT, SNOWGLAZE e SNOWBASIN, usando Microsoft Teams, Microsoft Edge, AutoHotKey, Python portátil, AWS S3, Heroku, PsExec, RDP, LimeWire e FTK Imager.
VetorContato externo pelo Microsoft Teams após campanha de e-mails em massa; a vítima era induzida a abrir uma página falsa de atualização antispam, baixar um binário AutoHotKey renomeado e executar um script com o mesmo nome.
ImpactoPersistência por extensão Chromium carregada no Microsoft Edge sem interface, execução remota de comandos, tunelamento SOCKS, captura de tela, coleta de arquivos, extração de memória do lsass.exe, movimento lateral por Pass-the-Hash e exfiltração de NTDS.dit, SAM, SYSTEM e SECURITY.
PrioridadeInvestigar convites externos no Teams, downloads de AutoHotKey vindos de buckets S3, tarefas agendadas que iniciem Edge com --headless=new e --load-extension, execução de Python portátil, conexões WebSocket suspeitas e acesso incomum a controladores de domínio.
ArtefatosC:\Users\ \AppData\Local\Microsoft\Edge\Extension Data\SysEvents\background.js, dream.js, dream.html, helper.html, C:\ProgramData\log, portas locais 8000, 8001 e 8002, além de endpoints HTTP locais como /stream, /buffer, /commit, /capture e /gc.
IoCsservice-page-25144-30466-outlook.s3.us-west-2.amazonaws[.]com, cloudfront-021.s3.us-west-2.amazonaws[.]com, wss://sad4w7h913-b4a57f9c36eb.herokuapp[.]com/ws, service-page-11369-28315-outlook[.]s3[.]us-west-2[.]amazonaws[.]com.
MitigaçãoRemover extensões Chromium não autorizadas, bloquear execução não administrada de AutoHotKey e Python portátil, revisar tarefas agendadas, restringir convites externos no Teams, rotacionar credenciais expostas e validar integridade de controladores de domínio e servidores de backup.
Resumo técnico

O cluster UNC6692 conduziu uma intrusão em múltiplos estágios baseada em engenharia social persistente, abuso de ferramentas corporativas legítimas e uma suíte própria de malware chamada SNOW. A cadeia começou com uma campanha de e-mails em massa no fim de dezembro de 2025, usada para criar ruído operacional e tornar plausível uma abordagem posterior por Microsoft Teams. Em seguida, o operador se apresentou como equipe de suporte técnico e convenceu a vítima a aceitar uma conversa de uma conta externa, tratando o excesso de mensagens como um problema que exigiria uma correção local. A abordagem não dependia de exploração inicial de vulnerabilidade pública; a condição central era a interação do usuário com o link enviado no Teams e a execução dos artefatos oferecidos pela página falsa.

A página de phishing simulava uma ferramenta de reparo e sincronização de caixa postal e direcionava a vítima para um fluxo controlado pelo atacante. O site exigia um parâmetro ?email= na URL, redirecionava para about:blank quando esse parâmetro não existia e tentava forçar o uso do Microsoft Edge por meio do esquema microsoft-edge:. Essa lógica reduzia a exposição do payload a sandboxes genéricas e mantinha o usuário em um navegador compatível com a etapa de extensão maliciosa. O fluxo também capturava credenciais com um formulário que rejeitava as primeiras tentativas de senha, uma técnica usada para obter entradas repetidas e diminuir a chance de erro de digitação antes da exfiltração para buckets S3 controlados pelo operador.

Após a interação inicial, o endpoint recebia um binário AutoHotKey renomeado e um script AutoHotKey com o mesmo nome. Essa combinação é relevante porque o AutoHotKey executa automaticamente o script homônimo presente no mesmo diretório, dispensando argumentos adicionais de linha de comando. A execução resultou em reconhecimento inicial e na instalação de SNOWBELT, uma extensão maliciosa para navegadores Chromium carregada fora da Chrome Web Store. A persistência foi reforçada por atalho na pasta de inicialização do Windows e por tarefas agendadas responsáveis por iniciar o Microsoft Edge em modo sem janela com --headless=new, --load-extension e um diretório de dados de usuário dedicado.

Fluxo técnico

SNOWBELT atua como o ponto de apoio inicial no navegador. A extensão executa um Service Worker em background.js, mantém atividade por alarmes como agent-heartbeat e usa injeção de aba de manutenção por helper.html. Durante a inicialização, cria uma identidade com prefixo fp-sw- seguido de UUID e calcula URLs de comando e controle com uma DGA temporal baseada no seed 691f7258f212fa8908a8bf06bcf9e027d2177276e13e10ff56bd434ff3755cc4. O padrão de buckets gerados segue a forma https://[a-f0-9]{24}-[0-9]{6,7}-{0-9}{1}.s3.us-east-2.amazonaws[.]com, com manifesto descriptografado por AES-GCM a partir de uma chave derivada de SHA256(SEED + "|" + timeslot). Para latência menor, a extensão também registra Push Notifications com uma chave VAPID pública embutida e mantém a capacidade de conexão por WebSocket.

A extensão não opera isoladamente. Ela repassa comandos para SNOWBASIN, um backdoor Python que expõe um servidor HTTP local, normalmente na porta 8000, com alternativas em 8001 e 8002. Os comandos recebidos por SNOWBELT, incluindo command, buffer, flush, commit, stop_server e screenshot, são transformados em requisições HTTP locais para endpoints como /stream, /buffer, /flush, /commit, /capture e /gc. O endpoint /stream executa comandos por cmd.exe ou powershell.exe; /buffer lê arquivos ou lista diretórios e devolve conteúdo em Base64; /commit baixa arquivos de uma URL e grava em caminho indicado, ignorando validação de certificado; /capture coleta imagens de todos os monitores com bibliotecas Python; e /gc encerra a instância do servidor.

SNOWGLAZE complementa a operação como túnel Python para tráfego TCP arbitrário. O componente abre uma conexão WebSocket segura para wss://sad4w7h913-b4a57f9c36eb.herokuapp[.]com:443/ws, usa User-Agent compatível com Microsoft Edge e aplica reconexão incremental, iniciando em 5 segundos e aumentando até 300 segundos. Após o handshake, envia mensagens JSON de autenticação e registro, depois passa a aceitar comandos como ping, agent_public_ip, socks_connect, socks_data, socks_close e disconnect. O tráfego SOCKS é encapsulado em JSON e Base64, o que permite ao operador rotear PsExec, RDP e outras conexões internas por meio do host comprometido sem expor diretamente a infraestrutura interna ao exterior.

Com o canal estabelecido, a atividade observada avançou para reconhecimento interno e movimento lateral. Um script Python varreu a rede local em busca das portas 135, 445 e 3389, correspondentes a RPC, SMB e RDP. Em seguida, os operadores estabeleceram sessão PsExec via túnel SNOWGLAZE, enumeraram administradores locais e iniciaram RDP para um servidor de backup usando uma conta administrativa local. No servidor de backup, a memória do processo lsass.exe foi extraída com o Gerenciador de Tarefas do Windows e exfiltrada via LimeWire. Os hashes obtidos foram usados em Pass-the-Hash para acesso aos controladores de domínio, onde o operador baixou FTK Imager, montou o volume local e copiou NTDS.dit, SAM, SYSTEM e SECURITY para a pasta Downloads do administrador de domínio antes da exfiltração.

Superfície afetada

A superfície exposta começa em ambientes que permitem comunicação externa por Microsoft Teams e não impõem controles fortes sobre contas externas, links recebidos em chats e execução de binários baixados pelo usuário. A técnica é particularmente eficaz quando o help desk usa o Teams como canal legítimo de suporte, pois a narrativa de correção de spam se alinha ao ruído criado pela campanha de e-mail anterior. Controles de identidade e colaboração precisam ser avaliados em conjunto com telemetria de endpoint: a aceitação de convite externo, o clique em link S3, o download de AutoHotKey e a criação de tarefa agendada formam uma sequência de eventos com alto valor de detecção quando correlacionados.

No endpoint Windows, o risco se concentra em Microsoft Edge/Chromium, AutoHotKey, tarefas agendadas, pasta de inicialização do usuário e execução de Python portátil. A extensão SNOWBELT fica em C:\Users\ \AppData\Local\Microsoft\Edge\Extension Data\SysEvents\, enquanto processos do Edge podem ser iniciados com diretórios de dados fora do perfil padrão, em especial C:\Users\ \AppData\Local\Microsoft\Edge\System Data. A linha de comando com --headless=new, --disable-sync, --no-first-run e --load-extension é um indicador comportamental mais forte do que o nome do processo, porque o binário legítimo do Edge é usado para carregar a extensão maliciosa em contexto aparentemente confiável.

A superfície de domínio aumenta quando credenciais locais administrativas são reutilizadas, servidores de backup aceitam RDP de estáções comprometidas e controladores de domínio permitem autenticação NTLM suficiente para Pass-the-Hash. A extração de lsass.exe, seguida de acesso a NTDS.dit e hives do Registro, indica risco direto para credenciais de domínio, segredos de máquinas, hashes de contas privilegiadas e capacidade de persistência posterior. Mesmo que os buckets S3 e subdomínios Heroku específicos já não estejam ativos, a técnica continua relevante porque o desenho operacional depende de serviços em nuvem legítimos, tráfego HTTPS/WebSocket e binários amplamente permitidos em ambientes corporativos.

A exposição também inclui controles de proxy e CASB que classificam genericamente AWS S3, Heroku e tráfego Microsoft como confiáveis. Nesta campanha, S3 foi usado para página de phishing, estágio de payload, C2 e exfiltração; Heroku foi usado para túnel WebSocket; LimeWire apareceu como canal de saída para artefatos sensíveis. Ambientes que não inspecionam método HTTP, caminho, volume de transferência, origem de processo e relacionamento com identidade do usuário podem não diferenciar navegação legítima de um fluxo de comando e controle iniciado por extensão de navegador.

  • Estáções Windows com Microsoft Edge capazes de carregar extensões locais por --load-extension e executar AutoHotKey baixado pelo usuário.
  • Usuários que aceitam convites externos no Microsoft Teams e recebem links para páginas S3 com parâmetros de e-mail na URL.
  • Servidores de backup acessíveis por RDP a partir de estáções de usuário ou por contas administrativas locais reutilizadas.
  • Controladores de domínio expostos a autenticação NTLM e administração interativa suficiente para uso de FTK Imager e cópia de NTDS.dit.
  • Ambientes com saída direta ou pouco restrita para AWS S3, Heroku WebSocket e serviços de compartilhamento usados para exfiltração.
Hunting e telemetria

A investigação deve começar pela correlação entre colaboração, navegação e execução local. Em logs do Microsoft Teams, procure chats recebidos de contas externas que ofereçam suporte para volume anormal de e-mails, links com domínio S3 e URLs contendo update.html?email=. No navegador e no proxy, busque acessos a service-page-25144-30466-outlook.s3.us-west-2.amazonaws[.]com, service-page-11369-28315-outlook[.]s3[.]us-west-2[.]amazonaws[.]com, cloudfront-021.s3.us-west-2.amazonaws[.]com e padrões S3 em us-east-2 com nomes pseudoaleatórios que se encaixem em [a-f0-9]{24}-[0-9]{6,7}-{0-9}{1}. Requisições PUT para buckets S3 a partir de uma sessão de navegador do usuário merecem prioridade quando acompanhadas por submissão de formulário ou download de executável.

Em endpoint, a caça deve cobrir criação de arquivos em Extension Data\SysEvents, execução de RegSrvc.exe, artefatos AutoHotKey, atalhos novos na pasta Startup e tarefas agendadas que lancem Microsoft Edge em modo headless. A linha de comando que contém --user-data-dir, --load-extension, --headless=new e --disable-sync é uma combinação incomum para uso corporativo padrão. Também é relevante procurar comandos que enumerem módulos de processos Edge e matem PIDs sem CoreUIComponents.dll, pois a campanha usou essa lógica para encerrar instâncias headless não alinhadas ao fluxo do malware.

A presença de Python portátil e do arquivo C:\ProgramData\log deve ser cruzada com conexões WebSocket para sad4w7h913-b4a57f9c36eb.herokuapp[.]com, User-Agent de Edge emitido por processo Python e tráfego JSON com campos como type, conn_id, socks_data, target_host, target_port e data em Base64. Em hosts comprometidos, conexões locais para localhost:8000, localhost:8001 ou localhost:8002 vindas de processos Edge podem indicar o encadeamento SNOWBELT para SNOWBASIN. Consultas HTTP locais para /stream, /buffer, /commit e /capture devem ser tratadas como sinais de execução de comando, coleta de arquivo ou captura de tela.

Em Active Directory e servidores críticos, procure execução de PsExec, criação de serviços remotos, autenticação NTLM atípica, RDP iniciado a partir de estáções de trabalho incomuns e eventos associados a acesso à memória do lsass.exe. A cópia de NTDS.dit, SAM, SYSTEM e SECURITY para diretórios de usuário, especialmente Downloads, é um indicador de comprometimento severo. EDRs também devem registrar uso de FTK Imager em controladores de domínio, montagem de volumes locais por conta administrativa e capturas de tela focadas em janelas do Edge ou do próprio FTK Imager.

  • Convites externos no Microsoft Teams seguidos de acesso a update.html?email= e download de AutoHotKey.
  • Processos msedge.exe com --headless=new, --load-extension, --user-data-dir e caminhos sob Microsoft\Edge\Extension Data\SysEvents.
  • Tarefas agendadas ou atalhos de inicialização que executem scripts AutoHotKey ou iniciem Edge sem janela.
  • Conexões WebSocket para wss://sad4w7h913-b4a57f9c36eb.herokuapp[.]com/ws e tráfego JSON/Base64 com semântica SOCKS.
  • Requisições locais para /stream, /buffer, /commit, /capture, /flush ou /gc nas portas 8000, 8001 e 8002.
  • Acesso ou dump de lsass.exe, uso de Pass-the-Hash, PsExec, RDP para servidor de backup e criação de cópias de NTDS.dit.
  • Hashes SHA-256 2fa987b9ed6ec6d09c7451abd994249dfaba1c5a7da1c22b8407c461e62f7e49, c8940de8cb917abe158a826a1d08f1083af517351d01642e6c7f324d0bba1eb8 e 7f1d71e1e079f3244a69205588d504ed830d4c473747bb1b5c520634cc5a2477.
Mitigação

A resposta deve priorizar contenção de identidade e isolamento dos hosts que apresentam a sequência Teams, S3, AutoHotKey, Edge headless e Python. Máquinas com SNOWBELT, SNOWGLAZE ou SNOWBASIN devem ser retiradas da rede para preservação forense, com coleta de tarefas agendadas, atalhos de inicialização, diretórios de extensão Chromium, histórico de downloads, logs de proxy, conexões ativas e artefatos Python. A remoção manual da extensão não é suficiente quando houve movimento lateral: se lsass.exe, NTDS.dit ou hives do Registro foram exfiltrados, a organização deve assumir exposição de credenciais e planejar rotação ampla, começando por administradores de domínio, contas locais reutilizadas, contas de serviço e senhas de máquina quando aplicável.

No Microsoft Teams, restrinja ou condicione convites externos, aplique avisos visíveis para chats vindos de fora da organização e revise políticas de federação. Bloqueie downloads e execução de AutoHotKey quando não houver necessidade operacional, ou limite por allowlisting, assinatura e caminho permitido. Em navegadores Chromium, imponha política corporativa de extensões autorizadas, bloqueie carregamento de extensões não aprovadas por --load-extension quando possível e monitore diretórios de perfil alternativos. Para Edge, comandos headless com extensão local devem ser tratados como exceção controlada, não como comportamento normal de usuário.

Na rede, controles de saída precisam considerar método, processo de origem e destino, não apenas reputação do domínio. Requisições PUT para S3 por navegadores de usuário, WebSockets persistentes para Heroku a partir de Python e tráfego SOCKS encapsulado em JSON devem acionar investigação. Proxy, EDR e DNS devem compartilhar contexto para que um download S3 iniciado pelo Teams, a criação de tarefa agendada e a conexão subsequente para Heroku sejam avaliados como um único fluxo. Também é recomendável revisar regras para LimeWire e serviços similares usados para exfiltração, principalmente a partir de servidores de backup e controladores de domínio.

A contenção de domínio exige reduzir a utilidade de hashes capturados. Desabilite ou limite NTLM onde viável, separe contas administrativas locais por host, implemente LAPS ou mecanismo equivalente, remova privilégios interativos desnecessários em servidores de backup e aplique segmentação entre estáções de trabalho e sistemas críticos. Servidores de backup não devem aceitar RDP amplo a partir de segmentos de usuário, e controladores de domínio não devem permitir uso administrativo interativo sem controle rigoroso. Após a erradicação, valide que não restam tarefas agendadas, serviços remotos criados por PsExec, extensões locais desconhecidas, servidores HTTP em portas 8000 a 8002 ou cópias de bases sensíveis em diretórios de usuário.

  • Isolar endpoints com AutoHotKey suspeito, Edge headless com extensão local, Python portátil ou arquivo C:\ProgramData\log associado aos hashes informados.
  • Revogar sessões e rotacionar credenciais de usuários envolvidos, administradores locais, administradores de domínio e contas que acessaram servidores onde lsass.exe foi coletado.
  • Aplicar política de extensões permitidas em Chromium/Edge e bloquear carregamento de extensões locais fora do processo administrado.
  • Revisar tarefas agendadas, pasta Startup, serviços remotos, execução de PsExec e uso de RDP para servidores de backup e controladores de domínio.
  • Criar detecções para --headless=new com --load-extension, endpoints locais de SNOWBASIN, tráfego socks_data em JSON/Base64 e requisições PUT incomuns para AWS S3.
  • Restringir convites externos no Teams, bloquear domínios S3 identificados, monitorar padrões DGA de buckets S3 e inspecionar WebSockets persistentes para infraestrutura PaaS.
  • Validar controladores de domínio após a resposta, procurando cópias de NTDS.dit, SAM, SYSTEM e SECURITY, execução de FTK Imager e sinais de autenticação Pass-the-Hash.

Postar um comentário

0 Comentários