Bitwarden CLI Compromised in Ongoing Checkmarx Supply Chain Campaign

· devtools ai-agents coding · Source ↗

TLDR

  • Bitwarden CLI npm package 2026.4.0 was injected with credential-harvesting malware via a compromised GitHub Action, part of the broader Checkmarx supply chain campaign.

Key Takeaways

  • Malicious bw1.js shares C2 infrastructure (audit.checkmarx[.]cx/v1/telemetry) and gzip+base64 payload structure with the earlier Checkmarx mcpAddon.js attack.
  • Harvests GitHub tokens, AWS/Azure/GCP credentials, npm tokens, SSH keys, and Claude/MCP config files via Runner.Worker memory scraping and env vars.
  • Exfiltrates via Dune-themed public GitHub repos and npm token republishing; uses Bun v1.3.13 runtime downloaded from GitHub releases at install time.
  • Russian locale kill switch exits silently; Shai-Hulud/Butlerian Jihad branding embedded in the payload suggests a different operator or splinter group reusing Checkmarx infrastructure.
  • Only @bitwarden/cli 2026.4.0 npm package is confirmed compromised; Chrome extension, MCP server, and other Bitwarden distributions are unaffected.

Hacker News Comment Review

  • Strong consensus that shipping a security CLI in JS/npm is architectural risk; multiple commenters recommended rbw (Rust), pass, and gopass as lower-dependency-tree alternatives.
  • The Russian locale kill switch drew pointed reactions; the overt Dune ideological branding is seen as a notable shift from the deceptive-but-neutral posture of the earlier Checkmarx campaign.
  • A separate practical concern surfaced: bw list outputs full credentials including live TOTP codes to stdout, an independent accidental-exposure vector unrelated to this supply chain compromise.

Notable Comments

  • @Scene_Cast2: Chrome extension recently caused browser grinding via mojo IPC message spam; questions whether the anomaly is related to this compromise.

Original | Discuss on HN