WordPress RCE「wp2shell」:GPT-5.6 Sol Ultra が約25ドルで発見した50万ドル相当の認証前脆弱性

Searchlight Cyber のセキュリティ研究者アダム・クウェスは、OpenAI の最新フラッグシップモデル GPT-5.6 Sol の Ultra モードを活用し、WordPress の深刻な脆弱性を発見した。

かかったコストは週次利用枠の約50%分で、月額200ドルのサブスクリプション料金を使用量に応じて按分した発見者の試算ではわずか約25ドル(約3,750円)に相当する。

発見されたのは、認証を一切必要としない「認証前リモートコード実行(Pre-Authentication RCE)」の脆弱性だ。Searchlight Cyber の推定では、エクスプロイトブローカー(脆弱性の売買仲介業者)市場においてこうした信頼性の高いRCEは最大50万ドル(約7,500万円)の価値を持つとされる。Searchlight Cyber は世界で5億以上のウェブサイトが WordPress 上で稼働していると推定しており、この発見の重大さは計り知れない。

クウェスは、GPT-5.6 Sol(Ultraモード)に対し、WordPress のソースコードのローカルコピーを対象に、4体のエージェントを使って少なくとも6時間かけてコード監査を行うよう指示した。実際にエクスプロイトチェーンが完成するまでに要した時間は10時間超だった。

モデルが特定したエクスプロイトの核心は、WordPress 5.6(2020年)から導入されたBatch APIの実装上の欠陥にある。Batch API はバリデーション(検証)と実行を別々のループで処理する設計であり、リクエストが不正な形式だった場合に $matches 配列と $validation 配列の間にずれ(デシンク)が生じる。このずれを悪用することで、あるリクエストの検証結果を、別のエンドポイントの実行に対して適用させることができる。

この欠陥を入口に、モデルは次の段階的なエクスプロイトチェーンを構築した。まず Batch API のデシンクを利用して、GET /wp/v2/postsauthor_exclude パラメータに対するサニタイズ処理を回避し、認証前 SQL インジェクションを成立させる。Batch API は通常 GET リクエストをサポートしないが、モデルはバッチリクエストを再帰的に入れ子にするという独創的な手法でこの制限を突破した。

次に、SQL インジェクションを使って WordPress のインメモリ投稿キャッシュを汚染し、oEmbed のキャッシュ機構を経由してデータベースに偽造した投稿レコードを書き込む。さらに、投稿の親子関係に意図的にループ(循環参照)を生じさせることで、WordPress の循環検出ロジックを誘発。このロジックが wp_update_post を呼び出す際、post_content を上書きしないコードパスを利用して、customize_changeset(テーマ設定の変更セット)を任意の内容で偽造することに成功する。

偽造されたチェンジセットには user_id: 1(検証例では管理者ユーザーのID)が指定されており、WordPress はリクエスト処理中に一時的に管理者権限を帯びる。その状態で parse_request フックを呼び出すことでリクエスト全体を管理者権限で再実行させ、最終的に新しい管理者アカウントを作成し、悪意あるプラグインをインストールしてコード実行を得る。

Searchlight Cyber はパッチ適用の猶予を確保するため公開を遅らせたが、その間に Calif(X/@calif_io)と Hacktron の研究者たちが、この完全なエクスプロイトチェーンを独立に再現した。その後、GitHub 上には第三者による複数の概念実証(PoC)コードが公開された。

管理者は、最新の WordPress のセキュリティアップデートを直ちに適用し、/wp-json/batch/v1 への不審なアクセスがないかログを確認することが強く求められている。また、wp2shell.com では脆弱性の有無を確認できる無償スキャナーが公開されている。

From: GPT-5.6 Sol Ultra Found Wp2shell RCE Flaw That Could Be Worth $500,000 for About $25

【編集部解説】

「AIがセキュリティ研究を変える」という言葉は、ここ数年で何度も繰り返されてきました。しかし今回の事案は、その変化が「予言」から「現実」に転じた瞬間として、記録に残るかもしれません。

