O ataque TrapDoor acendeu um novo alerta vermelho na comunidade de segurança cibernética. A campanha maliciosa, identificada recentemente por pesquisadores, explora os ecossistemas npm, PyPI e Crates.io para distribuir malware capaz de roubar credenciais sensíveis, comprometer ambientes Linux e até manipular assistentes de programação baseados em inteligência artificial, como Cursor e Claude.
O caso chama atenção porque o malware TrapDoor não mira usuários comuns. O alvo principal são desenvolvedores, engenheiros DevOps, profissionais de segurança, projetos ligados a criptomoedas, ambientes DeFi, aplicações de IA e servidores corporativos conectados à nuvem. Em outras palavras, trata-se de um ataque sofisticado voltado para quem possui acesso privilegiado a infraestruturas críticas.
Neste artigo, você vai entender como funciona a campanha TrapDoor, como os criminosos escondem códigos maliciosos em pacotes aparentemente legítimos, quais técnicas de persistência são usadas em sistemas Linux e por que a manipulação de ferramentas de IA representa um novo capítulo nos ataques à cadeia de suprimentos.
O que é o ataque TrapDoor e como ele opera
O ataque TrapDoor é uma campanha de comprometimento da cadeia de suprimentos de software que utiliza pacotes maliciosos publicados em repositórios amplamente usados por desenvolvedores. Segundo os pesquisadores, mais de 34 pacotes maliciosos e aproximadamente 384 versões infectadas foram identificados nos ecossistemas npm, PyPI e Crates.io.
O objetivo do malware é realizar exfiltração de dados, roubo de credenciais e comprometimento persistente das máquinas infectadas. Entre os principais alvos estão:
- Chaves SSH
- Credenciais AWS
- Tokens do GitHub
- Carteiras de criptomoedas
- Variáveis de ambiente contendo segredos
- Tokens de acesso de plataformas de IA
Os operadores da campanha também demonstraram interesse especial em comunidades relacionadas a Solana, aplicações de IA generativa e projetos de infraestrutura em nuvem.
Um detalhe preocupante é que o malware utiliza técnicas modernas de typosquatting, publicação de bibliotecas falsas e scripts pós-instalação altamente ofuscados. Isso dificulta a detecção manual por desenvolvedores que instalam dependências rapidamente sem revisar o conteúdo dos pacotes.

