PC版「メタルギアオンライン」(MGO3)に、対戦ロビーに参加するだけで任意コード実行(RCE)を許してしまう深刻な脆弱性が見つかった。CERT/CCが2026年8月24日に公開したアドバイザリによると、脆弱性は「CVE-2026-19874」として登録されており、バージョン1.1.2.8以前が影響を受ける。修正版1.1.2.9では該当の不具合が修正され、旧バージョンはそもそもオンラインサービスへ接続できないよう制限された。
kick_numの検証漏れが招いたヒープ破壊 #
問題の起点は、ロビー内でプレイヤーを除外(キック)する機能にある。この処理で渡される「kick_num」というパラメータの数値検証が不十分で、想定より極端に大きな値を送り込むと、確保済みのメモリ領域を超えてデータを書き込めてしまう。ヒープベースのバッファオーバーフローと呼ばれる典型的なメモリ破壊バグだ。厄介なのは、上書きされる領域の近くにSteamworks連携用のコールバック情報が配置されていたことだ。攻撃者はこの情報を改ざんすることで、ゲームが次に実行する処理のアドレスを乗っ取り、任意のコードを実行できてしまう。プレイヤー側の操作は「悪意あるホストのロビーに参加する」だけで済むため、通常のオンライン対戦の流れの中で気づかぬうちに攻撃が成立してしまう。
多人数対戦コードに潜む古くて新しいリスク #
この種の脆弱性は目新しいものではない。ネットワーク対戦のコードはサーバーとクライアントが任意の入力を送り合う構造上、Webアプリより検証が甘くなりがちで、過去にも大型タイトルで同種のRCEが繰り返し報告されてきた。今回はセキュリティ研究者からの報告を受け、CERT/CCが2026年7月15日にコナミへ通知してから約1カ月で修正版が配布されており、対応スピード自体は評価できる。ただし修正が「サーバー側のバージョン番号を15から16へ引き上げ、旧クライアントの接続を強制遮断する」という力技である点は、根本原因であるパラメータ検証の甘さが他の処理にも潜んでいる可能性を示唆する。現時点で実際の悪用報告はないが、PoCが出回れば模倣攻撃のリスクは高まる。プレイヤーは自動更新を有効にし、最新版であることを確認するのが最も確実な自衛策だ。
COMMENTS 0
まだコメントはありません。最初のコメントを投稿しよう。