
2026/04/23 23:17
Bitwarden CLI、継続中の Checkmarz サプライチェーン攻撃で乗っ取られたと判明
RSS: https://news.ycombinator.com/rss
要約▶
日本語訳:
セキュリティ研究者の InstallSocket が、継続中の「Checkmarx」キャンペーンの一環として、Bitwarden CLI ツール(@bitwarden/cli バージョン 2026.4.0)を対象とした重大なサプライチェーン攻撃を発見した。当該侵害は npm パッケージ内の
bw1.js ファイルにあり、Bitwarden のビルドパイプラインにおける改ざんされた GitHub Action を利用して悪意のあるコードを注入したものである。これは CLI を使用する組織に対して直ちに脅威をもたらすものの、Chrome 拡張機能や MCP サーバーなどの他の配信形態は影響を受けていない。
悪意のあるペイロードは、主要なクラウドプロバイダー(AWS、Azure、GCP)、npm、SSH および Claude/MCP の設定ファイルにアクセスするためにメモリーをスクレイピングし、機密認証情報を収集することを目的としている。データを流出させる手法としては、「Dune 風」の命名規則を用いた GitHub API アップロードや、npm トークンを盗むためのパッケージのリパブリッシュが含まれる。このリスクに直面している組織は、InstallSocket からのさらなる技術分析的な確認を待たずに、直ちにビルドログを検証して侵害の指標(改ざんされたシェルプロフィール(
~/.bashrc、~/.zshrc)、特定のエビディングファイル(/tmp/tmp.987654321.lock)、「Shai-Hulud」や"Butlerian Jihad"といったキーワードなど)を特定し、すべての公開された機密情報(SSH キー、トークン、CI/CD クレデンシャル等)を再発行するよう求める。本文
usSocket が提供する安全対策により、依存関係を能動的に保護してください。usSocket は、悪意のあるオープンソースパッケージをコード内に導入される前にブロックします。
Bitwarden CLI(コマンドラインインターフェース)が Checkmarx のサプライチェーン攻撃キャンペーンの一環として乗っ取られていることが、Socket の研究者によって発見されました。このオープンソースパスワードマネージャーは 1000 万人以上のユーザーと 5 万を超える企業の利用を収益しており、企業導入率ではトップ 3 にランク付けされています。
影響を受けたパッケージのバージョンは
@bitwarden/cli の 2026.4.0 と考えられており、悪意のあるコードはパッケージに含められている bw1.js というファイルに公開されました。この攻撃手法は、Bitwarden の CI/CD パイプラインにある GitHub Action が乗っ取られたものであり、同キャンペーンで影響を受けた他のリポジトリでも観察されたパターンと一致しています。
現時点で確認されている事項:
- Bitwarden CLI のビルドが影響を受けました。
- この乗っ取りは、より広範な Checkmarx キャンペーンで特定された GitHub Actions を介したサプライチェーンベクターと同じ手法を用いています。
- 現在は調査が続行中です。Socket のセキュリティ研究チームは包括的な技術分析を実施しており、影響を受けたバージョン、侵害指標(Indicators of Compromise)、および是正ガイドラインを含む詳細な結果を発表します。
Bitwarden CLI をご使用の場合は、CI ログの再確認と、乗っ取られたワークフローによって露見された可能性のある機密情報のリクエレーション(ローテーション)をお勧めします。現時点において、この乗っ取りは CLI の npm パッケージにのみ関連しており、Bitwarden の Chrome 拡張機能、MCP サーバー、および他の正規の配布形態は現在影響されていません。
技術分析:
-
ファイル詳細: 悪意のあるペイロードは
という名前のファイルに存在し、昨日分析を行った Checkmarx のbw1.js
と共通のインフラストラクチャを共有しています。mcpAddon.js- 同じ C2 エンドポイント:
(シード値:__decodeScrambled
)で暗号化されている同一の0x3039
エンドポイントをを使用します。流出はさらに GitHub API(コミットベース)および npm レジストリ(トークン窃盗・再公開)を通じて行われています。audit.checkmarx[.]cx/v1/telemetry - 埋め込まれたペイロード:
とgzip
の構造を用いた以下の要素が含まれています:base64- GitHub Actions Runner.Worker を対象とした Python メモリスクレイピングスクリプト。
- 再公開された npm パッケージ用の
ロードャー。setup.mjs - GitHub Actions ワークフロー YAML ファイル。
- ハードコーディングされた RSA 公開鍵。
- イデオロギー的な宣言文(マニフェスト)の文字列。
- 認証情報の収集: Runner.Worker のメモリスクレイピングおよび環境変数経由での GitHub トークン、
ファイルおよび環境変数経由での AWS 認証情報、~/.aws/
を介した Azure トークン、azd
および npm 設定ファイル(gcloud config config-helper
)経由での GCP 認証情報、SSH 鍵、環境変数、および Claude/MCP 設定ファイルからの収集。.npmrc - GitHub への流出: 被害者アカウントの下に作成された公開リポジトリで、Dune(砂の惑星シリーズ)をテーマにした命名規則
が用いられ、暗号化された結果がコミットされ、コミットメッセージ内に「LongLiveTheResistanceAgainstMachines」というマーカーとともにトークンが埋め込まれています。{単語}-{単語}-{3 桁数字} - サプライチェーンの伝播: npm トークンの窃盗により書き込み可能なパッケージを特定し、注入された
ハックで再公開を行うこと、および GitHub Actions ワークフローへの注入によるリポジトリ機密情報のキャプチャー。preinstall - ロシア語ロケール・キルスイッチ: システムのロケールが "ru"(ロシア語)から始まる場合は沈黙して終了します。これは
および環境変数Intl.DateTimeFormat().resolvedOptions().locale
,LC_ALL
,LC_MESSAGES
,LANGUAGE
をチェックすることで確認されます。LANG - 実行環境: GitHub リリースからダウンロードされた Bun v1.3.13 インタープリターを使用。
- 同じ C2 エンドポイント:
-
固有の指標(Checkmarx 事件では文書化されていません):
- ロックファイル: ハードコーディングされたパス
が複数インスタンスが同時に実行されるのを防止します。/tmp/tmp.987654321.lock - シェルプロファイルの永続化: ペイロードを
および~/.bashrc
に注入します。~/.zshrc - 明確なブランド化: リポジトリの説明「Shai-Hulud: The Third Coming(シャイ・フルールード:第三の到来)」は欺瞞的な「Checkmarx Configuration Storage」を置き換え、デバッグ文字列には「Would be executing butlerian jihad!(_butlerian jihad_を実行しようとしていた!)」が含まれています。
- ロックファイル: ハードコーディングされたパス
-
帰属に関する文脈: 共有されたツールの利用から、同じマルウェアエコシステムへの接続が強く示唆されますが、運用上のサインが異なり、帰属を複雑にしています。Checkmarx に対する攻撃は発見後に @pcpcats のソーシャルメディアアカウントによって TeamPCP が主張し、マルウェア自体は合法的に見える説明文と融合しようとしました。一方、このペイロードは異なるアプローチを取っています:リポジトリ名(Shai-Hulud)、マニフェストペイロード(Butlerian Jihad)、そして機械に対する抵抗を宣言するコミットメッセージに至るまで、イデオロギー的なブランディングはマルウェアの中に直接埋め込まれています。これは、共有インフラストラクチャを利用する異なる運営者、あるいはより強いイデオロギー的動機を持つ派閥、またはキャンペーンの公開姿勢の進化を示唆しています。
推奨事項:
- 悪意のある Bitwarden npm パッケージをインストールした組織は、この事件を認証情報の露見および CI/CD 侵害として扱う必要があります。
- 直ちに影響を受けたパッケージをデベロッパーシステムおよびビルド環境から削除してください。
- 該当環境で露見された可能性のある認証情報(GitHub トークン、npm トークン、クラウド認証情報、SSH キー、CI/CD シークレットを含む)をすべてローテーションしてください。
- GitHub 上で未許可のリポジトリ作成、
下での予期せぬワークフローファイル、怪しいワークフローの実行、アサートダウンロード、および観察された Dune テーマによるステージングパターン(.github/workflows/
)に一致する公開リポジトリを調査してください。${単語}-${単語}-{3 桁数字} - ご自身の影響を受けると考えられる場合、新たに公開されたリポジトリで以下のキーワードを検索して確認してください:
- atreides, cogitor, fedaykin, fremen, futar, gesserit, ghola, harkonnen, heighliner, kanly, kralizec, lasgun, laza, melange, mentat, navigator, ornithopter, phibian, powindah, prana, prescient, sandworm, sardaukar, sayyadina, sietch, siridar, slig, stillsuit, thumper, tleilaxu
- npm 上で未許可のパッケージ公開、バージョン変更、または新たに追加されたインストールフックを監査してください。
- クラウド環境において、アクセスログで異常なシークレットアクセス、トークン使用、および新規発行の認証情報を調査してください。
- エンドポイントおよびランナーに対して以下のものを検索・調査してください:
- 観察された流出インフラストラクチャ(
)へのアウトバウンド接続。audit[.]checkmarx[.]cx - 通常使用されていない場所での Bun の実行。
,.npmrc
,.git-credentials
, クラウド認証情報ストア、.env
,gcloud
, およびaz
といったファイルへのアクセス。azd- ロックファイル
および/tmp/tmp.987654321.lock
および~/.bashrc
におけるシェルプロファイルの改ざん。~/.zshrc
- 観察された流出インフラストラクチャ(
- GitHub Actions について、一時的なブランチ上に未承認のワークフローが作成されなかったか、および
といったアサートが生成またはダウンロードされなかったかを調査してください。format-results.txt
より長期的な対策として、将来的なサプライチェーン事件の影響範囲を縮小するには:
- トークンのスコープを制限すること。
- 可能な限り短期有効の認証情報を要求すること。
- パッケージの作成または公開ができる権限者を制限すること。
- GitHub Actions の権限を強化すること。
- 不必要なアサートへのアクセスを無効化すること。
- 通常のリリースプロセス外で作成された新規公開リポジトリまたはワークフローの変更に対する監視を行うこと。
IOCs(侵害指標):
- 悪意のあるパッケージ:
@bitwarden/cli2026.4.0 - ネットワーク指標:
94[.]154[.]172[.]43https://audit.checkmarx[.]cx/v1/telemetry
- ファイルシステム指標(被害パッケージの乗っ取り):
/tmp/tmp.987654321.lock/tmp/_tmp_<Unix Epoch Timestamp>/package-updated.tgz