Axios e o Problema das Dependências: Um Ataque à Cadeia de Suprimentos de Software

Axios e o Problema das Dependências: Um Ataque à Cadeia de Suprimentos de Software

Uma análise detalhada de como a invasão de uma conta npm disseminou um RAT em 174.000 pacotes em apenas 3 horas, expondo falhas nas práticas de segurança de CI/CD e na confiança cega em dependências. O artigo explora a mecânica do ataque ao Axios, os pontos cegos na segurança e as medidas eficazes para mitigar riscos semelhantes.

MundiX News·17 de abril de 2026·7 min de leitura·👁 11 views

Continuando as discussões com nosso Tech Lead, Dmitry, hoje abordamos como a invasão de uma única conta npm em 3 horas propagou um Remote Access Trojan (RAT) para 174.000 pacotes e por que ferramentas padrão como o NPM Audit não detectaram. Analisamos o incidente com o Axios: a mecânica do ataque, os pontos cegos no CI/CD e o que realmente funciona.

30 de Março de 2026: O Que Aconteceu em 3 Horas

Em 30 de março de 2026, duas versões maliciosas do Axios apareceram no npm: 1.14.1 (tag 'latest') e 0.30.4 (tag 'legacy'). Axios é uma biblioteca JavaScript para requisições HTTP com aproximadamente 100 milhões de downloads por semana e 174.000 pacotes dependentes no npm. Na prática, se um projeto é baseado em Node.js, é altamente provável que ele utilize Axios transitivamente.

Um invasor obteve acesso à conta npm de jasonsaayman, o principal mantenedor da biblioteca. O primeiro sinal de comprometimento foi a mudança do e-mail da conta de jasonsaayman@gmail.com para ifstap@proton.me, e o método de publicação mudou de um pipeline OIDC confiável com proveniência SLSA para uma publicação direta via CLI. Ambos os sinais foram detectados automaticamente pelo Elastic Security Labs através do monitoramento da cadeia de suprimentos.

As versões maliciosas permaneceram no registro por cerca de 3 horas. Durante esse tempo, milhares de equipes conseguiram baixá-las e implementá-las, já que a maioria delas obtém a versão 'latest' sem fixar explicitamente uma versão específica.

Como o Ataque Funciona

plain-crypto-js: Dependência Maliciosa

O invasor não modificou o código do Axios em si. Em vez disso, adicionou o pacote plain-crypto-js como dependência. O esquema ocorreu em duas etapas:

  1. plain-crypto-js@4.2.0: Uma versão "limpa", publicada antecipadamente para criar um histórico de publicações.
  2. plain-crypto-js@4.2.1: Uma versão maliciosa com um postinstall hook: durante a instalação, automaticamente baixava e executava um RAT de segundo estágio a partir do servidor C2 sfrclak[.]com:8000.

O RAT é multiplataforma, com payloads separados para macOS, Windows e Linux. Após estabelecer uma conexão com o C2, ele concede acesso remoto completo à máquina.

Por Que Isso Passou Pela Maioria dos CI/CDs Sem Interrupção

Os pipelines de CI/CD compilam, testam e entregam atualizações sem intervenção humana. Quando uma equipe não fixa uma versão específica de uma dependência, mas especifica a última versão disponível (^1.x.x), o npm resolve a versão 'latest' atual em cada compilação. No período entre 30 e 31 de março, essa era a versão 1.14.1 com o RAT embutido.

A maioria das equipes não possui uma etapa em seu CI/CD que verifique a segurança das dependências antes da compilação. De acordo com o OpenSSF Scorecard 2024, menos de 20% dos projetos de código aberto usam hashes fixos de dependências. A situação não é melhor em projetos comerciais que utilizam esses pacotes.

Por Que o NPM Audit Não Interrompeu o Ataque

O NPM Audit compara os pacotes instalados com um banco de dados de CVEs (Common Vulnerabilities and Exposures). No momento do ataque, nem o Axios 1.14.1 nem o plain-crypto-js 4.2.1 estavam listados nos bancos de dados, pois haviam sido publicados recentemente. O NPM Audit os escaneou e retornou um status 'clean'.

A lógica da ferramenta não está quebrada aqui; ela simplesmente não é aplicável a essa classe de ataques. Os bancos de dados de CVE registram vulnerabilidades conhecidas. Um ataque através da invasão de uma conta publica um pacote formalmente novo que ainda não foi incluído em nenhum banco de dados.

Este incidente foi detectado por uma ferramenta de outra classe: o Elastic Security Labs descobriu o ataque através do monitoramento comportamental, rastreando as mudanças nos metadados dos pacotes (mudança de e-mail, método de publicação, nova dependência em uma versão sem histórico de mudanças).

Dependências: O Novo Perímetro de Segurança

O que falhou no antigo paradigma?

Anteriormente, a responsabilidade era dividida por funções: o líder da equipe ou o arquiteto decidia qual módulo adicionar; o DevOps monitorava o processo de entrega; os especialistas em segurança se envolviam mais tarde com verificações SAST/DAST; os advogados cuidavam das licenças. Cada um verificava sua parte.

