Le CLI de Bitwarden compromis dans une attaque de la chaîne d'approvisionnement de Checkmarx, exposant les secrets des développeurs
L'interface de ligne de commande (CLI) de **Bitwarden** a récemment été compromise dans le cadre de l'attaque de la chaîne d'approvisionnement en cours de **Checkmarx**. Le package malveillant version @bitwarden/[email protected] a été découvert en train de voler des données sensibles, y compris des tokens GitHub et npm, pouvant mener à d'autres compromissions.

Le **Bitwarden CLI**, l'interface de ligne de commande du gestionnaire de mots de passe **Bitwarden**, aurait été compromis dans le cadre d'une campagne de chaîne d'approvisionnement **Checkmarx** nouvellement découverte et en cours, selon les conclusions de **JFrog** et **Socket**.
"La version du package affectée semble être @bitwarden/[email protected], et le code malveillant a été publié dans 'bw1.js', un fichier inclus dans le contenu du package", a déclaré la société de sécurité des applications.
"L'attaque semble avoir exploité une GitHub Action compromise dans le pipeline CI/CD de Bitwarden, conformément au schéma observé sur d'autres dépôts affectés dans cette campagne."
Dans un post sur X, **JFrog** a indiqué que la version non autorisée du package "vole des tokens GitHub/npm, .ssh, .env, l'historique du shell, des GitHub Actions et des secrets cloud, puis exfiltre les données vers des domaines privés et sous forme de commits GitHub."
Plus précisément, le code malveillant est exécuté au moyen d'un hook preinstall, entraînant le vol de secrets locaux, CI, GitHub et cloud. Les données sont exfiltrées vers le domaine "audit.checkmarx[.]cx" et vers un dépôt GitHub en tant que solution de repli si la méthode principale échoue.
L'ensemble de la série d'actions est listé ci-dessous -
* Il lance un voleur d'identifiants qui cible les secrets des développeurs, les environnements GitHub Actions et les configurations d'outils de codage d'intelligence artificielle (IA), y compris Claude, Kiro, Cursor, Codex CLI et Aider.
* Les données volées sont chiffrées avec AES-256-GCM et exfiltrées vers audit.checkmarx[.]cx, un domaine usurpant l'identité de Checkmarx.
* Si des tokens GitHub sont trouvés, le malware les utilise pour injecter des workflows Actions malveillants dans les dépôts et extraire les secrets CI/CD.
"Un seul développeur avec @bitwarden/[email protected] installé peut devenir le point d'entrée d'une compromission plus large de la chaîne d'approvisionnement, l'attaquant obtenant un accès persistant à l'injection de workflows à tous les pipelines CI/CD que le token du développeur peut atteindre", a déclaré **StepSecurity**.
Bien que la version malveillante ne soit plus disponible au téléchargement sur npm, **Socket** a indiqué que la compromission suit le même vecteur de chaîne d'approvisionnement GitHub Actions identifié dans la campagne **Checkmarx**.
Dans le cadre de cet effort, des acteurs malveillants ont été trouvés en train d'abuser de tokens GitHub volés pour injecter un nouveau workflow GitHub Actions qui capture les secrets disponibles pour l'exécution du workflow, et utilise les identifiants npm récoltés pour pousser des versions malveillantes du package afin de lire le malware aux utilisateurs en aval.
Selon le chercheur en sécurité Adnan Khan, l'acteur malveillant aurait utilisé un workflow malveillant pour publier le CLI Bitwarden malveillant. "Je pense que c'est la première fois qu'un package utilisant la publication de confiance NPM a été compromis", a déclaré Khan.
Attack Chain

*Bitwarden CLI Attack Chain | Source : OX Security*
On soupçonne que l'acteur malveillant connu sous le nom de TeamPCP est derrière la dernière attaque visant **Checkmarx**. Au moment de la rédaction, les comptes de TeamPCP ont été suspendus par GitHub pour violation des règles de la plateforme.
**OX Security**, dans une analyse de l'attaque, a déclaré avoir identifié la chaîne "Shai-Hulud: The Third Coming" dans le package, suggérant que cela pourrait être la prochaine phase de la campagne d'attaque de la chaîne d'approvisionnement qui a été révélée l'année dernière.

