Categories: CYBERSEC GERAL

Engenharia social contra Axios mostra como um maintainer pode virar vetor para 100 milhões de downloads

O que aconteceu

Uma operação atribuída ao cluster UNC1069 usou engenharia social de alto nível para comprometer o maintainer do Axios, uma das bibliotecas mais usadas no ecossistema JavaScript. Em vez de explorar uma falha técnica, o grupo montou um cenário corporativo falso e induziu a vítima a instalar um suposto “update” durante uma chamada no Microsoft Teams. O update era, na prática, um RAT.

Como o golpe funcionou (engenharia social nível APT)

  • Clonagem de identidade de um fundador real para dar credibilidade ao contato.
  • Workspace no Slack com branding, perfis falsos e canais “corporativos”.
  • Reunião no Teams com o que parecia ser um time completo.
  • Alerta de “atualização necessária” durante a call, levando o maintainer a instalar o malware.
  • O RAT se autoapagou após execução para reduzir rastros forenses.

Linha do tempo (resumo)

  • 18 horas antes: um pacote “limpo” foi publicado para criar histórico de registry.
  • 12:21 UTC (domingo): versões maliciosas publicadas no npm.
  • +39 minutos: releases nas branches latest e legacy.
  • ~3 horas depois: npm removeu as versões comprometidas.

Impacto direto

Axios tem cerca de 100 milhões de downloads por semana e é presença comum em ambientes de cloud. Em poucas horas, versões maliciosas ficaram disponíveis tempo suficiente para:

  • Exfiltrar credenciais de npm e acesso de publicação.
  • Acessar chaves e segredos em pipelines (AWS, SSH, CI/CD e .env).
  • Disparar conexões para C2 em diferentes sistemas (Windows, macOS e Linux).

Por que isso assusta (mesmo com MFA)

O maintainer relatou ter MFA habilitado “praticamente em tudo”. Ainda assim, a engenharia social venceu. Ou seja: o problema não foi senha fraca, mas um playbook desenhado para quebrar a confiança humana. É um ataque que trata a vítima como interface — e isso ignora a maior parte dos controles técnicos tradicionais.

O que fazer agora (checklist curto)

  • Rotacionar credenciais: npm tokens, AWS keys, SSH, secrets de CI/CD e variáveis em .env.
  • Identificar se versões comprometidas foram instaladas em build/CI nas últimas semanas.
  • Travar releases críticas com revisão de co-maintainers e chaves segregadas.
  • Adotar SBOM e allowlist de versões para pacotes críticos.
  • Monitorar releases “fora do padrão” (horário, tamanho do diff, branch inesperada).

O padrão que está se repetindo

O mesmo cluster já foi ligado a compromissos recentes envolvendo Trivy, KICS, LiteLLM e até GitHub Actions. A mensagem é clara: o supply chain open source está virando alvo prioritário de operações persistentes — com impacto que escala muito além do maintainer atacado.

Como saber se você foi afetado (Axios/npm)

1) Verifique versões instaladas (builds e lockfiles):

  • Procure se houve instalação de versões publicadas no intervalo do incidente
  • package-lock.json, yarn.lock, pnpm-lock.yaml
  • I logs e caches de build
  • Se achar versões suspeitas, trate como comprometimento potencial.

2) Procure indícios de execução do pacote malicioso:

  • Conexões de saída inesperadas logo após npm install / npm ci
  • Processos desconhecidos durante build (especialmente em runners de CI)
  • Alterações repentinas em ~/.npmrc, tokens de npm ou secrets de CI
  • Criação/uso de arquivos temporários estranhos no runner

3) Rotacione credenciais se houver qualquer dúvida:

  • npm tokens, chaves de cloud (AWS/GCP/Azure), SSH keys, secrets de CI/CD e variáveis .env.

4) Proteja próximos releases:

  • Fixar versões (allowlist)
  • Adotar SBOM e policy de dependências
  • Revisão por co-maintainers em releases críticos

Conclusão

Um único maintainer, uma call fake, e 100 milhões de downloads viraram vetor em questão de horas. A moral da história é simples e cruel: se o ecossistema depende de confiança individual, ele precisa começar a tratar maintainers como ativos críticos — não como hobby.

Fonte: https://x.com/aakashgupta/status/2040171739926393151

TheNinja

Recent Posts

Chaves de API do Google continuam válidas por até 23 minutos após exclusão, alerta Aikido Security

Pesquisadores documentam atraso entre exclusão de chave de API do GCP e bloqueio efetivo de…

11 horas ago

GitHub lança publicação em estágios no npm para conter ataques à supply chain de software

Recurso staged publishing exige aprovação humana com 2FA antes que pacotes do npm fiquem instaláveis.…

11 horas ago

Underminr: nova vulnerabilidade em CDNs compartilhadas permite esconder C2 atrás de domínios confiáveis

Falha afeta cerca de 88 milhões de domínios e permite que atacantes contornem filtros de…

1 dia ago

Hospitais universitários alemães sofrem vazamento de dados de pacientes após ataque a prestadora de faturamento

Ataque à Unimed expõe dados de pacientes em ao menos seis hospitais alemães. Colônia e…

1 dia ago

Pacotes PHP do Laravel-Lang são comprometidos para entregar credential stealer multiplataforma

Atacantes publicaram mais de 700 versões maliciosas dos pacotes Laravel-Lang em 22 e 23 de…

1 dia ago

Operation Ramz: Interpol prende 201 em ofensiva inédita contra cibercrime no Oriente Médio e Norte da África

Interpol coordena operação multinacional de quatro meses em 13 países MENA: 201 prisões, 53 servidores…

5 dias ago