Shai-Hulud npm ワームが dsh ユーザーに意味すること

2026 年 8 月 18 日公開

2026 年 8 月 4 日、研究者が Shai-Hulud と名付けたワームが keyvcacheable を侵害しました — ほとんどの JavaScript 開発者が自分で選んだ覚えのないまま入れている npm パッケージです。そして dsh プラグインは npm パッケージです。この記事は、生まれて数日のエコシステムにとってこのタイミングの一致が何を意味するかについてのものです。

何が起きたか

Wiz の分析によれば、攻撃者は乗っ取ったメンテナのアカウントで悪意ある keyv を公開し、正規の GitHub Actions ワークフローを通じて、合計月間約 20 億ダウンロードの 400 以上のパッケージへ拡散しました。

エージェント利用者が警戒すべきは第 6 波です。ペイロードは AI エージェントの設定ファイルに隠れていました — 通常のスキャナは読まないファイルです。指令サーバーは押収され得るドメインではなく Ethereum のスマートコントラクト経由。さらに、防御側が盗まれたトークンをローテーションしようとした瞬間に攻撃者のコードを起動する監視機構まで備えていました。

なぜ dsh に関係するのか

dsh プラグインとは npm パッケージ + cordis.yml の 1 エントリです。インストールすれば npm の機構一式が走り — インストールスクリプト、推移的依存、lockfile が固定しなかったすべて — その結果が、API キーを保持しシェルを実行するプロセスに読み込まれます。Shai-Hulud が使った仕組みは、このエコシステムにそのまま存在します。

覚えておくべき細部: ペイロードはエージェント設定ファイルに潜んでいました。dsh ではローダー設定こそが攻撃面です — どのコードがプロセスに入るかは cordis.yml が決めます。多くの人が README からコピーして読まないファイルは、この種の攻撃にとって格好の隠れ場所です。

dsh プラグインは被害に遭ったのか?

実証された例はありません。公開時点(2026 年 8 月 18 日)で、当サイトが索引する 1805 リポジトリに確認済みの悪意あるパッケージはありません。しかしこのトピックはレビューのない開かれたタグで、エコシステムは生後数日、そして上記の npm 攻撃は dsh 公開の 2 週間前から進行中でした。この早さで確認例がないことは、安全の証拠にはなりません。

掲載リポジトリに確認可能な警告サイン — より人気のリポジトリと 1 編集差の名前、短縮 URL の先のホームページ、ダウンロードをシェルにパイプさせる説明文 — がある場合、その事実を掲載ページに表示します。当サイトは判定を印字しません。リポジトリのメタデータでは判定を支えられないからです。

実際にやるべきこと

レビューした正確なバージョンを固定し、lockfile をコミットし、新しいプラグインを試す環境に本番資格情報を置かないこと。cordis.yml に何かを足す前に審査チェックリスト全文を確認してください。当サイトが索引するリポジトリで悪意あるものを見つけたら報告を — 確認できた事例は掲載から外します。