*Référence à "Shai-Hulud: The Third Coming"*
"Le dernier incident Shai Hulud n'est que le dernier d'une longue série de menaces ciblant les développeurs du monde entier. Les données des utilisateurs sont publiquement exfiltrées vers GitHub, passant souvent inaperçues car les outils de sécurité ne signalent généralement pas les données envoyées là-bas", a déclaré Moshe Siman Tov Bustan, Security Research Team Lead chez **OX Security**.
"Cela rend le risque considérablement plus dangereux : quiconque recherchant sur GitHub peut potentiellement trouver et accéder à ces identifiants. À ce stade, les données sensibles ne sont plus entre les mains d'un seul acteur malveillant – elles sont exposées à n'importe qui."
Comme dans le cas de l'incident **Checkmarx**, les données volées sont exfiltrées vers des dépôts publics créés sous des comptes de victimes en utilisant un schéma de nommage inspiré de Dune dans le même format "<mot>-<mot>-<3 chiffres>". Mais dans un changement intéressant, le malware est également conçu pour arrêter son exécution sur les systèmes si leur locale correspond à la Russie.
"Les outils partagés suggèrent fortement un lien avec le même écosystème de malware, mais les signatures opérationnelles diffèrent d'une manière qui complique l'attribution", a déclaré **Socket**. "Cela suggère soit un opérateur différent utilisant une infrastructure partagée, un groupe dissident avec des motivations idéologiques plus fortes, soit une évolution de la posture publique de la campagne."
**Bitwarden** a confirmé l'incident et a déclaré qu'il provenait du compromis de son mécanisme de distribution npm suite à l'attaque de la chaîne d'approvisionnement **Checkmarx**, mais a souligné qu'aucune donnée d'utilisateur final n'a été accédée dans le cadre de l'attaque. La déclaration complète partagée avec The Hacker News est reproduite verbatim ci-dessous -
*L'équipe de sécurité de Bitwarden a identifié et contenu un package malveillant qui a été brièvement distribué via le chemin de livraison npm pour @bitwarden/[email protected] entre 17h57 et 19h30 (ET) le 22 avril 2026, en lien avec un incident plus large de la chaîne d'approvisionnement Checkmarx.*
*L'enquête n'a trouvé aucune preuve que les données de coffre des utilisateurs finaux aient été accédées ou risquaient de l'être, ou que les données de production ou les systèmes de production aient été compromis. Une fois le problème détecté, l'accès compromis a été révoqué, la version npm malveillante a été dépréciée et des mesures de remédiation ont été immédiatement lancées.*
*Le problème a affecté le mécanisme de distribution npm pour le CLI pendant cette fenêtre limitée, et non l'intégrité du code légitime du Bitwarden CLI ou des données de coffre stockées.*
*Les utilisateurs qui n'ont pas téléchargé le package depuis npm pendant cette fenêtre n'ont pas été affectés. Bitwarden a terminé un examen des environnements internes, des chemins de publication et des systèmes associés, et aucun produit ou environnement supplémentaire affecté n'a été identifié à ce jour. Un CVE pour la version 2026.4.0 du Bitwarden CLI est émis en lien avec cet incident.*
Selon une analyse de l'attaque publiée par **Endor Labs**, le dépôt GitHub de **Bitwarden** utilise "checkmarx/ast-github-action", qui était l'un des artefacts compromis dans l'incident de la chaîne d'approvisionnement **Checkmarx**. Le fournisseur de sécurité des applications a décrit le CLI Bitwarden malveillant comme l'un des "payloads de chaîne d'approvisionnement npm les plus capables" publiés à ce jour.
"Il combine un récolteur de secrets multi-cloud ciblant six surfaces de secrets distinctes, un ver npm auto-propagateur qui réinfecte tous les packages qu'un token victime peut publier, un canal C2 de dépôt mort de commits GitHub avec livraison de commandes signées RSA, une exfiltration par chiffrement authentifié qui survit à la saisie du dépôt, une persistance shell RC, et un nouveau module qui cible spécifiquement