公開されたコードは、防御側にとっては貴重な分析材料になる一方、攻撃者にとっては攻撃手法をコピーできる“設計図”でもある。
Shai‑Huludキャンペーンは、その 速度と拡散力 で注目された。
2026年5月11日、TeamPCPはnpmとPyPIの複数の人気パッケージに悪意あるバージョンを注入し、数時間のうちに多数の感染リリースを公開した。
このマルウェアの特徴は、単なる依存関係汚染ではなく 自己増殖型ワーム である点だ。感染した開発環境やCI/CDパイプラインを利用し、さらに別のパッケージへと広がる仕組みになっている。
その後、TeamPCPは ワームの完全なソースコードを2つのGitHubリポジトリとして公開。MITライセンスのため、誰でもフォークして改変できる状態になった。
攻撃ツールがオープンソースライセンスで公開されるのは珍しく、セキュリティ面では複雑な意味を持つ。
実際のソースコードが公開されたことで、セキュリティチームは次のような分析が可能になる。
つまり、現実の攻撃コードを使って防御テストができる。
しかし同時に、MITライセンスは再利用制限がほぼないため、次のようなリスクも生まれる。
公開後すぐにフォークが増えたことからも、攻撃ツールの拡散速度の速さが示されている。
公開コードや調査レポートから、このワームが複数の高度な攻撃技術を組み合わせていることが分かっている。
最も重要な機能の一つが、CI/CDパイプラインのOIDCトークンを取得する能力だ。
特に GitHub Actions などの自動リリースワークフローから 実行時トークンを抽出し、正規のパッケージ公開権限を奪う。
従来のような静的APIトークンの窃取ではなく、実行中の認証フローを乗っ取るという点が特徴だ。
さらに厄介なのは、悪意あるパッケージが
SLSA Build Level 3 のプロベナンス証明付きで公開されていた点だ。
SLSA(Supply‑chain Levels for Software Artifacts)はソフトウェア供給網の安全性を示す仕組みだが、今回の攻撃では 信頼されたビルドパイプライン自体が侵害されたため、証明があっても安全とは限らない状況になった。
感染した環境では、ワームが広範な認証情報を収集する。
対象には次のようなものが含まれる。
報告では 100以上の一般的な保存パスをスキャンしていたとされる。
盗んだ認証情報や乗っ取ったCI/CDワークフローを使い、ワームは 新しいパッケージへ自動的に感染を拡大できる。
その結果、複数のパッケージエコシステムを横断する連鎖的なサプライチェーン感染が起きた。
一部の分析では、特定条件で作動する 破壊型ワイパー機能(デッドマンスイッチ) の存在も指摘されている。
そのため、感染が疑われる環境は単なるマルウェア削除ではなく 完全侵害として扱うべきとされている。
今回の攻撃は、突然現れたものではない。
Cloud Security Allianceの調査によると、TeamPCPは 2026年4月29〜30日にもnpm・PyPI・Packagistを横断する攻撃 を実行し、約1,800リポジトリに影響を与えていた。
攻撃手法は段階的に進化している。
つまり、攻撃者は サプライチェーン防御の仕組みに適応しながら進化している。
セキュリティ専門家は、次のように警告している。
2026年5月11日以降に影響パッケージをインストールした環境は、侵害された可能性がある。
理由は、ワームが
から資格情報を収集し、長期的な侵入経路を残す可能性があるためだ。
さらに今回の事件は、署名やプロベナンス証明だけでは安全性を保証できないことも示した。
影響の可能性がある組織は、次の対応が推奨されている。
また、ワームのソースコードが公開されたことで改変版や模倣攻撃が出現する可能性が高まっている。
Shai‑Hulud事件は、サプライチェーン攻撃の焦点が変わってきていることを示している。
攻撃者はもはや単一の脆弱な依存関係を狙うのではなく、開発ワークフローそのもの(CI/CD・ビルド・公開プロセス)を標的にしている。
そして今回、攻撃に使われたワームのソースコードが公開されたことで、この攻撃モデルは世界中の研究者と攻撃者の両方に研究されることになった。
ソフトウェア供給網を守る競争は、すでに新しい段階に入っている。