お客様のデジタルサプライチェーンの一部は、コードを1行も変えずに所有者を変えることができます。ドメインは同じように解決されます。スクリプトは同じハッシュを持ちます。通信は同一に見えます。実際に同一なのですから。変わったのは、その構成要素が次に何をするのかを決めるのが誰かということであり、その判断についてはネットワークのキャプチャーには何も現れません。
侵害は、来るとすれば数か月あるいは数年後に、すでに信頼されていた経路を通って到来します。そしてそれを捉えたはずの問いは、そもそも技術的なものではありませんでした。これを誰が、いつ、誰から買ったのか、という問いです。
仕組み

これらの移転はいずれも、どこかの紙の上に記録されている

いずれもどこかに記録を残します。売買の証書、登記の記載、権限の変更、雇用の記録です。しかしそのどれも、パケットも、警報も、変わったハッシュも生みません。だからこそ、それらを捉えるはずの監視はネットワーク上にはないのです。

01

資産が買われる
ドメイン、リポジトリ、パッケージ、拡張機能、あるいはそれらの背後にある企業が持ち主を変えます。導入済みの利用基盤と積み上げられた信頼が、購入の付随的な一部ではなく、購入の目的であることがしばしばあります。研究者は現在、既存の利用者を目的とした確立済みのブラウザー拡張機能の買収を、個別の事案の連続ではなく、常設の事業モデルとして記述しています。

02

公開の権限が引き渡される
数千の組織が依存しているパッケージの、無報酬の保守担当者に、見知らぬ相手が手助けを申し出て、担当者がそれを受け入れます。主要なレジストリでは、これに必要なのはメールアドレスの管理権を超える引き継ぎ相手の本人確認ではなく、待機期間でもなく、下流の誰かへの開示でもありません。コマンド1つです。

03

信頼が育てられる
ある識別情報が数か月あるいは数年にわたって実際に有用な仕事を提供し、実績によって昇格し、そして何であれ好きなものを配信できる立場に就きます。途中で検出すべき不正な段階は存在しません。最後の一つを除いて、どの段階も本物だからです。既存の保守担当者が負担を抱えている場合、共同保守担当者を求める一見独立した声による連携したキャンペーンが、それを加速させます。

04

内側の人が変わる
コミット権限を持つ開発者、配備のアクセス権を持つ業務委託先、3階層下のプロバイダーにいる管理者です。彼らのアクセス権については何も変わりません。そのアクセス権はもともと正当なものだったからです。変わるのは、彼らの事情、雇用主、動機、あるいは誰が彼らに対して力を持っているかであり、そのどれも、彼らを雇っている組織の外側からは観測できません。
ネットワークの外

重要な記録はネットワークの外側にある

このページにあるすべての仕組みが記録を生みます。企業は登記し、届出をします。ドメインは移転し、登録事業者がそれを記録します。リポジトリとレジストリの所有の変更は、メンバー一覧とパッケージのメタデータに書き込まれます。ルートプログラムは、まさにこの種の変更の開示を求めます。制裁と執行の措置は当事者を名指しします。そのどれも秘密ではありません。そのすべてが、セキュリティチームが監視しているネットワークの外側、誰かの職務として読むことになっていないソースのなかにあります。
だからこそ観測だけでは足りず、この手法はアプリケーションが接続する先で止まらないのです。キャプチャーは、どの当事者がお客様の信頼の境界の内側にいるかを確定します。それらの当事者を企業と所有者へ名寄せしておくことが、のちにそのうちの1社がもはや評価した企業ではないと気づくことを可能にします。この2つの半分は、互いの代わりになるものではありません。
登録情報もまた、ソースとして実質的に悪化しました。2024年までに、分野別トップレベルドメインのおよそ89%が公開記録に特定可能な登録者を持たなくなっており、秘匿性の規則が変わる前のおよそ24%と対比されます。移転の記録は依然として存在します。それに基づいて動く者から、ただ遠ざかっただけです。そのため見ることの費用が上がり、誰かが実際に見る確率が下がります。
遅れ

誰かが気づくまで