GPT-5.6 Sol Ultra が WordPress に対して成立させた攻撃チェーン「wp2shell」は、2026年7月17日にパッチが公開されました。割り当てられた CVE は2件で、REST API のバッチルート混乱を突く CVE-2026-63030(クリティカル)と、SQL インジェクションの CVE-2026-60137(WordPress 公式は高重要度と分類)です。影響を受けるのは WordPress 6.9.0〜6.9.4 および 7.0.0〜7.0.1 で、この範囲では両脆弱性を連鎖させた完全なRCEが成立します。WordPress 6.8.0〜6.8.5 は SQL インジェクション(CVE-2026-60137)のみが該当し、RCEチェーンは成立しません。修正済みバージョンは 7.0.2、6.9.5、6.8.6 です。WordPress.org は深刻度を踏まえ、強制自動更新を有効化しています。ただし、自動更新が無効化されているサーバー環境や、バージョン管理されたデプロイメントでは適用されない場合があるため、管理者自身による確認が不可欠です。

この脆弱性を「発見」したのが、10時間稼働させたAIモデルだったという事実が、今回の本当の震源地です。

コスト非対称の問題

エクスプロイトブローカー市場では、信頼性の高い認証前 RCE の相場は高い。Searchlight Cyber はその価値を最大50万ドル(約7,500万円、1ドル=150円換算)と推定しています。一方、GPT-5.6 Sol Ultra を使った今回の調査にかかったコストは、月額200ドルのプランにおける1週間分の使用量の約50%分、実質約25ドル(約3,750円)です。

この非対称性が、何を意味するかは明らかです。高度なセキュリティ研究が、これまで必要とされていた専門知識・時間・資金のハードルを大幅に下げる形で、「民主化」されつつあります。それは守る側にとっても使える道具ですが、攻撃する側が先に動いた場合の影響もまた、桁違いになります。

OpenAI 自身が引いていた「線」

GPT-5.6 Sol は、2026年6月26日に米国政府への事前共有と限定パートナー向けプレビューを伴う形で発表され、同年7月9日に一般公開されました。OpenAI はリリース時に「脆弱性の発見と修正を支援することには長けているが、エンドツーエンドの攻撃を確実に実行する能力には届いていない」と評価していました。一般公開から11日後の7月20日、Searchlight Cyber はこの発見を公表しました。なお、脆弱性の実際の発見日は明らかにされていません。今回の事案は、OpenAI が行った事前評価の限界や、評価条件によって実能力の見え方が変わることを示す重要な事例となっています。

これは孤立した事例ではない

今回の発見の数日前、セキュリティ研究組織 Hacktron は同じ GPT-5.6 Sol Ultra を使い、Google Chrome の V8 エンジンに対する完全なエクスプロイトチェーンを構築したことを公開しています。ただし、この実験は公開済みのセキュリティ修正コミットを起点としており、新規ゼロデイの発見を含む wp2shell とは性質が異なります。その Hacktron が今回、wp2shell の独立再現にも名を連ねています。同じAIモデルが、1週間以内に Chrome と WordPress、2つの広く使われるソフトウェアへの攻撃チェーン構築・再現に関わっているのです。

「AIによる脆弱性発見・開発」が単発の話題ではなく、繰り返し起きる現象になりつつあることを示す兆候として、この事案は重く受け止める必要があります。

エクスプロイトチェーンの異様な創造性

研究者のアダム・クウェス自身が、AIが生み出した手法を「完全に理解するのに、AIが書くよりもはるかに長い時間がかかった」と率直に認めています。再帰的なバッチリクエストによるGET制限の突破、oEmbed キャッシュ機構を経由したデータベースへの偽造レコード書き込み、parse_request フックを利用したリクエスト再実行——これらは、編集部の解釈では、「既存のコードの意図を深く理解した上で、複数のサブシステムを跨いでガジェットを連鎖させる」という、熟練した人間の研究者でも10時間では辿り着けない水準の思考です。

管理者の方へ、今できること

