OSSの信頼は壊れていた。直す前に証明された

OSSの信頼は壊れていた。直す前に証明された

4か月、1,000パッケージ、週間ダウンロード合計5億。TeamPCPという脅威アクターが突きつけたのは、新しい手口ではなく、業界が長年見て見ぬふりをしてきた事実そのものだった。


既知の欠陥が、最悪の形で現実になった

オープンソースの信頼モデルには構造的な欠陥がある。研究者も開発者も、それを知っていた。レジストリに公開されたパッケージの正当性を、ほとんどの組織は検証していない。CI/CDパイプラインは上流のコードを自動で取り込み、テストし、本番に流す。その連鎖のどこか一点が汚染されれば、下流すべてに広がる。

知っていて、直さなかった。

2026年2月末、TeamPCPがその穴を突き始めた。最初の標的は脆弱性スキャナーTrivy。Aqua SecurityのGitHub Actionsワークフローに残った未失効のトークンを利用し、公式リリースチャンネルを制圧した。セキュリティツールが、攻撃の入口になった。

そこから連鎖は止まらない。Trivyで盗んだ認証情報でCheckmarxのKICSを侵害し、LiteLLM、Bitwarden、TanStack、AntVへと波及した。5月にはMicrosoft DurableTaskのPyPIパッケージが汚染され、Nx ConsoleのVS Code拡張機能を経由してGitHub自身の内部リポジトリ約3,800件が流出した。

TeamPCPサプライチェーン攻撃キャンペーン
2026年2月
Trivy侵害(第1波)
GitHub Actions残存トークンを利用
2026年3月
KICS・LiteLLM・Telnyxへ連鎖
盗んだPATでKICS、LiteLLM、Telnyxに波及
2026年4月
Checkmarx再侵害・Bitwarden CLI汚染
Docker Hub・VS Code拡張・npmを同時攻撃
2026年5月
Mini Shai-Huludソースコード公開
ワーム型マルウェアのコードをGitHubに公開
TanStack・AntV・GitHub内部リポジトリ流出
VS Code拡張経由で
GitHub内部リポジトリ約3,800件流出
2026年6月
汚染パッケージ1,000超に到達
汚染パッケージの週間DL合計約5億に到達
npm v12(7月リリース予定)
インストールスクリプト自動実行をデフォルト無効化
※ 強調ドット(白抜き)はnpm v12の対策リリース予定を示す。Palo Alto Networks、Wiz、Google Threat Intelligence Group各社の調査に基づく

4か月足らずで汚染されたパッケージは1,000を超え、それらの週間ダウンロードは合わせて約5億に達した。

「スピード」というトレードオフ

なぜこれほどの規模に膨らんだのか。理由の一つは、ソフトウェア業界が速度を選んできたことにある。

CIランナーはビルド・テスト・公開を自動で回す。開発者はそこに最新バージョンを常時取得するよう設定してきた。脆弱性パッチを素早く取り込むための、推奨されたやり方だ。TeamPCPはその習慣をそのまま利用した。上流のCI/CDワークフローを1つ侵害すれば、下流で自動プルする全開発者に汚染コードが届く。依存が依存を呼ぶ構造のなかで、1つの侵入点が何千もの環境に展開される。

Socket創業者兼CEOのフェロス・アブーハディジェ(Feross Aboukhadijeh)氏は、AIの普及がこの構造を一段と危うくしていると指摘する。依存パッケージのセキュリティ検証は以前から不十分だったが、AIがコードを生成しパッケージを自動インストールするようになり、チェック体制はさらに薄くなった。「検証されていないパッケージをエージェントが勝手にインストールしている。攻撃者が入り込んだとき、歯止めが少ない分だけ影響は広い」とアブーハディジェ氏は語る。

Google Threat Intelligence Group(GTIG)のキンバリー・グーディ(Kimberly Goody)氏も、手法自体に目新しさはないと述べる。速度と規模が異例なだけで、悪用されているのはサードパーティへの信頼という、業界が何年も前から認識していた弱点だ。

Palo Alto Networksのナサニエル・クイスト(Nathaniel Quist)氏は、問題の核心をさらに上流に置く。パッケージが配布される前に、公開する組織や個人が認証情報を守り、サプライチェーン攻撃の起点にならないようにする責任がある。「その領域を通過するすべてのものは、厳重に監視・管理されなければならない」

金ではなく、破壊

TeamPCPの動機は、典型的なサイバー犯罪と少し違う。