1社から上方向にたどった所有権チェーンです。複数の法域にまたがる層状の持株会社と不透明な投資家を経て、その背後にいる個人へ至ります。
あるプロバイダーをその背後にいる当事者へ名寄せしておくことが、のちにその当事者に生じた変化を見えるようにする唯一の手立てです。所有権チェーンのマッピングを読む。
実務では

これらの記録はそれぞれ異なる時計で変わる

パッケージの公開者一覧は、コマンドが実行された瞬間に変わります。登録事業者の記録は、移転が完了した日に変わります。企業の届出は現れるまでに数週間かかることがあり、制裁の指定は現れるときに現れます。4つすべてを見ていることが、そのうち最も速いものに価値を与えます。
企業に関する出来事
買収、登記上の支配の変更、新たな届出、役員または登記上の住所の変更、破綻、そして評価したときとは利害の異なる投資家の登場です。承認した企業が、その名前で今も事業を続けている企業と同じであるとは限りません。
ドメインとインフラの移転
登録事業者とネームサーバーの変更、ホスティングと配信の移動、証明書の発行者の変更、そしてアドレス空間の持ち主の変更です。個々には平凡であり、合わせて見れば、あるプロバイダーについて何かが動いたことの最も明確な早期の兆しです。
リポジトリとレジストリの支配
チェーンが実際に依存しているパッケージとリポジトリにおける所有と保守担当者の変更、確立済みのパッケージに新しい公開者が現れること、そして誰がリリースに署名するかの急な変更です。記録は公開されています。しかし下流でそれを読む者はほとんどいません。
立場と執行
制裁の指定、執行の措置、訴訟、ルートプログラムによる不信任の決定、そして契約したベンダーだけでなく、チェーン上のあらゆる当事者に対する不利な報道です。エクスポージャーはあらゆる階層から引き継がれ、悪評も同じく引き継がれます。
間隔

それらの移転のうち8件を、支配が移った日から測ったもの

Nano Adblockerは2週間。xz-utilsは28か月。この間隔は、その構成要素がどれだけ大きいか、どれだけ多くの人が依存しているか、どれだけ慎重に選ばれたかによって決まるものではありません。誰かが見るまでにどれだけ時間がかかったかによって決まります。
構成要素の支配が移った時点からの月数を尺度として、記録された8件の事例を横棒で描いたものです。ParticleとNano Adblockerは数日、event-streamは2か月、Polyfill.ioは4か月、The Great Suspenderは5か月、WoSignとStartComは12か月、Stylishは18か月、xz-utilsは28か月です。
記録

同じ失敗が13年にわたり6つの異なる経路で現れてきた