もし WordPress を運用しているなら、まず現在のバージョンを確認してください。7.0.2、6.9.5、6.8.6 のいずれかへの更新が急務です。/wp-json/batch/v1 および ?rest_route=/batch/v1 への不審なアクセスがないかログを確認することも、感染の有無を判断する手がかりになります。すでに侵害が疑われる場合、パッチ適用だけでは不十分です。バックドアが仕込まれた後では、コアの更新はそのバックドアを消しません。テーマ、プラグイン、アップロードフォルダ、永続化設定まで含めた調査が必要です。wp2shell.com には、脆弱性の有無を確認できる無償スキャナーが公開されています。

【用語解説】

RCE(リモートコード実行 / Remote Code Execution)

攻撃者が対象のサーバー上で任意のコードを遠隔から実行できる脆弱性の総称。成功すれば、ファイルの読み書き、管理者アカウントの作成、バックドアの設置など、サーバー上でほぼあらゆる操作が可能になる。セキュリティ脆弱性の中でも最も深刻なクラスと位置づけられている。

認証前RCE(Pre-Authentication RCE)

ログインや認証を一切必要とせず、匿名のHTTPリクエストだけで成立するRCE。通常のRCEより格段に危険度が高く、エクスプロイトブローカー市場でも特に高い価値が付く。今回のwp2shellはこのカテゴリに属する。

SQLインジェクション

アプリケーションへの入力値に悪意あるSQL文を混入させ、データベースを不正に操作する攻撃手法。本来意図されていないデータの読み出し、書き換え、削除などが可能になる。今回のwp2shellでは、これがRCEへの「入り口」として機能した。

エクスプロイトチェーン(Exploit Chain)

単体では限定的な影響しかない複数の脆弱性を順番に組み合わせ、最終的に重大な権限奪取やコード実行へと至る一連の攻撃手順。wp2shellはSQLインジェクション、キャッシュ汚染、チェンジセット偽造、フック悪用という4段階以上のチェーンで構成されている。

CVE(Common Vulnerabilities and Exposures)

公開された情報セキュリティ上の脆弱性に付与される共通識別子。「CVE-[年]-[連番]」の形式で管理され、世界中のセキュリティ製品やデータベースで横断的に参照される。今回のwp2shellにはCVE-2026-60137(SQLインジェクション)とCVE-2026-63030(Batch APIルート混乱)の2件が割り当てられた。

エクスプロイトブローカー(Exploit Broker)

未公開の脆弱性(ゼロデイ)やそのエクスプロイトコードを研究者から買い取り、主に政府機関や諜報機関などに販売する仲介業者。Crowdfense などが知られる。価格はターゲットの普及度や攻撃の成立条件によって大きく異なる。

PoC(概念実証 / Proof of Concept)

脆弱性が実際に悪用可能であることを示すために作成されたデモ用コードやツール。攻撃の実用性を証明するために使われるが、公開されると攻撃者に悪用されるリスクが高まる。今回は Searchlight Cyber が詳細を公表する前に Calif と Hacktron が完全なチェーンを独立に再現し、その後、第三者による複数のPoCがGitHub上に公開された。

Batch API(バッチAPI)

WordPress 5.6(2020年)から導入されたREST APIの機能。/wp-json/batch/v1 エンドポイントを通じて、複数のAPIリクエストを1つのHTTPリクエストにまとめて送信・処理できる。今回の脆弱性は、このBatch APIのバリデーションループと実行ループの実装上の不整合を突くものだった。

oEmbed(oEmbedキャッシュ)

外部URLのコンテンツ(動画、記事など)を埋め込み表示するためのプロトコル。WordPressはパフォーマンス向上のため、取得した埋め込みデータを wp_posts テーブルに oembed_cache 型の行として保存する。今回の攻撃では、この仕組みを利用してデータベースに偽造レコードを書き込む「踏み台」として使われた。

customize_changeset(カスタマイズチェンジセット)

WordPressのテーマ設定の変更草稿を保存するための特殊な投稿タイプ。指定されたユーザーIDの権限で設定変更を一時的に適用する機能を持つ。今回の攻撃では、管理者のユーザーIDに紐づくチェンジセットを偽造することで、一時的に管理者権限を取得する手段として利用された。

