TheFloW氏の1万2500万ドル報奨金の脆弱性か PS4とPS5で動作するPoCが公開

Logic Sunriseで、RobbedColek氏がHackerOneにTheFloW氏が報告した脆弱性と考えられるPS4とPS5で動作するPoC(概念実証:実用化が可能であることを示すデモンストレーション)のコードを公開したことを伝えていました。

HackerOne aapo

Logic Sunriseでは「5万ドルの脆弱性に関するPoCが発表された?」というタイトルになっていますが、そのPoCのコードを発表したRobbedColek氏は「TheFloW氏の脆弱性(と思われる)」と言っているのでaapo氏が過去最高額の5万ドルの報奨金を得た脆弱性と同時期のTheFloW氏の1万2500万ドル報奨金の脆弱性の話になります。5万ドルの方ではありません。

TheFloW氏は一切情報を公開していませんが、可能性のある脆弱性がDiscordの中で話題になり複数のPoCが公開されたようですが、その中でRobbedColek氏のコードだけが動作したようです。

動作したのはPS4-PS5-CVE-2006-4304.pyというPythonスクリプトで、これを公開したRobbedColek氏は「これはTheFloW氏がHackerOneで報告したものと思われる。」とコメントしています。このコメントによってTheFloW氏の脆弱性に関連付けされただけであることには注意が必要です。

Python3とコンピューターネットワーク用のパケット操作ツールScapyが動作する環境を持つPCとPS4/PS5をLANケーブルで繋ぎPPPoEで接続するようにして、PS4/PS5本体でインターネット接続テストを実施し、PS4-PS5-CVE-2006-4304.pyを実行するとコンソールがクラッシュします。このクラッシュがCVE-2006-4304の脆弱性が有効である証明となります。

動作するのは
PS4: 11.0以下
PS5: 8.20以下

です。11.02/8.40で対策された可能性のあるTheFloW氏の脆弱性と条件は一致します。

CVE-2006-4304は2006年に識別子が発行されたことから分かるとおり、18年前に修正されたはずの脆弱性です。FreeBSDのPS4とPS5はシステムがFreeBSDベースのためFreeBSDの脆弱性はそのままPS4とPS5の脆弱性に繋がる可能性があります。

内容はsppp ドライバにおけるバッファオーバーフローの問題によりリモートの攻撃者が細工されたLCP(Link Control Protocol)パケットを経由して任意のコードを実行できてしまうというものです。

PS4の発売は2013年ですので、CVE-2006-4304発行から7年経過した後に発売されたものに脆弱性が復活していたことになります。結局システムを開発するのは人間ですので、「誰かさんのミス」で気付かないうちに脆弱性が復活してしまったのでしょう。TheFloW氏がHackerOneに報告した脆弱性が本当にそれで、結果1万2500万ドルの報奨金に繋がったのだとするとちょっとお粗末です。

このCVE-2006-4304が有効活用される可能性はたりますが、もっと深刻なのは「過去に対策されたはずの脆弱性が復活していた」と言う事実です。当然他にも同様の事例はあるだろうと考えられるので、過去の情報を最新ゲーム機の最新ファームウェアてでトレースするだけで脆弱性が続々出てくる可能性が否定できなくなりました。