20件の出来事を日付順に、6つの侵入経路に沿って並べています。そのうち3件は支配の移転であり、それらは起きた時点で技術的な痕跡を何も残しませんでした。残りがここにあるのは、エクスポージャーを負う当事者についても同じことが言えるからです。それは、失敗した当事者であることがほとんどありません。
2013年から2026年までの左から右への年表です。上端と下端に年の軸があり、20件の出来事が6つの帯にわたって期間の棒として描かれています。帯は、ビルドまたは更新の経路、所有または支配の移転、保守担当者または公開アカウント、稼働中のページ上のサードパーティースクリプト、プラットフォームまたは管理サービス、そして誰もが組み込んでいる構成要素です。
Target、2013年
攻撃者は、Targetのネットワークへの遠隔アクセス権を持つ冷凍およびHVACの業務委託先に発行された資格情報を通じて侵入し、そこから決済の仕組みへ移動しました。およそ4,000万件のカード記録と7,000万件の顧客記録が持ち出されました。そのベンダーは決済に何の役割も持たず、その近くにいる理由もありませんでした。
WoSignとStartCom、2015年
ある認証局が別の認証局を静かに買収し、まさにその開示を求めるブラウザーのルートプログラムの規則に反して、それを開示しませんでした。日付を遡らせた証明書と誤発行が続きました。Mozilla、Google、Appleはいずれも両者への信頼を取り消し、隠された支配の変更を主たる違反として扱いました。
left-pad、2016年
ある作者が、名前をめぐる争いのあとに11行のパッケージを公開レジストリから削除し、数時間のうちに世界中で数千件のビルドが壊れました。何も侵害されておらず、誰も攻撃されていません。この出来事は、誰も意図して選んだわけではない構成要素が、それでも大量の作業を止められることを示しました。
M.E.DocとNotPetya、2017年
ウクライナの税務会計製品の更新経路が、それを動かしていたすべての組織へ破壊的なマルウェアを配布するために使われ、そこから接続されたネットワークを通じて広がりました。MerckとMaerskは、数週間にわたって業務が止まった企業に含まれます。Merckがこの損失について行った保険請求はおよそ14億ドルに達し、解決までに数年の訴訟を要しました。
CCleaner、2017年
広く使われているユーティリティに裏口を仕込んだビルドが、ベンダー自身の証明書で署名され、ベンダー自身のダウンロード基盤を通じて配布されました。侵害が見つかる前に、およそ227万人の利用者がそれを導入していました。そのベンダーは少し前に買収されていましたが、証拠は取引ではなくビルド環境への侵入を示しています。
TicketmasterとInbenta、2018年
サードパーティーが提供したチャットボットのスクリプトが、決済のページ上で動いていました。侵害されたのは小売事業者ではなく供給者の基盤であり、最大900万人の顧客が影響を受けました。規制当局は小売事業者に制裁金を課し、小売事業者は自らが書いていないスクリプトについての責任を争いました。
British Airways、2018年
22行のスクリプトが、航空会社自身がホストしていたコードに追加され、3週間にわたっておよそ429,000人の決済情報が持ち出されました。これは同じ手口を用いた自社コードの侵害であり、サードパーティーの供給者の失敗ではありません。しかもこの2つは、しばしば誤って一緒に扱われます。規制当局は航空会社に2,000万ポンドの制裁金を課しました。
event-stream、2018年
週に数百万回ダウンロードされるパッケージから手を引いていた保守担当者に、見知らぬ相手が手助けを申し出て接触し、担当者は公開の権限を与えました。2か月後、新しい保守担当者が追加した依存関係が、特定の暗号資産ウォレットを狙うペイロードを運んでいました。それが見つかったのはさらに3か月後で、コードを読んでいた開発者によってでした。
Stylish、2017年
およそ200万人の利用者を持つブラウザー拡張機能が、2017年に分析企業に買収されました。18か月後、ある研究者が、それを導入しているすべての人の閲覧履歴の全体が新しい所有者へ送信されていることを記録しました。ChromeとFirefoxはいずれも、報告から数日のうちにそれを削除しました。
Nano Adblocker、2020年
2つの広告遮断拡張機能の開発者が2020年10月にそれらを売却し、当時そのことを公に述べていました。およそ2週間のうちに、新しい所有者が利用者のデータを収集する更新を配信し、拡張機能は取り下げられました。Polyfill.ioの間隔が4か月、xz-utilsの間隔が28か月だったのに対し、これは2週間でした。
ASUS、2019年
正しく署名され、ベンダー自身のサーバーから配信されたベンダーの更新ユーティリティが、多数の端末へ裏口を届けました。研究者は、そのペイロードが各端末を数百件のネットワークアドレスの組み込み一覧に照らして確認し、それ以外のどの端末でも何もしなかったことを明らかにしました。大量配布は、ごく少数の狙った標的に届けるための手段でした。
SolarWinds、2020年
攻撃者がネットワーク管理製品のビルドの流れに到達し、署名されたリリースにコードを挿入しました。影響を受けたバージョンを導入したのは18,000社未満と見られており、さらに深く追跡されたのはそれよりはるかに少数でした。それを見つけたのは、自社の仕組みへの侵入を調査していたセキュリティ企業であり、顧客ではありませんでした。
The Great Suspender、2020年
200万件を超える導入実績を持つブラウザー拡張機能が、開発者から身元を開示されていない買い手へ売却されました。機能は変わらず、どの更新も異常には見えませんでした。悪意のある挙動は5か月後に現れ、拡張機能は翌年2月に削除され、利用者の端末上で遠隔から無効化されました。
Kaseya、2021年
マネージドサービスの提供者が顧客を管理するために使う遠隔管理のプラットフォームを通じて、ランサムウェアが配信されました。最大でおよそ1,500社の下流の事業者が影響を受け、そのほとんどはそのプラットフォームの名前を聞いたこともありませんでした。彼らは自ら動かしていた何かではなく、提供者の道具を通じてさらされたのです。
Log4Shell、2021年
膨大な数のアプリケーションに存在するJavaのログ出力ライブラリの欠陥が、容易に悪用できる状態になり、組織はそのライブラリがどこにあるのかを確定しようと数週間を費やしました。ほとんどの組織は、その問いに素早く答えられませんでした。この混乱は、欠陥そのものよりも、それを照らし合わせる目録が存在しないことについてのものでした。
3CX、2023年
ある従業員が、業務と無関係な取引ソフトウェアのトロイの木馬入りの複製を私物の端末に導入しました。攻撃者はそこで得た資格情報を使って企業自身のビルド環境に到達し、600,000社を超える顧客組織を持つデスクトップアプリケーションにトロイの木馬を仕込みました。これは、あるサプライチェーン侵害が別の侵害を準備するために使われた、最も明確に記録された事例です。
MOVEit、2023年
管理されたファイル転送製品の欠陥が、それを動かしていた組織と、それらの組織がデータを預かっていたさらに多くの組織から、データを抽出するために使われました。追跡機関は2,000社をはるかに超える影響を受けた組織と、数千万人の個人を記録しました。それらの個人の多くは、そのソフトウェアとも、それを運用していた企業とも何の関係もありませんでした。
xz-utils、2021年から2024年
ある識別情報が2021年10月に中核的な圧縮ライブラリへ最初のごく普通の貢献を行い、一見無関係な声による持続的なキャンペーンが単独の保守担当者に手助けの受け入れを促したあと、2022年半ばにより大きな役割を与えられ、2024年2月にビルドのスクリプトへ裏口を挿入しました。検出すべき不正な段階が何もないまま28か月が経過しました。最後の一つを除いて、どの段階も本物だったからです。それが見つかったのは偶然であり、無関係な性能上の問題を調べていた技術者によってでした。そして到達していたのは安定版のリリースではなく、試験版と順次更新される配布版でした。
Polyfill.io、2024年
広く使われているスクリプトのサービスが、2024年2月にそのドメインとリポジトリを中国に登記された企業へ売却し、開発者たちは同じ月に公開のリポジトリの課題としてその変更を取り上げました。悪意のあるリダイレクトが6月下旬に独立して記録され、100,000を超えるサイトに影響しました。買収した企業は2025年5月に、無関係な詐欺行為をめぐって米国財務省から制裁を受けました。
CrowdStrike、2024年
セキュリティのエージェントに対する不具合のあるコンテンツ更新によって、Microsoftによればおよそ850万台のWindows端末が起動しなくなりました。何も侵害されておらず、誰も何も攻撃していません。航空会社、病院、銀行が動かなくなったのは、それらがすべて同じ構成要素に依存していたからです。それが、集中度が偶然によって壊れるときの姿です。
tj-actions、2025年
盗まれたアクセストークンが、広く使われている継続的インテグレーションの処理のバージョンタグを書き換えるために使われ、それらがビルドの秘密情報を公開で読めるログに出力するコードを指すようにされました。およそ23,000のリポジトリがその処理を参照していました。そのトークンは数か月前に、無関係な別の計画を通じて取得されていたものです。
Shai-Hulud、2025年
盗まれた公開用の資格情報が、パッケージのリリースにコードを追加するために使われ、そのコードが導入先の端末から資格情報を収穫し、それを使ってさらに別の影響を受けたリリースを公開しました。これは主要なパッケージレジストリにおける自己増殖型の侵害として、最初に記録された事例です。最初の波で100を超えるパッケージが影響を受けました。

所有が移った瞬間に評価は失効する

それが、そもそも当事者を解明しておくべき理由であり、そのあとに記録を読むべき理由です。マップを生む手法と、1回のセッションが何を確定するのかは、次の解説で扱います。