PS5の6年越しの防衛網が陥落:ありふれたバグを繋ぎ合わせた完全突破チェーン

PS5の6年越しの防衛網が陥落:ありふれたバグを繋ぎ合わせた完全突破チェーン

セキュリティエクスプロイトシステムエンジニアリング

データソース:GitHub + HN 讨论

2026年9月末、「Relapse」と名付けられたエクスプロイトチェーンのソースコードがGitHub上に公開された。このプロジェクトは極めて広範な影響力を持つ。PS5のファームウェア7.00から13.60に至るすべての防衛線を一挙に貫通したのだ。6年間に及ぶシステムの進化の中で、ソニーは低レイヤーのコンポーネントに継続的な修正パッチを当ててきたが、この攻撃チェーンは強固な暗号化層を力任せに破ろうとはしなかった。一見するとありふれた2つの論理的欠陥を組み合わせることで、ゲーム機全体の完全な読み書き権限を直接奪取したのである。

単一配列の汚染からサンドボックスをこじ開ける

突破口となったのは、本来厳密に制限されていたブラウザ環境だった。Relapseチェーンの第一歩は、ブラウザのJavaScriptエンジンにおける情報漏洩と、構造化クローン処理におけるオブジェクトプールの不整合を連動させ、特定のデータ構造を汚染することから始まる。

このプロセスは、コインロッカーの管理システムで発生した論理的な手違いに例えられる。返却されたばかりのロッカーをシステムが即座に次の利用客へ割り当てたにもかかわらず、前の客の利用控でもその扉が開いてしまうような状況だ。メモリ空間において、攻撃者はこの不整合を突いて型付き配列(typedarray)の内部状態を正確に上書きする。この配列を掌握することは、ブラウザのサンドボックス内部において、周囲のメモリデータを自由自在に書き換える万能の鍵を手に入れたことを意味する。

PS5本体実機 図:PS5本体とDualSenseコントローラー。出典:Wikimedia Commons

単なるメモリの汚染だけでゲーム機全体を攻略することはできない。しかし、その汚染がシステム境界の跳躍台で起きた瞬間、防衛線の最も外側にあるフェンスはすでに取り払われている。この汚染されたメモリを足がかりに、攻撃者はブラウザ空間の内部で後続の実行環境を展開し始める。

マイクロ秒の競合を制してカーネルを貫通

ブラウザ内での境界外アクセスは、最初の足場にすぎない。ゲーム機全体の完全な制御権を握るには、下層のカーネルに向けた権限昇格が必要となる。Relapseチェーンの第二歩は、OSカーネル内の非同期I/O待機機構(aio_multi_wait)へと向けられた。

攻撃者は直前のステップで取得したカーネルアドレスの漏洩情報を利用し、システム深部で「解放後使用(UAF)」の競合状態(Race Condition)を引き起こす。システムが重要なメモリ領域を解放して回収しようとしたまさにその瞬間、攻撃者はマイクロ秒単位のわずかな隙間を突き、システムが制御を取り戻す前にその領域を再占有する。単体ではプログラムのクラッシュを引き起こすにすぎない2つの独立した機構上のエラーが、寸分の狂いもなく緊密に連結された。

PS5マザーボード分解詳細 図:PS5マザーボード。攻撃面は最終的にシステム管理とカーネル側に到達する。出典:Wikimedia Commons

防御システムは単一ノードへの正面攻撃には強い耐性を示すが、複雑なシステム内部の状態遷移プロセスを完全に封鎖することは極めて困難だ。ありふれた2つの欠陥が重なり合った結果、低レイヤーに張り巡らされた厳格な暗号検証モジュールはすべて素通りされてしまった。

十数人のコミュニティリレーが紡いだ低レイヤーの突破口

6年間にわたるファームウェア防衛線を打ち破ったこのエクスプロイトチェーンは、単独の研究者による孤立した発見の産物ではない。プロジェクトのクレジット欄には、この研究の流れにおいて決定的なピースを提供した10人以上の開発者の名前が並んでいる。初期のブラウザ脆弱性の発掘から、中期のカーネルアドレス特定技術、そして最終的なELFローダーの統合に至るまで、チェーンの各段階は異なる研究者たちによって異なる時期に確立されてきた。

防御側が対峙しているのは、もはや固定された単一の攻撃者ではなく、分散型のオープンソースコミュニティそのものである。ある者が構造化クローンの不整合機構を見つけ出し、数か月後に別の者がそれをカーネルの並行性問題へと結びつけた。システムの防御論理にわずかでも隙間が生じれば、コミュニティによるリレー形式の研究がそこをこじ開け続け、最深部へと至る完全な通路を完成させてしまう。

無限再起動で挑むシステム防御との確率戦

Relapseのドキュメントにおいて、開発者はこのエクスプロイトチェーンの失敗率の高さについて隠そうとしていない。ブラウザ段階ではページがフリーズすることがあり、その場合の唯一の対処法はページの再読み込みである。カーネル段階に進むと、本体が深刻なエラーを起こして電源が強制遮断される確率があり、その場合はハードウェアを再起動して一からやり直すほかない。

しかし攻撃側は何度失敗しても痛手を受けない。再起動を繰り返す中で一度でも正しいメモリアドレスを引き当てれば、チェーンは完遂され、本体上でELFローダーが立ち上がって後続の命令を待ち受ける状態になる。防御側にとっては、100万回の防衛に成功したとしても、たった一度タイミングの競合を取りこぼすだけでゲーム機全体の権限を明け渡すことになる。年々引き締められてきたソニーのファームウェア防衛網は、確率論の上に築かれ、何度でも試行を繰り返せる攻撃フレームワークの前に晒されている。

脆弱性発掘エコシステムの変容と古参研究者の退場

今回の公開に対する技術コミュニティの反応は、セキュリティ攻防のもう一つの現実を浮き彫りにした。コミュニティの議論の中で、あるベテラン研究者はすでにシーンから身を引いたことを明かし、その理由として脆弱性発掘エコシステム自体の変容を挙げている。

新規参入者の多くが自動化ツールやAIモデルに依存し、浅い論理的脆弱性を大量に発掘しては、検証後すぐに公開してしまうようになった。このような高頻度の情報公開により、脆弱性がより深い研究に結びつく前にプラットフォーム側がパッチを配信して塞いでしまう。長い時間をかけて深く掘り下げる研究手法が、即効性を重視したファストフード型の発掘によって寸断されているのだ。

コミュニティがこうしたエコシステムの激変に直面するのは今回が初めてではない。以前、PS5環境へのLinux移植を主導していた中核メンバーが去った際にも、同様のコミュニティ構造の変化に対する苦言が聞かれた。6年間のファームウェア防衛網が2つの論理的欠陥によって突破された事実は、セキュリティの境界が複雑なシステムの状態管理において敗北したことを物語っている。ありふれたメモリのずれを積み重ねて防壁を打ち破る手法は、セキュリティ攻防の進化のペースそのものを塗り替えつつある。

参考リンク:

  • GitHub Relapse-Exploit
  • HN 討論
  • Wikimedia Commons