A Microsoft encerrou uma operação de extensões maliciosas de longa data na loja de Complementos do Edge (Edge Add-ons) que escondia seus payloads (cargas maliciosas) dentro de arquivos comuns de imagem e fonte, e só ativava dias após a instalação para roubar credenciais e executar fraude de anúncios.
A empresa chama a operação de StegoAd, uma combinação de esteganografia (técnica de ocultar dados dentro de outros arquivos) e adware (software que exibe anúncios indesejados), e associa 119 extensões a um único agente de ameaça que, segundo ela, está ativo desde pelo menos 2021.
As extensões eram do tipo que as pessoas instalam sem pensar duas vezes: bloqueadores de anúncios, VPNs (redes privadas virtuais), tradutores, downloaders de vídeo. Cada uma fazia seu trabalho e conquistava avaliações. O código malicioso permanecia dormente até a extensão passar por uma série de verificações de evasão, o que explica como ficou na loja por anos.
Juntas, as 119 extensões tinham uma base instalada de até 2,6 milhões de usuários. A Microsoft deixa claro que esse número é um teto, não uma contagem de vítimas.
Um atraso de vários dias, validação no servidor e um gatilho de execução de 10% em algumas variantes fizeram com que o payload nunca fosse acionado em muitas instalações. Não se sabe quantas pessoas foram realmente comprometidas.
Código escondido em imagens e fontes
O truque que dá nome à campanha é a esteganografia: esconder código executável dentro de arquivos que parecem completamente normais. As variantes mais antigas anexavam JavaScript após o marcador IEND de um ícone PNG (formato de imagem sem perda), de forma que a imagem era renderizada normalmente em qualquer lugar enquanto carregava um payload que nenhum scanner estático identificava.
Conforme a detecção evoluía, o agente migrou para imagens WebP (formato moderno de imagem para a web) e depois para arquivos de fonte WOFF2 (formato compacto de fonte para a web), escondendo código em intervalos de glifos que pareciam texto asiático ou metadados de fonte. A Microsoft afirma que esteganografia nessa escala é rara no ecossistema de extensões de navegador.
Algumas variantes de alto impacto nem sequer enviavam o payload localmente. Elas baixavam uma imagem de aparência comum de um servidor de comando e controle (C2, na sigla em inglês). A extensão decodificava a imagem por meio de camadas de trocas de letras maiúsculas e minúsculas, trocas de dígitos, Base64 (esquema de codificação binária em texto) e XOR (operação lógica de cifragem), e conferia o resultado com uma assinatura antes de executá-lo.
O servidor C2 só entregava o arquivo real a solicitações que passassem por uma verificação de impressão digital e de User-Agent (identificador do navegador enviado ao servidor); quem o sondasse diretamente, incluindo pesquisadores, recebia uma resposta vazia de isca.
As extensões também monitoravam se as DevTools (ferramentas de desenvolvedor integradas ao navegador) estavam abertas e prolongavam seu estado dormente caso detectassem um analista observando.
Fraude de anúncios por cima, roubo de credenciais por baixo
O dano visível era a fraude de anúncios: propagandas injetadas, comissões de afiliados desviadas na Amazon, eBay e AliExpress, e buscas redirecionadas, tudo isso desviando dinheiro enquanto prejudicava a navegação.
A análise da Microsoft sobre os payloads recuperados revelou muito mais por baixo. Os payloads incluíam um backdoor (acesso remoto oculto) de execução remota de código que executava JavaScript arbitrário enviado pelo servidor. Também roubavam credenciais do Google e códigos de segundo fator no login, coletavam credenciais de administrador do WordPress e exfiltravam cookies em massa para sequestro de sessões.
A Microsoft informa que sete identificadores de acompanhamento do Google Analytics aparentemente serviram como telemetria oculta, fornecendo ao operador painéis quase em tempo real sobre a campanha pela própria infraestrutura do Google.
A infraestrutura acompanhava a ambição. A Microsoft contabiliza mais de dez domínios C2 com failover (troca automática para um sistema reserva) automático. O agente direcionou o tráfego por meio de Cloudflare Workers (plataforma de execução de código na borda da rede) e abusou do GitHub Pages para hospedar beacons (marcas de rastreamento).
Um framework polimórfico (que altera sua forma para evitar detecção) operou em cerca de 66 extensões sob mais de 15 variantes de nomenclatura, e a operação migrou do Manifesto V2 para o V3 (versões do sistema de extensões do Chrome) conforme o agente se adaptava às mudanças da plataforma.
O que fazer
A Microsoft afirma que removeu todas as 119 extensões e suspendeu as mais de 90 contas de desenvolvedor por trás delas. A lista completa de identificadores de extensão está no relatório técnico da empresa.
Abra edge://extensions e compare seus add-ons instalados com essa lista. Se algo bater, ou se o Edge removeu alguma extensão automaticamente, trate o navegador como exposto. Troque as senhas do Google, WordPress, banco e de outras contas sensíveis.
Revise a atividade recente de login e ative autenticação forte de dois fatores. Chaves de segurança de hardware são mais resistentes a esse tipo de roubo de credenciais do que códigos SMS. A Microsoft publicou indicadores de comprometimento para uso em Chrome, Firefox e outros navegadores baseados em Chromium (projeto de código aberto que dá base ao Chrome e ao Edge).
A StegoAd parece menos uma campanha nova do que uma nova cara de uma campanha conhecida. Seu payload de credenciais é exfiltado para mitarchive.info, domínio que a Koi Security associa ao DarkSpectre, operação chinesa que a empresa relacionou em dezembro às campanhas de extensões ShadyPanda e GhostPoster.
A conexão vai além do domínio. A StegoAd esconde código dentro do próprio ícone de uma extensão, o mesmo método usado pelo GhostPoster meses antes. As duas operações compartilham até nomes de extensões, como Ads Block Ultimate.
A Microsoft não identificou o agente, mas a sobreposição é clara. O operador segue ativo, segundo a empresa.