O incidente com o Axios revela uma lacuna nesse esquema: ninguém verificou se a conta do mantenedor ainda estava sob o controle de uma pessoa legítima. O nível de confiança nos pacotes assinados não era absoluto; estava vinculado a uma conta específica que poderia ser roubada.

174.000 Pacotes: Por Que a Escala é Tão Grande

Axios está entre os 5 pacotes npm mais baixados. 174.000 pacotes dependem direta ou transitivamente dele. A mecânica é a mesma da era dos CMS com WordPress e Joomla: uma vulnerabilidade no núcleo é a chave para todos os projetos naquela plataforma.

Um projeto Node.js padrão contém 40–60 dependências diretas. Cada uma delas tem suas próprias dependências, em média 5–7 pacotes. Total: 40 × 5 = 200+ pacotes que vivem silenciosamente em seu projeto, e por trás de cada um deles está uma pessoa específica com uma conta.

As dependências transitivas são uma classe separada: pacotes necessários apenas durante a fase de compilação e que não entram em produção. Eles também podem representar uma ameaça e, ao mesmo tempo, não serem o foco da revisão de código.

Como a IA Está Mudando o Equilíbrio de Poder

A IA acelera a escrita de código, ajuda na solução de problemas e automatiza a revisão de código. As mesmas capacidades funcionam contra os defensores: uma rede neural escaneia o código de outra pessoa em busca de vulnerabilidades em minutos, uma tarefa que um especialista experiente costumava levar horas.

A atribuição deste incidente é um threat actor norte-coreano (de acordo com o Google Cloud Threat Intelligence). Não são mais script kiddies de um fórum. Grupos estatais estão usando IA para encontrar pontos de entrada na cadeia de suprimentos, escaneando automaticamente milhares de pacotes em busca de contas fracas de mantenedores.

O número de vulnerabilidades em código open source que ainda não foram identificadas e documentadas é de milhões. De acordo com um estudo do Google Project Zero de 2023, o tempo médio entre a descoberta de uma vulnerabilidade e o patch público é de 25 dias. A IA está encurtando o tempo de busca do lado dos atacantes mais rápido do que as equipes de segurança estão crescendo do lado dos defensores.

O Que Teria Interrompido Este Ataque

npm audit signatures

A equipe verifica as assinaturas criptográficas de cada pacote e confirma que a publicação passou por um pipeline CI/CD oficial com proveniência SLSA, e não através de uma publicação direta via CLI a partir de uma conta modificada.

No caso do Axios 1.14.1, essa verificação teria revelado a anomalia imediatamente: a mudança do método de publicação de OIDC para CLI direto é um sinal claro. Foi esse sinal que o Elastic Security Labs detectou em seu monitoramento.

O Que Precisa Ser Incorporado ao CI/CD

  • Versões fixas ou hashes de dependências: npm install --frozen-lockfile ou uso de package-lock.json com commit no repositório.
  • npm audit signatures: Verificação de assinaturas antes de cada compilação.
  • SAST nas dependências: Análise estática não apenas do seu próprio código, mas também dos pacotes instalados.
  • Dependabot ou similar: Notificações automáticas sobre vulnerabilidades em dependências com CVEs conhecidos.
  • Monitoramento comportamental de pacotes: Análise de metadados de lançamentos: mudança de e-mail, mudança de método de publicação, novas dependências sem histórico.

Grandes empresas já estão implementando essas práticas como parte do DevSecOps. Pequenos projetos ainda não. São eles que constituem a maior parte dos 174.000 pacotes afetados.

Conclusão

Em 3 horas, de 30 a 31 de março de 2026, uma conta comprometida de um mantenedor transformou uma biblioteca com 100 milhões de downloads por semana em um vetor de entrega de RAT para macOS, Windows e Linux. O ataque não parou porque a proteção da maioria das equipes funcionou, mas porque o Elastic Security Labs estava realizando monitoramento comportamental e rapidamente iniciou a remoção dos pacotes do registro.

O perímetro da rede, os direitos de acesso, seu próprio código — tudo isso está sob controle há muito tempo. As dependências — código de terceiros, por trás do qual está uma pessoa específica com uma conta — permaneceram fora desse perímetro. O incidente com o Axios fechou esse ponto cego para aqueles que o notaram.

Aqueles que não notaram descobrirão mais tarde, quando algo der errado.

🛡️⚡

Pare de pesquisar. Comece a hackear.

O MundiX é seu copiloto de pentest com IA: comandos exatos, análise de outputs e próximo passo na kill chain — em segundos.

Testar grátis por 7 dias →

Sem cartão para começar · Planos a partir de R$49/mês

📤 Compartilhar & Baixar

🧰 Ferramentas recomendadas

Divulgação: alguns links são patrocinados. Podemos receber comissão se você comprar — sem custo extra para você. Só indicamos o que faz sentido para a comunidade.

Aprendendo Kali Linux: Teste de segurança, pentest e hacking ético

Aprendendo Kali Linux: Teste de segurança, pentest e hacking ético