Anatomia do golpe: Como o malware infecta npm, PyPI e Crates.io
A campanha TrapDoor foi desenhada para funcionar de maneira adaptável em diferentes linguagens e ecossistemas de desenvolvimento.
Ecossistema npm e o script trap-core.js
No ambiente npm, os atacantes utilizaram scripts maliciosos chamados trap-core.js. Esses arquivos eram executados automaticamente durante a instalação dos pacotes usando eventos como:
- postinstall
- preinstall
Assim que o pacote era instalado, o script coletava informações do sistema e buscava arquivos sensíveis no ambiente Linux e macOS.
O malware também verificava a presença de:
- Diretórios .ssh
- Tokens do GitHub
- Arquivos .env
- Credenciais da AWS
- Carteiras de criptomoedas
Em seguida, os dados eram enviados silenciosamente para servidores controlados pelos criminosos.
Outro aspecto importante é o uso de técnicas de evasão. O código frequentemente aparecia ofuscado, compactado ou dividido em múltiplos estágios para evitar ferramentas automáticas de análise.
Ecossistema PyPI (Python) e a delegação remota via GitHub Pages
No ecossistema PyPI, os operadores adotaram uma abordagem ainda mais furtiva.
Os pacotes em Python funcionavam inicialmente como loaders aparentemente inofensivos. Porém, após a instalação, eles buscavam cargas adicionais hospedadas remotamente em páginas do GitHub Pages.
Essa técnica traz vantagens para os atacantes:
- Facilita a troca dinâmica da carga maliciosa
- Reduz a chance de detecção inicial
- Permite atualização contínua do malware
- Dificulta análises estáticas
Além disso, alguns pacotes utilizavam mecanismos de temporização para atrasar a execução do código malicioso e evitar sandboxes automatizadas.
Esse comportamento é particularmente perigoso em pipelines CI/CD automatizados, onde bibliotecas podem ser instaladas sem revisão humana detalhada.
Ecossistema Crates.io (Rust) e o truque do script build.rs
O ecossistema Rust também foi alvo da campanha TrapDoor.
Nesse caso, os atacantes exploraram o arquivo build.rs, um script executado durante o processo de compilação dos projetos Rust.
A técnica permitia executar comandos maliciosos antes mesmo da aplicação ser finalizada, criando uma oportunidade perfeita para:
- Coleta de credenciais
- Modificação de arquivos locais
- Instalação de persistência
- Comunicação com servidores externos
Como muitos desenvolvedores confiam na reputação de segurança do ecossistema Rust, o ataque ganha ainda mais eficiência psicológica.
Persistência no Linux e movimentação lateral
Depois da infecção inicial, o malware TrapDoor tenta permanecer ativo no sistema comprometido utilizando diferentes mecanismos de persistência no Linux.
Entre os métodos identificados estão:
- Criação de tarefas cron
- Instalação de serviços no systemd
- Alteração de arquivos .bashrc
- Modificação de .profile
- Inclusão de hooks maliciosos no Git
Essas técnicas permitem que o malware continue executando mesmo após reinicializações do sistema.
O uso de serviços systemd é particularmente perigoso porque muitos administradores não monitoram constantemente serviços recém-criados ou nomes suspeitos escondidos entre processos legítimos.
O malware também tenta realizar movimentação lateral usando chaves SSH encontradas nas máquinas comprometidas. Com isso, os criminosos podem acessar outros servidores internos, ambientes de produção ou clusters em nuvem.
Em ambientes DevOps modernos, onde múltiplos servidores compartilham credenciais automatizadas, esse tipo de ataque pode rapidamente escalar para comprometimentos massivos.
O perigo real: Injetando instruções ocultas para assistentes de IA (Cursor e Claude)
A parte mais inovadora e alarmante da campanha TrapDoor envolve a manipulação de assistentes de IA usados por desenvolvedores.
Os atacantes passaram a incluir arquivos como:
- .cursorrules
- CLAUDE.md
Esses arquivos são usados por ferramentas como Cursor e Claude para orientar o comportamento da IA durante sessões de programação.
A estratégia consiste em inserir instruções ocultas capazes de manipular os assistentes para:
- Expor segredos do projeto
- Sugerir códigos inseguros
- Inserir comandos maliciosos
- Criar Pull Requests contaminados
- Exfiltrar credenciais silenciosamente
Segundo os pesquisadores, os criminosos tentaram usar essa abordagem contra projetos populares como LangChain e LangFlow.
O risco é enorme porque muitos desenvolvedores confiam nas sugestões geradas pela IA sem revisar profundamente cada alteração sugerida.
Na prática, o ataque transforma a própria ferramenta de produtividade em um possível vetor de comprometimento.
Isso inaugura uma nova categoria de ameaça: ataques direcionados à interação entre humanos e inteligências artificiais em ambientes de desenvolvimento.
Lista de pacotes maliciosos identificados
Os pesquisadores divulgaram diversos pacotes associados ao ataque TrapDoor.
Pacotes maliciosos no npm
- pumptoolforvolumeandcomment
- debugdogs
- crypto-encrypt-ts
- nodejs-backpack
- solsafe
Pacotes maliciosos no PyPI
- pytorch-transform
- openai-helper-tools
- solana-api-toolkit
- types-python-utils
Pacotes maliciosos no Crates.io
- rustdecimal
- serde-helper-utils
- cryptoops-rs
- fasttokens
Os nomes podem mudar constantemente, já que campanhas desse tipo frequentemente removem e republicam variantes modificadas.
Por isso, auditorias contínuas de dependências se tornaram indispensáveis.
Como se proteger de ataques à cadeia de suprimentos no Linux
A melhor defesa contra campanhas como o ataque TrapDoor envolve múltiplas camadas de segurança.
Algumas práticas recomendadas incluem:
Revise dependências antes da instalação
Nunca instale bibliotecas apenas pelo nome. Verifique:
- Popularidade do pacote
- Histórico do mantenedor
- Número de downloads
- Código-fonte disponível
- Data de criação
Pacotes recém-publicados merecem atenção especial.
Monitore serviços systemd ativos
Administradores Linux devem revisar periodicamente:
systemctl list-units --type=serviceTambém é importante investigar serviços desconhecidos ou com nomes suspeitos.
Audite tarefas cron e scripts de shell
Verifique alterações inesperadas em:
- /etc/crontab
- ~/.bashrc
- ~/.profile
- ~/.zshrc
Esses arquivos frequentemente são usados para persistência maliciosa.
Analise Pull Requests com arquivos de IA
Arquivos como:
- .cursorrules
- CLAUDE.md
devem ser tratados com o mesmo cuidado dedicado a scripts executáveis.
Instruções maliciosas podem influenciar assistentes de IA silenciosamente.
Use scanners de dependências
Ferramentas de análise de segurança ajudam a detectar:
- Typosquatting
- Dependências comprometidas
- Bibliotecas abandonadas
- Scripts suspeitos
Monitoramento contínuo é essencial em pipelines modernos.
Conclusão e os novos rumos do cibercrime
O ataque TrapDoor mostra como os ataques à cadeia de suprimentos evoluíram rapidamente nos últimos anos. O foco deixou de ser apenas o usuário final e passou diretamente para desenvolvedores, mantenedores de pacotes e ambientes de infraestrutura crítica.
A campanha combina roubo de credenciais, persistência avançada no Linux, movimentação lateral via SSH e até manipulação de ferramentas de IA como Cursor e Claude. Isso evidencia que a segurança moderna agora precisa considerar não apenas softwares tradicionais, mas também o comportamento dos assistentes inteligentes usados durante o desenvolvimento.
Para empresas e profissionais independentes, a principal lição é clara: confiar cegamente em dependências externas ou sugestões automatizadas se tornou um risco real.