Pesquisadores da Socket mapearam uma operacao maliciosa de supply-chain no GitHub que envolve 222 repositorios em 190 contas, todos desenhados para parecerem projetos legitimos, ativos e recentemente mantidos. Batizada de Muck and Load, a campanha distribui trojan loaders, Vidar infostealer, drozones de spyware e cryptominers Monero via XMRig, e usa modulos falsos em Go como estagio inicial de infeccao em Windows. O disparador da investigacao foi um unico modulo, o github[.]com/kaleidora/dnsub-scanning-tool, que se apresentava como utilitario de enumeracao de subdominios DNS.
A equipe de pesquisa da Socket comecou puxando o fio de um unico pacote suspeito e terminou expondo um ecossistema paralelo de repositorios falsos. Os 222 projetos identificados nao formavam paginas vazias de isca: parte deles distribuia diretamente malware, enquanto outros serviam de camada de credibilidade, criando uma teia de referencias cruzadas que fazia cada projeto parecer parte de uma comunidade viva de desenvolvimento.
O nome da operacao vem de dois elementos observados na infraestrutura: a tematica Muck usada em diversos artefatos e a cadeia de staged loading pela qual os payloads sao entregues em fases. A tatica lembra campanhas anteriores de typosquatting e dependency confusion, mas com um agravante: em vez de tentar enganar caracteres em nomes de pacotes populares, os operadores construiram identidades independentes com aparencia legitima, mais dificeis de detectar por listas de bloqueio baseadas em correspondencia por similaridade.
Segundo a Socket, o conjunto de payloads confirmado inclui trojan loaders, o infostealer Vidar, droppers com funcionalidades de spyware e cryptominers de Monero baseados em XMRig. A diversidade sugere que o operador esta menos interessado em uma monetizacao especifica e mais em maximizar o retorno por instalacao, revendendo acesso ou dados conforme a conta comprometida.
O modulo dnsub-scanning-tool foi o alvo original da analise. Ao ser importado, ele executa uma cadeia de comandos PowerShell com a flag -ExecutionPolicy Bypass. Essa flag por si so nao explora nada no PowerShell, mas em conjunto com execucao oculta e a decodificacao de um script externo em memoria, revela intencao clara: o modulo em Go atua como first-stage Windows loader.
A carga final e um loader PowerShell multi-camadas chamado L.ps1, que combina codificacao Base64 com decriptacao XOR para atravessar varias fases antes de entregar seu payload real. E um padrao classico de evasao de antivirus baseados em assinatura estatica: cada camada precisa ser decodificada em runtime, e nenhum dos artefatos intermediarios corresponde a uma amostra publica conhecida.
A anomalia mais reveladora, no entanto, apareceu antes mesmo da execucao. O modulo tinha mais de 1200 versoes publicadas, sendo mais de 700 explicitamente maliciosas, em uma ferramenta criada havia poucos meses. Esse volume nao corresponde a nenhuma pratica normal de release engineering. Era resultado de um workflow do proprio GitHub Actions do atacante, gerando commits com timestamps para fabricar atividade de desenvolvimento e passar por um projeto vivo aos olhos de dependency scanners.
Essa flag nao explora o PowerShell por si so, mas e comumente usada por malware para contornar restricoes de politica local de execucao de scripts. Neste caso, ela e combinada com execucao oculta e um script recem-decodificado de fonte externa, o que torna a intencao clara: o modulo Go esta atuando como um loader de primeiro estagio para Windows.
Socket
A Muck and Load se soma a uma linhagem crescente de operacoes de supply-chain que exploram sinais sociais em ecossistemas open source. Casos como Shai-Hulud (npm), PolinRider (npm/Go/Chrome), Shuffle (PyPI) e o cluster GitDoubleTake (2025) mostraram que o vetor de entrada nao precisa mais ser um pacote muito baixado. Basta ser um pacote que pareca real: com README plausivel, README traduzido, atividade regular de commits e uma rede de contas cruzando estrelas e forks.
O uso de GitHub Actions para fabricar historico de commits e o ponto mais interessante do relatorio. Ate 2024, era comum defensores pesarem a idade e a atividade de um repositorio como proxy de confianca. Ferramentas de anti-malware para dependencias comecaram entao a incorporar heuristicas de release cadence. A Muck and Load mostra que essas heuristicas ja estao sendo derrotadas em escala industrial: 1200 versoes em poucos meses e o teto inverso, o sinal de que a atividade e sintetica, nao autentica.
Para o ecossistema Go, o timing e sensivel. Modulos em Go sao imutaveis por design apos publicados, o que teoricamente reduz o espaco para injecao de codigo malicioso em versoes existentes. Porem, o mecanismo de descoberta ainda depende fortemente de indices publicos e de metadata em GitHub. O Muck and Load ataca justamente essa camada de descoberta, e nao a camada de execucao, deixando o hardening de dependencias como responsabilidade do consumidor final.
Fonte: Security Affairs
Relatorio da SentinelLabs mostra que dois clusters distintos, chines (TAG-140) e indio (TAG-179), atacaram a…
Nova operacao PhaaS vendida por US$ 400/mes no Telegram combina device code phishing, adversary-in-the-middle, geracao…
Cursor Composer 2.5 e o rebrand da Windsurf como Devin Desktop consolidam a era dos…
BioShocking transforma ChatGPT Atlas, Comet e extensão do Claude em ladrões de credenciais. OWASP mantém…
Publicado na Nature Machine Intelligence em julho: agente baseado em LLM planeja, executa e interpreta…
Braço de deployment da OpenAI adquire a Northslope — segunda aquisição após a Tomoro —…