Com centenas de ferramentas pré-instaladas, a distribuição Kali Linux facilita o trabalho de os profissionais de segurança começarem a fazer testes de segurança rapidamente. No entanto, com mais de 600 ferramentas em seu arsenal, o Kali Linux também pode ser desafiador. A nova edição deste prático livro abrange as atualizações nas ferramentas e inclui uma melhor abordagem da análise forense e da engenharia reversa. Ric Messier, autor, não fica apenas no teste de segurança, mas também faz uma abordagem sobre a execução de análise forense, incluindo a análise em disco e na memória, assim como alguma análise básica de malware. • Explore as diversas ferramentas disponíveis no Kali Linux • Entenda o valor do teste de segurança e examine os tipos de teste disponíveis • Aprenda os aspectos básicos do pentest em todo o ciclo de vida do ataque • Instale o Kali Linux em vários sistemas, tanto físicos quanto virtuais • Descubra como usar diferentes ferramentas destinadas à segurança • Estruture um teste de segurança baseado nas ferramentas do Kali Linux • Estenda as ferramentas do Kali para criar técnicas de ataque avançadas • Use o Kali Linux para ajudar a criar relatórios quando o teste terminar “A abordagem concisa, clara e baseada na experiência adotada por Ric Messier para a introdução do Kali Linux e dos testes de cibersegurança é incomparável. Este livro é uma leitura excelente e acessível para iniciantes e um recurso valioso para qualquer pessoa.” —Alexander Arlt, Consultor sênior de segurança, Google

Ver na Amazon
Hacking APIs: Breaking Web Application Programming Interfaces

Hacking APIs: Breaking Web Application Programming Interfaces

Hacking APIs is a crash course on web API security testing that will prepare you to penetration-test APIs, reap high rewards on bug bounty programs, and make your own APIs more secure. You'll learn how REST and GraphQL APIs work in the wild and set up a streamlined API testing lab with Burp Suite and Postman. Then you'll master tools useful for reconnaissance, endpoint analysis, and fuzzing, such as Kiterunner and OWASP Amass. Next, you'll learn to perform common attacks, like those targeting an API's authentication mechanisms and the injection vulnerabilities commonly found in web applications. You'll also learn techniques for bypassing protections against these attacks. In the book's nine guided labs, which target intentionally vulnerable APIs, you'll practice: Enumerating APIs users and endpoints using fuzzing techniques Using Postman to discover an excessive data exposure vulnerability Performing a JSON Web Token attack against an API authentication process Combining multiple API attack techniques to perform a NoSQL injection Attacking a GraphQL API to uncover a broken object level authorization vulnerability

Ver oferta
Gray Hat Hacking: The Ethical Hacker's Handbook, Sixth Edition

Gray Hat Hacking: The Ethical Hacker's Handbook, Sixth Edition

Up-to-date strategies for thwarting the latest, most insidious network attacks This fully updated, industry-standard security resource shows, step by step, how to fortify computer networks by learning and applying effective ethical hacking techniques. Based on curricula developed by the authors at major security conferences and colleges, the book features actionable planning and analysis methods as well as practical steps for identifying and combating both targeted and opportunistic attacks. Gray Hat Hacking: The Ethical Hacker's Handbook, Sixth Edition clearly explains the enemy's devious weapons, skills, and tactics and offers field-tested remedies, case studies, and testing labs. You will get complete coverage of Internet of Things, mobile, and Cloud security along with penetration testing, malware analysis, and reverse engineering techniques. State-of-the-art malware, ransomware, and system exploits are thoroughly explained. Fully revised content includes 7 new chapters covering the latest threats Includes proof-of-concept code stored on the GitHub repository Authors train attendees at major security conferences, including RSA, Black Hat, Defcon, and B-Sides

Ver na Amazon
Bloqueador USB de privacidade de porta USB para PC, notebook, bloco de laptop,

Bloqueador USB de privacidade de porta USB para PC, notebook, bloco de laptop,

Proteção de privacidade aprimorada: protege o link de transmissão de dados para evitar roubo de informações, fornecendo proteção de segurança robusta que protege a privacidade do usuário durante transferências de arquivos e garante uma conexão segura para interações de dispositivos sem preocupações em vários ambientes Uso a longo prazo: a camada protetora resistente ao desgaste, combinada com um corpo de metal resistente, oferece gerenciamento de calor confiável e qualidade duradoura durante o uso diário Entrega eficiente de energia: a tecnologia de chip inteligente garante a identificação automática dos requisitos de energia, fornecendo carregamento eficiente alinhando-se com vários protocolos de carregamento rápido para maior conveniência Proteção contra sobrecarga: evitando riscos de sobrecarga, este bloqueador de dados USB protege a vida útil da bateria e garante um desempenho estável, mantendo um fluxo estável de energia para melhorar a longevidade do dispositivo de forma eficaz Prático de transportar: com atenção à portabilidade, este bloqueador de dados USB oferece um design compacto que é leve e fácil de transportar, melhorando a conveniência do usuário e operação eficiente

Ver na Amazon

📩 Newsletter MundiX

Receba novidades de cibersegurança + um checklist de pentest grátis. Sem spam.

Ao assinar você concorda em receber e-mails. Cancele quando quiser.