wp2shell

今回の脆弱性チェーンに研究者が付けたコードネーム。CVE-2026-63030(Batch APIルート混乱)とCVE-2026-60137(SQLインジェクション)を連鎖させることで、認証なしのRCEが成立することから、「WordPress → shell(コード実行)」を意味する命名とみられる。Log4Shellなどの命名慣例に倣ったものとみられる。

WordPressフック(Hook)

WordPressのプラグインエコシステムを支える拡張機構。アクション(戻り値なし)とフィルター(戻り値あり)の2種類があり、do_action() で任意のアクションを呼び出せる。今回の攻撃の最終段階では、parse_request フックをプログラム的に呼び出すことで、リクエスト全体を管理者権限で再実行させた。

【参考リンク】

OpenAI(外部)
GPT-5.6 Solの開発元。フラッグシップモデルのSolは、同社史上最も高いサイバーセキュリティ能力を持つモデルと位置づけられている。

Searchlight Cyber(外部)
今回の発見者アダム・クウェスが所属するサイバーセキュリティ企業。ダークウェブ脅威インテリジェンスとASMプロダクトを展開している。

WordPress.org(外部)
ウェブサイト全体の43%超で使われるオープンソースCMS。7月17日に緊急セキュリティリリース(7.0.2・6.9.5・6.8.6)を公開した。

wp2shell.com(外部)
Searchlight Cyberが公開した、wp2shellの脆弱性有無を確認するための無償ホスト型スキャナー。

【参考記事】

Exploit brokers pay $500,000 for a WordPress RCE. I found one with GPT5.6 Sol Ultra and $25 ― Searchlight Cyber(外部)
発見者アダム・クウェスによる一次情報。プロンプト全文とコスト算出根拠(週間使用量の50%分≒約25ドル)を含む最重要ソースだ。

‘WP2Shell’ Opens Millions of WordPress Sites to Remote Takeover ― Dark Reading(外部)
watchTowrによれば、ハニーポットが数万件の攻撃試行と100件超のバックドアアカウント作成を記録したと報告している。

WordPress 7.0.2 Security Release ― WordPress.org(外部)
wp2shellに対応する公式緊急セキュリティリリース。影響バージョン・修正内容・強制自動更新の適用を公式が説明している。

WordPress releases emergency update for critical ‘wp2shell’ RCE flaw ― CyberInsider(外部)
CVE割り当て、パッチバージョン(7.0.2・6.9.5・6.8.6)、Wordfence によるバッチエンドポイント解析を網羅した速報記事だ。

New wp2shell WordPress Core Flaw Lets Unauthenticated Attackers Run Code ― The Hacker News(外部)
CVE-2026-63030とCVE-2026-60137を軸に技術概要とパッチ情報を整理。強制自動更新の有効化も確認できる。

Previewing GPT-5.6 Sol: a next-generation model ― OpenAI(外部)
「脆弱性の発見と修正には長けるがエンドツーエンドの攻撃実行には届かない」というOpenAI自身の評価を確認できる公式ページだ。

GPT-5.6 Sol Ultra Builds Full Chrome Exploit Chain From Security Patches ― Cyber Security News(外部)
Hacktronが公開済み修正コミットを起点にChrome V8のエクスプロイトを構築した実験の詳細。wp2shellとは性質が異なる事例だ。

【編集部後記】

Searchlight Cyber のブログには、今回の調査で実際に使ったプロンプトが全文公開されている。OpenAI が「循環二重被覆予想」の証明に用いた数学向けプロンプトを、コード監査に転用したものだ。読むと、エージェント数・探索時間・アプローチの多様性まで細かく指定されていることがわかる。WordPress の Batch API は2020年(WordPress 5.6)に導入されて以来、約6年にわたって広く利用されてきた。ただし今回の完全な攻撃チェーンに必要な要素が揃ったのは WordPress 6.9 以降であり、その土台となる実装上の問題が長期間見落とされてきたことになる。同じプロンプト設計が MySQL や PHP 本体に向けられたとき、wp2shell は例外だったと言えるのか。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です