Retour à l'accueil

RAT dans Axios npm : dépendance fantôme et fuite de Claude Code

Le 31 mars 2026, des attaques sur npm ont été enregistrées : RAT dans Axios via dépendance fantôme et fuite de source Claude Code. Analyse des mécanismes, contrôles, et réécriture d'architecture clean-room.

Trojan dans Axios et 500k lignes de Claude Code : analyse de l'attaque npm
Advertisement 728x90

Piratage du compte npm d'Axios : RAT via dépendance fantôme et fuite du code Claude

Le 31 mars 2026, des attaquants ont piraté le compte npm du mainteneur d'Axios (jasonsaayman), publiant des versions malveillantes 1.14.1 (dernière) et 0.30.4 (ancienne). Les paquets ont distribué un cheval de Troie RAT pendant trois heures — de 00:21 à 03:15 UTC. Avec 100 millions de téléchargements hebdomadaires, les dégâts potentiels étaient considérables.

Le code d'Axios lui-même est resté intact. Les attaquants ont ajouté une dépendance à [email protected] dans package.json — un paquet créé un jour avant l'attaque. Cette dépendance n'est pas importée dans le code, agissant comme une dépendance fantôme.

Mécanisme de l'attaque

L'installation se déroule comme suit :

Google AdInline article slot
  • npm install télécharge toutes les dépendances de package.json.
  • plain-crypto-js exécute un script postinstall.
  • Le script télécharge une charge utile depuis un serveur C2.
  • Un RAT multiplateforme pour macOS, Windows et Linux est déployé.
  • Le script restaure un package.json propre, masquant les traces.

Une revue de code standard ne détectera pas le problème : les fichiers JS sont propres, et la dépendance suspecte n'est visible que dans le manifeste. Les scanners doivent vérifier les scripts postinstall des paquets transitifs.

Actions immédiates

| Branche | Version malveillante | Version sûre |

|--------|-------------------|--------------|

Google AdInline article slot

| dernière | 1.14.1 | 1.14.0 |

| ancienne | 0.30.4 | 0.30.3 |

Vérifiez :

Google AdInline article slot
  • package-lock.json / yarn.lock pour les versions malveillantes.
  • Présence de plain-crypto-js dans les dépendances.

Si trouvé — le système est infecté. Faites tourner les clés, jetons et secrets. Les IOC ont été publiés par StepSecurity, Socket et d'autres.

Attribué à UNC1069/Lazarus — une attaque typique de la chaîne d'approvisionnement via piratage de compte sans compromettre le registre npm.

Fuite du code source Claude via Sourcemap

Le même jour, Anthropic a publié @anthropic-ai/[email protected] avec un fichier cli.js.map de 59,8 Mo. Le sourcemap a révélé ~512 000 lignes de TypeScript, 1 900 fichiers, invites système, logique de mémoire, planification et fonctionnalités non annoncées.

Cause et conséquences

Une erreur dans .npmignore : les source maps n'ont pas été exclues du paquet. Le sourcemap référençait un bucket R2 public d'Anthropic. Le code a été rapidement miroité sur GitHub après un rapport de Chaofan Shou.

Anthropic a supprimé la version et publié un correctif, mais les miroirs se sont propagés. Ce n'était pas un piratage mais une erreur de build.

Implémentation en salle blanche : De la fuite au projet open source

Sigrid Jean (instructkr) a réécrit l'architecture de Claude Code en Python sans copier le code source, évitant le DMCA. Utilisé oh-my-codex pour l'accélération.

Implémenté :

  • Harnais d'agent.
  • Outils.
  • Mémoire et planification.
  • Sous-agents en essaims.

Le dépôt claw-code a gagné 50 000 étoiles en 2 heures, 100 000+ en un jour — un record GitHub. Un port Rust est également populaire. Le projet est positionné comme des outils de harnais améliorés.

Points clés à retenir

  • Dépendance fantôme dans Axios : RAT se faisant passer pour une bibliothèque crypto, activé via postinstall, multiplateforme.
  • Fuite de Claude Code : 512k lignes via sourcemap dû à un .npmignore manquant.
  • Approche en salle blanche : Réécrire l'architecture en Python/Rust contourne le DMCA, crée une alternative open source.
  • Vérifications des fichiers de verrouillage : Essentiel pour détecter 1.14.1/0.30.4 et plain-crypto-js.
  • Audits des comptes npm : Le piratage de mainteneur est un vecteur pour les attaques de la chaîne d'approvisionnement.

— Editorial Team

Advertisement 728x90

Lire ensuite