Googleは活動の大半を1人のオペレーターによるものとみており、南アフリカへのIPアドレス接続を追跡している。Palo Alto Networksは中核メンバーとして「ResoluteXBF」というハンドルのほか、「diencracked」「Shinigami」の2名を追跡中だ。他のサイバー犯罪者と組むこともあるが、提携は短命に終わるか公然と仲間割れしている。Lapsus$、ShinyHunters、DragonForce、BreachForumsとのつながりも報告されている。

収益は目立たない。自称被害者数は1万超、恐喝で得た金額は約9万ドル(約1,450万円)(Palo Alto Networks調べ)。奪った約4,000件のプライベートリポジトリにつけた値札は9万5,000ドル(約1,530万円)。金額が目的なら、非効率すぎる。

「金を稼いでいるわけではないが、大きな衝撃を与えている」とグーディ氏は言う。「混乱を引き起こすのが好きなようだ」

5月にはTeamPCPのアフィリエイトが自作ワーム「Mini Shai-Hulud」のソースコードをGitHub上に公開し、他の犯罪者に利用を促した。攻撃の民主化。模倣犯が参入しやすくなり、TeamPCP自身が逮捕されてもキャンペーンが止まらないリスクが生まれる。

もしTeamPCPが本当に1人で回っているなら、法執行機関にとっては1回の逮捕で大きな打撃を与えられる珍しい機会になる。だが、ソースコードが公開された今、その機会はすでに狭まりつつある。

被害の広がりと、意外な「天井」

汚染されたパッケージの週間ダウンロード合計が5億に達しても、それがすべて実害に結びつくわけではない。マルウェアに感染したパッケージが入った環境の多くはインターネットに直接露出しておらず、攻撃に利用できる条件が揃わないケースも多い。

それでも、認証情報の窃取は確実に起きている。Kubernetes環境、AWS、Azure、Google Cloudの認証情報がターゲットにされ、セキュリティスキャナー、パスワードマネージャー、CI/CDインフラまで侵害された。Wizのアミタイ・コーエン(Amitai Cohen)氏によれば、侵害後の認証情報のローテーションが不完全なために、同じ組織が1か月に3回TeamPCPの被害を受けた例もある。

被害リストには、Checkmarx、Bitwarden、LiteLLM、Telnyx、SAP、GitHub、Mistral AI、UiPath、Red Hatなど名だたる企業が並ぶ。

業界はようやく動き始めた

TeamPCPが突いた「インストール時のスクリプト自動実行」という攻撃面に対し、npm側がついに構造的な対策に踏み切った。6月9日に発表されたnpm v12(7月リリース予定)は、preinstallinstallpostinstallスクリプトのデフォルト実行を無効化する。npm installを実行するだけで依存ツリー全体のスクリプトが自動実行される仕組みは12年続いた。それが明示的な許可制に切り替わる。

Gitの依存関係やリモートURLからのインストールも、明示的な承認がなければブロックされる。npm史上もっとも大きなセキュリティ方針の転換だ。

タイミングは偶然ではない。6月初旬にはMiasmaワームがRed Hatの公式npmスコープを侵害し、同じインストールスクリプトのメカニズムを悪用していた。TeamPCPとMiasmaが同じ攻撃面に収束したことが、デフォルト変更を加速させた。

ただし、インストールスクリプトの無効化はサプライチェーン攻撃全体の解決策ではない。TeamPCPの手法にはCI/CDワークフローの直接侵害、OIDCトークンの窃取、VS Code拡張機能の汚染など、インストールスクリプトを介さないルートも多い。npm v12は大きな一歩だが、1つの攻撃面を閉じたにすぎない。

追跡者たちの消耗

Wizでこの攻撃を初期から追い続けてきたコーエン氏は、セキュリティカンファレンスSleuthConでの発表の中で、疲弊を隠さなかった。

「毎朝目が覚めるたびに、広く使われているパッケージが侵害されていて、みんなそれを何事もなかったように使い続けている。こんな状態にいつまでもいるわけにはいかない」

Wizの戦略情報担当ディレクター、ベン・リード(Ben Read)氏によれば、セキュリティ実務者は侵害パッケージの検知速度を上げており、一部のリポジトリは15分以内に除去されるようになった。それでもTeamPCPはほぼ毎日新たなパッケージを汚染し、24時間以内にデータを窃取する。守る側が速くなっても、攻撃のテンポがそれを上回る。

OSSの信頼モデルが壊れていることは、ずっと前からわかっていた。TeamPCPがやったのは、それをもう無視できない規模で証明したことだ。業界が「直すべきだった」を「直さなければならない」に書き換えるかどうか。答えはまだ出ていない。

参照元

How software development's speed obsession enabled TeamPCP's chaos crusade - CyberScoop

他参照

Upcoming breaking changes for npm v12 - GitHub Changelog

関連記事

この記事を共有する