2026年5月12日、npmサプライチェーン攻撃を繰り返してきた悪名高いマルウェアグループ「TeamPCP」が、自作のワーム型マルウェア「Shai-Hulud(シャイ・フルード)」のソースコードをGitHubにMITライセンスで公開したことをOx Securityが公式ブログで報告しました。
リポジトリには「Shai-Hulud: Open Sourcing The Carnage(虐殺をオープンソース化する)/ Is it vibe coded? Yes. Does it work? Let results speak.(バイブコーディングか?そうだ。動くか?結果で語る) / Change keys and C2 as needed. Love – TeamPCP(必要に応じてキーとC2を変更せよ。愛を込めて——TeamPCP)」というメッセージが添えられており、ソースコードと完全な配備手順が含まれています。
The Registerが報道した時点(2026年5月13日)でリポジトリの1つには39のフォークが確認されており、GitHubによる削除措置は発動から12時間以上経過しても実施されていませんでした。
この記事のサマリー
- 2026年5月12日、TeamPCPがShai-HuludのソースコードをGitHubに**MITライセンス(改変・再配布自由)**で2つのリポジトリで公開。
- リポジトリにはC2サーバーの設定変更手順を含む完全な配備マニュアルが付属しており、「Any Willing Actor(意欲ある誰でも)」が独自のバリアントを構築できる状態。
- コミット日時は全件が2099年1月1日(意図的な偽装)。アカウント名はTeamPCP_OSSおよびTeamPCP。
- Ox Securityが3つの関連アカウントを特定。「agwagwagwa」は既にFreeBSDサポートを追加するPRを提出(TeamPCPはネコをテーマにしており、agwagwagwaアカウントには「meow!」リポジトリが存在)。
- ソースコード分析でClaude Codeの設定を標的にしたフックが追加されていることが判明。「Anthropic Magic String」(ClaudeがコードをスキャンするのをAI側で防止するためのメタ指示)もリポジトリ内に確認。
- Shai-Huludはnpmパッケージを攻撃してAWS・GCP・Azure・GitHubの認証情報を窃取し、さらに汚染済みパッケージを再配布するワーム型マルウェア。目的達成に失敗した場合はローカル環境を自己破壊する。
目次
Shai-Huludとは—2025年9月に発見されたnpmサプライチェーン型ワーム
ワームの基本的な動作
Shai-Huludはnpm(Node.jsパッケージ管理システム)を標的とするワーム型マルウェアです。インストール時に即時実行されるpre-installスクリプトを通じて動作し、以下の三段階の攻撃チェーンを実行します。
第1段階(認証情報の窃取)として、感染した開発者環境またはCI/CDパイプライン上からAWS・GCP・Azure・GitHub・npm・SSH・シェル履歴・GitHubActionsシークレット・クラウドシークレットマネージャー(AWS Secrets Manager・HashiCorp Vault・GCP Secret Manager・Azure Key Vault)さらには1Password・Bitwardenのパスワードマネージャーまで広範な認証情報を収集します。
第2段階(自己増殖)として、窃取したGitHubトークンとnpmトークンを使用して、被害者が書き込み権限を持つ他のパッケージへ汚染済みバージョンを公開します。GitHub Actions WorkflowへのバックドアやOIDCトークンの窃取等、信頼された公開パイプラインを乗っ取ることで有効なSLSAプロベナンス証明書付きの悪意あるパッケージを生成することにも成功しています(Wave4で初確認)。
**第3段階(情報流出)**として、窃取した認証情報を複数の冗長チャネル(タイポスクワット ドメイン・Sessionメッセンジャーネットワーク・GitHubのAPIデッドドロップ)で外部に送信します。GitHubに「Shai-Hulud」と名付けた公開リポジトリを自動作成し、そこに盗んだ認証情報をアップロードするという「インフラ内潜伏型の情報収集」も特徴です。
目的達成に失敗した場合の自己破壊機能として、マルウェアはrm -rf ~/を実行してローカル環境を消去しようとします。また、イスラエルまたはイランのタイムゾーン・言語設定が検出された場合は、1/6の確率でmp3ファイルを最大音量で再生した後に破壊処理を実行します。
注目すべき点としてロシア語設定の環境では処理を中止して自己終了する実装が含まれており、攻撃の標的が明確に設定されています。
Claude Codeを標的にした新機能
今回公開されたソースコードの分析では、Claude Code(Anthropicが提供するコーディングAIエージェント)の設定ファイルへのフックが追加されていることが確認されています。Claude Codeが起動する際にマルウェアを実行するように設定を書き換えるものです。
さらに「Anthropic Magic String」——ClaudeがリポジトリのコードをAI側で分析することを妨げるための特殊なメタ指示文字列——もリポジトリ内に埋め込まれていました。「誰かがAIの目から自分の仕事を守りたがっている」とOx Securityは指摘しています。
TeamPCPの攻撃の歴史——6回のWave
| 時期 | Wave | 内容 | 規模 |
|---|---|---|---|
| 2025年9月 | Wave 1 | @ctrl/tinycolor等npmパッケージを感染。初のselfpropagating npm worm | 500件超のnpmパッケージ |
| 2025年11月 | Wave 2(Shai-Hulud 2.0) | 強化版。PostHogが「過去最大のセキュリティスケア」と認めた | 25,000件超のリポジトリ |
| 2026年3月 | Wave 3 | Aqua SecurityのTrivy scannerを侵害 | — |
| 2026年4月22日 | Wave 4(Bitwarden CLI) | @bitwarden/[email protected]を93分間npm上に配布 | CI/CDパイプライン・開発端末 |
| 2026年5月11日 | Wave 5(Mini Shai-Hulud) | @tanstack・Mistral AI・UiPath・OpenSearch等を5時間以内に汚染 | 172パッケージ・400件超バージョン |
| 2026年5月12〜13日 | Wave 6(オープンソース化) | ソースコードをGitHubにMITライセンスで公開 | フォーク数が急増中 |
Wave 5「Mini Shai-Hulud」の技術的特異性(2026年5月11日)
Wave 5は技術的に特筆すべき成果を達成しました。3つの脆弱性を連鎖させたTanStack攻撃チェーンとして、まず攻撃者がTanStack/routerのフォーク(zblgg/configurationという検出回避の名前)を作成しました。このフォークからプルリクエストを開きpull_request_targetワークフローをトリガーしてgithub actionsキャッシュを悪意あるpnpmストアで汚染しました。正規のメンテナーがPRをマージすると汚染されたキャッシュが復元され、リリースワークフローでOIDCトークンが窃取されます。最終的に攻撃者はnpm認証情報を盗まずとも、正規のリリースパイプラインのOIDC IDで悪意あるパッケージを公開できました。
これは有効なSLSAプロベナンス(Sigstoreによる暗号化証明書)付きの悪意あるパッケージが初めて配布された事例であり、プロベナンス検証によるサプライチェーン防御を突破しています。
オープンソース化の深刻な意味——「能力の拡散」
Ox Securityは今回のオープンソース化について「TeamPCPは今やマルウェアを広めるだけではなく、能力を広めている。オープンソース化によって、意欲ある誰にでも独自のバリアントを構築する道具を手渡した。模倣犯はもうここにいる」と述べています。
MITライセンスはほぼあらゆる形での再利用・改変・商用利用を許可します。「改変してC2サーバーのアドレスを変えるだけで使える」というインストラクション付きのソースコードは、ランサムウェアのRaaS(サービスとしてのランサムウェア)と同様の「フランチャイズ型犯罪ツール」として機能します。
一般にマルウェア作成者は自作ツールを**売却(クライムウェアマーケット)**して収益化します。無償での公開はきわめて異例であり、TeamPCPの動機として「影響力の最大化」「法執行機関の追跡困難化(誰もが使えることで帰属が困難に)」「コミュニティによる機能拡張への便乗」等が考えられます。
GitHubは12時間以上放置——プラットフォームの対応問題
The Registerが報道した時点でShai-HuludのリポジトリはGitHub上に少なくとも12時間以上存在し続けており、Microsoftのコード管理プラットフォームは介入していませんでした。
この状況は「マルウェアのソースコード配布に対するGitHubの検知・対応速度」という問題を提起しています。リポジトリは「A Gift From TeamPCP」で検索することで発見可能な状態が続いていました。
開発者・DevSecOps担当者が今すぐ取るべき対応
影響を受けた可能性があるパッケージのチェックとして、以下に該当する場合は即時対応が必要です。2026年5月11日〜12日に@tanstack・@mistralai・@uipath・@tallyui・OpenSearch関連パッケージをインストールしたCI/CD環境や開発端末、@bitwarden/[email protected]をインストールした環境が対象です。
認証情報の即時ローテーションとして、影響を受けた可能性がある環境では以下をすべてローテーションしてください。GitHub PAT・npmトークン・AWS IAM認証情報・GCP・Azureサービスアカウント・HashiCorp Vaultトークン・SSHキーが対象です。
「Shai-Hulud」という名前のGitHubリポジトリを確認してください。マルウェアは窃取した認証情報をこの名前のリポジトリにアップロードします。自分のアカウントまたは組織下に見知らぬ「Shai-Hulud」リポジトリが存在しないか確認してください。
GitHub Actionsのキャッシュ・OIDC設定の見直しとして、pull_request_targetワークフローでフォークコードをチェックアウトする設定は即時廃止してください。GitHubActionsのキャッシュへの書き込みを制限し、OIDCトークンの使用ログを定期的に監視してください。
gh-token-monitorデーモンの有無を確認してください。macOS LaunchAgentまたはLinux systemdにgh-token-monitorという名前のデーモンが登録されていないか確認してください。
参考情報(1次ソース)
- Shai-Hulud Goes Open Source: Malware Creators Leak Their Own Code to GitHub(Ox Security、2026年5月12日)
- Shai-Hulud: Here We Go Again(JFrog Security Research、2026年5月)
- Mini Shai-Hulud Strikes Again: TanStack + more npm Packages Compromised(Wiz Blog、2026年5月)
- TanStack npm Packages Hit by Mini Shai-Hulud(Snyk、2026年5月)
- Team PCP’s Mini Shai-Hulud tears at open-source trust(ReversingLabs)
- Sha1-Hulud / Shai-Hulud: Full Technical Dissection(AppSec Phoenix)
- TeamPCP Campaign Spreads to npm via a Hijacked Bitwarden CLI(JFrog)
- Malware crew TeamPCP open-sources its Shai-Hulud worm on GitHub(The Register、2026年5月13日)
- TeamPCP Used Mini Shai-Hulud Worm to Poison Over 400 npm and PyPI Packages(Hackread)
- 【関連記事】サイバー攻撃とは——定義・種類・対策を専門家が解説【2026年最新】
- 【関連記事】2025〜2026年 サイバー攻撃・情報漏洩の最新事例まとめ








