Une version manipulée de Bitwarden CLI distribuée via NPM
Un grave incident de sécurité a touché les utilisateurs du client en ligne de commande Bitwarden. Entre 23h57 le 22 avril et 1h30 le 23 avril, heure allemande, le paquet npm @bitwarden/cli a été livré en version 2026.4.0 avec du code malveillant. Cette version manipulée dérobait systématiquement les identifiants des utilisateurs ayant installé le paquet via NPM durant ce créneau.
Bitwarden souligne toutefois que les données déposées dans le coffre-fort de mots de passe lui-même (vault data) ne sont pas concernées. L'équipe de sécurité de l'entreprise a pu identifier et contenir le paquet manipulé. La distribution s'est faite exclusivement via NPM – qui n'a pas obtenu le paquet par ce canal n'est pas touché par l'attaque.
Un volet d'une attaque plus large sur la chaîne d'approvisionnement de Checkmarx
L'incident s'inscrit dans le cadre d'une attaque plus vaste contre la chaîne d'approvisionnement de Checkmarx. La version compromise 2026.4.0 est désormais marquée comme obsolète (deprecated) et l'accès détourné a été révoqué. Des chercheurs en sécurité de JFrog et Socket.dev ont analysé le maliciel en détail et mis au jour des mécanismes d'attaque sophistiqués.
Détails techniques de l'attaque
Le fichier package.json manipulé contenait un script preinstall qui exécutait automatiquement, lors de l'installation, un fichier de chargement nommé bw_setup.js. Celui-ci téléchargeait depuis GitHub le runtime Bun en version 1.3.13 et lançait une charge utile JavaScript obfusquée baptisée bw1.js.
Le code malveillant visait un large spectre de données sensibles et collectait systématiquement :
- Les jetons GitHub et npm
- Les clés SSH
- Les historiques de shell
- Les identifiants pour AWS, Google Cloud et Azure
- Les secrets GitHub Actions
- Les identifiants Git
- Les fichiers .env
- Les fichiers de configuration d'outils d'IA tels que Claude et MCP
Des mécanismes d'exfiltration sophistiqués
Les données dérobées étaient principalement transmises chiffrées à l'adresse audit.checkmarx.cx (IP : 94.154.172.43). Comme mécanisme de repli, le maliciel employait une approche particulièrement raffinée : les jetons GitHub volés étaient validés afin de créer, sous le compte de la victime, des dépôts servant à l'exfiltration de données.
Les attaquants dissimulaient alors des jetons d'accès personnels (PAT) encodés en double base64 dans des messages de commit portant le marqueur caractéristique « LongLiveTheResistanceAgainstMachines ». Cette méthode témoigne du haut professionnalisme de l'attaque et de la démarche élaborée des cybercriminels.
Portée pour le secteur de la sécurité
Cet incident illustre les risques croissants dans la chaîne d'approvisionnement logicielle et montre que même des outils de confiance tels que Bitwarden CLI peuvent devenir la cible d'attaques sur la chaîne d'approvisionnement. Pour les entreprises et les responsables de la sécurité, cette attaque souligne la nécessité de rester vigilant, y compris avec des outils de sécurité établis.
Le fait que les attaquants aient délibérément visé des identifiants de développeurs et des accès cloud met en évidence la valeur de ces informations pour les cybercriminels. Avec des jetons GitHub, des clés AWS et des identifiants SSH volés, des attaquants peuvent causer des dommages considérables aux infrastructures d'entreprise.
Mesures immédiates pour les personnes concernées
Les utilisateurs ayant installé la version 2026.4.0 pendant le créneau indiqué doivent agir sans délai. Bitwarden recommande les étapes suivantes :
Nettoyage technique
- Désinstallation avec la commande : npm uninstall -g @bitwarden/cli
- Vidage du cache npm
- Recherche des artefacts bw_setup.js, bw1.js et du runtime Bun téléchargé
- Blocage du domaine audit.checkmarx.cx et de l'IP 94.154.172.43 dans les pare-feu
Rotation des identifiants
La rotation immédiate de tous les identifiants stockés sur le système compromis est particulièrement importante :
- Jetons d'accès personnels GitHub
- Jetons npm
- Clés d'accès AWS
- Secrets Azure et Google Cloud Platform
- Clés SSH
Les administrateurs devraient en outre vérifier les workflows GitHub Actions à la recherche d'exécutions non autorisées et examiner les activités suspectes dans les dépôts.
Mesures de prévention et perspectives
Cet incident montre l'importance de stratégies de sécurité globales. Les entreprises devraient examiner régulièrement leurs dépendances aux paquets NPM et mettre en place des systèmes de supervision capables de détecter des activités réseau inhabituelles. L'utilisation de fichiers package-lock et la vérification des sommes de contrôle peuvent offrir une protection supplémentaire.
Actuellement, tous les dépôts livrent de nouveau la version régulière 2026.3.0. Selon le fabricant, celle-ci et toutes les autres versions de Bitwarden CLI, hormis la 2026.4.0, ne sont pas concernées. Bitwarden assure que les systèmes de production et les données des coffres-forts n'ont à aucun moment été compromis.
Pour le secteur de la sécurité, cet incident souligne la nécessité de considérer la sécurité de la chaîne d'approvisionnement comme une composante à part entière de la stratégie de cybersécurité. Le professionnalisme de l'attaque et la finesse des mécanismes d'exfiltration montrent qu'une vigilance maximale s'impose y compris dans des écosystèmes de confiance tels que NPM.