écrits/news/2026/05
News25 mai 2026·6 min

TrapDoor : Une attaque massive de la chaîne d'approvisionnement frappe npm, PyPI et Crates.io avec 34 packages malveillants

Les chercheurs de Socket Security ont découvert TrapDoor, une attaque coordonnée de la chaîne d'approvisionnement ciblant simultanément npm, PyPI et Crates.io avec 34 packages malveillants — avec une nouveauté alarmante : des instructions cachées dans les fichiers de configuration des assistants de programmation IA.

Les chercheurs en sécurité de Socket ont découvert TrapDoor, l'une des attaques de la chaîne d'approvisionnement les plus sophistiquées de 2026 — une campagne coordonnée déployant 34 packages malveillants sur npm, PyPI et Crates.io simultanément, ciblant les développeurs des communautés crypto, DeFi, IA et cybersécurité.

Points clés

  • 34 packages malveillants et 384 versions réparties sur npm (21), PyPI (7) et Crates.io (6)
  • Vole les clés de portefeuilles crypto, clés SSH, identifiants AWS, tokens GitHub, données de navigateur et variables d'environnement
  • Première détection le 22 mai 2026 ; les attaquants ont continué à publier de nouvelles versions même après les suppressions
  • Temps de détection médian par Socket : 5 minutes 27 secondes — détection la plus rapide : 58 secondes après la publication
  • Ouverture de pull requests malveillantes sur LangChain, LlamaIndex, MetaGPT, OpenHands et browser-use

Un nouveau vecteur : les assistants IA de programmation

Ce qui rend TrapDoor particulièrement inquiétant, c'est son ciblage délibéré des assistants IA comme Cursor et Claude. Les packages malveillants implantent des fichiers .cursorrules et CLAUDE.md modifiés contenant des instructions cachées encodées avec des caractères Unicode de largeur nulle. Lorsqu'un développeur ouvre le projet infecté et travaille avec un assistant IA, celui-ci lit ces fichiers comme des configurations de confiance — et peut exécuter à son insu des commandes qui exfiltrent des secrets.

L'attaquant a également ouvert des pull requests sur des projets open source majeurs — LangChain, LlamaIndex, MetaGPT, OpenHands et browser-use — tentant d'injecter ces fichiers de configuration malveillants directement dans des bases de code utilisées par des millions de développeurs.

Comment fonctionne l'attaque

TrapDoor utilise des chemins d'exécution natifs à chaque écosystème pour maximiser l'infection :

  • npm : Des hooks postinstall exécutent un récolteur de credentials de 1 149 lignes (trap-core.js) qui valide les tokens AWS et GitHub volés via des appels API en direct, puis tente un déplacement latéral via SSH sur le réseau du développeur
  • PyPI : Les packages s'auto-exécutent à l'importation, téléchargent et exécutent du JavaScript depuis un domaine GitHub Pages contrôlé par l'attaquant via node -e
  • Crates.io : Des scripts build.rs malveillants recherchent les keystores de portefeuilles locaux, les chiffrent par XOR avec la clé cargo-build-helper-2026, et les exfiltrent vers des GitHub Gists

La persistance est établie via plusieurs vecteurs : .cursorrules, CLAUDE.md, hooks Git, hooks shell, services systemd et cron jobs — rendant le nettoyage difficile après une compromission initiale.

Noms de packages ciblés

Les packages ont été conçus avec des noms qui semblent légitimes aux développeurs des communautés visées :

Exemples npm : crypto-credential-scanner, prompt-engineering-toolkit, solidity-deploy-guard, llm-context-compressor, wallet-security-checker

Exemples PyPI : eth-security-auditor, defi-risk-scanner, cryptowallet-safety

Exemples Crates.io : sui-move-build-helper, move-compiler-tools, sui-framework-helpers

Que faire ?

Si vous avez installé des packages npm, PyPI ou Crates.io depuis des sources inconnues ces derniers jours :

  1. Auditez vos lockfiles et vérifiez les packages installés par rapport à la liste IOC publiée par Socket
  2. Révoquez vos credentials immédiatement : clés SSH, credentials AWS, tokens GitHub, et passphrases de portefeuilles crypto
  3. Recherchez les fichiers inattendus : .cursorrules ou CLAUDE.md que vous n'avez pas créés dans vos projets
  4. Auditez vos pipelines CI/CD pour détecter tout signe d'exfiltration ou de trafic sortant anormal
  5. Épinglez les versions exactes des packages — évitez ^ ou latest dans vos spécifications de dépendances

Contexte

Les attaques de la chaîne d'approvisionnement ciblant les registres de développeurs ont fortement progressé en 2026. Ce qui distingue TrapDoor, c'est la combinaison d'une portée multi-écosystèmes, du détournement des assistants IA, et de la validation en temps réel des credentials volés — les attaquants vérifient que les tokens sont toujours actifs avant exfiltration, maximisant la valeur de chaque compromission.

L'équipe de sécurité Socket a classifié les 34 packages comme malveillants et en a informé les registres npm, PyPI et Crates.io. La surveillance des nouveaux packages liés à la même infrastructure se poursuit.


Source : Socket Security