承認待ちのコメントに仕込まれたリンクを、編集者が1回クリックする。WordPress 7.1.3で塞がれた穴の一つは、承認という日常業務の中にありました。同じ日には、ユーザー一覧に出ない管理者を作る攻撃も報告されています。管理画面に並ぶ一覧は、どこまで信じてよいのでしょうか。
WordPress.orgは2026年10月6日、WordPress 7.1.3を公開した。セキュリティ修正7件とバグ修正4件を含み、公式は即時の更新を推奨している。
修正対象は、承認待ちコメントを経由するコメント管理画面の格納型XSS、WP_Http::make_absolute_url()のDoS、WXRエクスポートの二次SQLインジェクション、投稿者権限で投稿を先頭固定できる問題、非公開・未公開投稿のコメントが未認証で開示される問題、Imgur埋め込みのXSS、{status}_{type}フックのアクション名衝突である。このうち3件はAnthropicが報告した。セキュリティ修正は、4.7系までの対象ブランチへ準備が整い次第バックポートされる。
From:
WordPress 7.1.3 Maintenance and Security Release
【編集部解説】
7件の修正のうち、米ホスティング事業者のPantheonが仮想パッチの対象として名前を挙げたのは、コメント管理画面の格納型XSSでした。
7.1.3で修正されたもの
WordPress.orgは日本時間10月7日2時、WordPress 7.1.3を公開しました。セキュリティ修正7件とバグ修正4件を含むリリースで、公式は即時の更新を推奨しています。自動バックグラウンド更新が有効なサイトでは、更新処理が自動で始まります。
7月17日の7.0.2から数えると、この3か月足らずで6回目のセキュリティリリースです。9月22日の7.1.2からは、2週間しかたっていません。
公式のリリース本文が未認証で成立すると明記しているのは、1件だけです。非公開・未公開の投稿に付いたコメントが、ログインしていない訪問者に読めてしまう問題で、PatchstackはこれにCVE-2026-66666、CVSS 6.9を付けて公開しています。
残る6件の成立条件は、Patchstackの解析が整理しています。投稿を先頭に固定できてしまう問題は投稿者以上、WP_Http::make_absolute_url()のDoSとImgur埋め込みのXSSは寄稿者以上のアカウントが前提です。WXRエクスポートの二次SQLインジェクションは、不正なアイキャッチ画像のIDが保存されたサイトで、管理者が単一の投稿タイプをエクスポートする場合です。標準の「すべてのコンテンツ」のエクスポートは対象外とされています。フックのアクション名衝突は、値をそのまま渡す作りのプラグインがある場合に限られます。
そしてコメント管理画面の格納型XSSは、承認待ちのコメントに仕込まれたリンクを、コメントを承認する権限を持つ編集者以上の利用者がクリックすることが条件です。影響を受けるのは7.1.0から7.1.2までです。
Pantheonが仮想パッチの対象に挙げたもの
Pantheonは顧客向けの告知で、コメント管理画面の格納型XSSについて、自社のルーティング網で外部からの悪用を抑える仮想パッチを適用したと書いています。他の6件への対策の有無や、この1件を挙げた理由は、告知では示されていません。
この1件で注目したいのは、外から届くコメントと、管理者や編集者が日常的に使う画面が、つながっている点です。
コメントを受け付けているサイトでは、外から届いたコメントが承認待ちの列に並びます。WordPressの標準設定では、過去に承認されたことのない人のコメントは、まず承認待ちに入ります。その列を開いて中身を確かめるのは、編集者や管理者の仕事です。
今回の穴は、その仕事の途中でリンクを1回クリックすると、スクリプトが動く形でした。開くだけで動くわけではありませんが、攻撃の入口が、承認という日常業務の中に置かれていたことになります。
同じ日に報告された、XSSを「入口」にする攻撃
7.1.3と同じ10月6日、WordPressのセキュリティ企業Patchstackが、ある攻撃キャンペーンを報告しました。
最初に断っておくと、これは7.1.3で修正されたコアの脆弱性とは関係がありません。使われたのは、WooCommerce向けのWPC Product Bundles(報告時点で有効インストール3万以上)と、フォーム作成のNinja Forms(同50万以上)という、2つのプラグインの格納型XSSです。前者は10月4日、後者は10月5日に悪用の試みが観測されました。
こちらは、コアのXSSよりも条件が軽い形です。プラグインの入力欄に、外部のJavaScriptを読み込む命令を仕込む。管理者がWooCommerceの注文やフォームの送信内容を管理画面で開くと、それだけでスクリプトが管理者のログイン状態のまま動きます。
スクリプトは管理者のCookieを盗みません。管理者のセッションにそのまま乗り、WordPress本来の機能を使って、偽のプラグインのインストールと管理者アカウントの作成を進めます。
Patchstackが解析した結果、1回の成功で攻撃者が手にする再侵入の経路は4つありました。
・管理画面から見える、新しい管理者アカウント
・ユーザー一覧に表示されない、隠された管理者アカウント
・サイトで最も古い管理者として自動ログインできる、専用のURL
・認証のないファイル管理画面
隠された管理者は、ユーザー一覧にも、権限ごとの絞り込みにも、一覧上部の人数の合計にも現れません。仕込まれる2つのmu-plugin(必ず読み込まれるプラグイン)の更新日時は、WordPressのルートで見つかった最も古い日時に合わせて書き換えられます。最近変更されたファイルを探す、という定番の確認をすり抜けるように作られています。
そしてPatchstackは、この攻撃者が特定のプラグインに縛られていない点を強調しています。管理者の目の前にJavaScriptを置ける格納型XSSなら、どれでも同じ後段の仕組みにつなげられる。だから入口を集めている、という見立てです。同社はその文脈で、9月の7.1.1で修正された、コメント本文を経由する格納型XSSにも触れています。
7.1.3のコメント管理画面のXSSが悪用されたという報告は、確認できる範囲ではありません。成立にはクリックという一手間も要ります。それでも、管理業務で開く画面に入口がある、という形そのものは、攻撃者が集めているものと重なっています。
7.1.1で書いた「アカウントの確認」を、一段深く
9月の7.1.1の記事では、権限を前提とする脆弱性が多いことから、「そのサイトに、いま誰のアカウントが残っているか」を確かめることをお勧めしました。
今回のキャンペーンは、その確認の仕方そのものを一段引き上げています。管理画面のユーザー一覧は、もう唯一の正解ではありません。
Patchstackは、データベースから管理者権限を持つアカウントを列挙し、管理画面のユーザー一覧と照合する方法を示しています。表示の条件や対象のサイトをそろえても一覧に出ない管理者があれば、隠蔽を疑う手がかりになります。あわせて、通常のプラグイン一覧とは別の「必須」区分に表示されるmu-pluginsも、フォルダ内のファイルを確かめる。今回の攻撃では更新日時が偽装されるため、日付ではなく中身と導入の経緯で判断します。
なお、同社が示す確認用のSQLは、テーブル名の接頭辞を標準の「wp_」としています。インストール時に接頭辞を変えているサイトでは、テーブル名と、権限を記録する項目名の両方で読み替えが必要です。
謝辞欄の顔ぶれ
7件の報告者の並びにも、いまのWordPressの姿が出ています。
Anthropicが3件。7.1.1の2件から1件増えました。コメント管理画面のXSSは、セキュリティ企業Trail of Bitsのトマ・ショーシュフォワン(Thomas Chauchefoin)氏。コメントの未認証開示は、Patchstackのアナンダ・ダカル(Ananda Dhakal)氏。Imgur埋め込みのXSSは、ジェンユー・リウ(Zhengyu Liu)氏ら3人の研究者です。
そして1件は、WordPressセキュリティチーム自身のアレックス・コンチャ(Alex Concha)氏による報告でした。
セキュリティチームは8月28日、Core Security Initiativeを始動しています。柱の一つは、AIを使った探索で、悪用される前に脆弱性を見つけることでした。今回の1件がその取り組みから生まれたものかは、公表されていません。それでも、外からの報告を待つだけでなく、内側からも探す体制がすでに動いていることは、謝辞欄から読み取れます。
Anthropic側の規模も更新されています。同社のダッシュボードによれば、10月2日時点で591のオープンソースプロジェクトに6,157件を開示し、そのうち516件が修正済みです。ただし6,157件のうち4,824件は、外部の検証企業を通さず開発元へ直接送ったもので、誤検知を含む可能性があると同社自身が注記しています。人手による検証が処理の速度を決めている、という説明も変わっていません。
日本の読者にとって
確かめたいことは、順に4つです。
1つ目は、バージョンです。7.1系なら7.1.3になっているか。必要な修正は古い系列にもバックポートされ、公式のリリース一覧では、6.0系までの修正版が10月6日付で公開されています。積極的にサポートされるのは最新版だけだと、公式はあらためて書いています。
2つ目は、保存済みの埋め込みです。Patchstackは、7.1.3に更新しても、データベースに保存された既存のoEmbedキャッシュは削除されないと注意しています。悪意あるImgurの埋め込みが残っていれば、表示され続けます。保守担当者に、保存済みの埋め込みと、そのキャッシュの確認・削除を依頼してください。
3つ目は、コメントの受け口です。コメント欄を使っていないなら、閉じておく。ディスカッション設定で新しい投稿のコメントを止めても、既存の投稿は個別に受付が残る場合があるので、あわせて確かめます。使っているなら、承認待ちの列を誰が開いているかを意識する。標準の単一サイトでは、編集者はコメントを承認できますが、プラグインのインストールやユーザーの新規作成はできません。承認を管理者以外のアカウントで行う運用にすれば、万一その画面で何かが動いても、できることは限られます。
4つ目は、管理者の棚卸しです。ユーザー一覧に加えて、データベースとmu-pluginsのフォルダを見る。制作や保守を外部に委託しているサイトなら、この確認を委託先に頼めるかどうかも、契約の中身次第です。
なおPatchstackは、格納型XSSが管理者のブラウザで一度でも動いたサイトは、侵害された可能性があるものとして扱うべきだとしています。入口のプラグインを削除するだけでは、作られたアカウントやmu-pluginsといった残存物は取り除けないからです。
見えているものを、見えているとおりに信じない
この3か月足らずで、セキュリティリリースは6回届きました。セキュリティチームは、増えた報告に対応するため、リリース工程の改善と、積み残した報告の解消を進めています。7件の修正が古い系列まで届けられていく作業は、その地道な積み重ねです。
その先で各サイトに残るのは、更新ボタンを押すことと、管理画面に誰がいるのかを確かめることです。そして今回の一件は、後者のやり方が変わったことを教えています。
お使いのWordPressは、7.1.3になっているでしょうか。そして、その管理画面にいる管理者は、一覧に見えている人だけでしょうか。
【関連記事】
【解説】WordPress 7.1.1|脆弱性を見つける側が入れ替わった
9月の7.1.1の解説記事。AI企業が報告者に並んだ背景と、サイトに残っているアカウントを確かめる重要性を丁寧に扱っている。
WordPress 7.1.2、Critical脆弱性を修正|「条件付き」の中身を読む
9月の7.1.2の記事。条件付きのCritical脆弱性の中身と、修正の公開から5時間で始まった偵察の動きを扱っている。
WordPress、守る場所は管理画面からAPIへ|wp2shellが示したもの
攻撃面が管理画面からAPIへ移ったことを論じた記事。守るべき場所の変化を、サイトを設計し運用する側の視点から読み解いている。
【編集部後記】
隠された管理者アカウントよりも、気になった仕掛けがあります。専用のログインURLは、隠したアカウントではなく、サイトで最も古い管理者として攻撃者をログインさせる作りでした。多くのサイトでは、それはサイトを立ち上げた本人です。
Patchstackは、ユーザーIDしか記録しないログでは、本人のログインと見分けられないと書いています。ログに残る最後のログインがご自身の名前だったとき、それが本当にご自身だったと、何で確かめますか。
【用語解説】
格納型XSS
サイトに保存された値が、あとから閲覧した人の画面でスクリプトとして動いてしまう脆弱性。
仮想パッチ
ソフトウェア本体を直す前に、通信の経路で攻撃の形をした要求を遮って悪用を防ぐ対策。
承認待ちコメント
公開前に、編集者や管理者による承認を待っている状態のコメント。
DoS
大量の処理や終わらない処理を起こさせて、サービスを止める攻撃。
二次SQLインジェクション
いったん保存された不正な値が、あとでデータベースへの命令に組み込まれる段階で成立するSQLインジェクション。
WXR
WordPressのエクスポート機能が書き出すファイル形式。サイトの投稿やページを移行するときに使われる。
アイキャッチ画像
投稿を代表する画像として設定する画像。一覧やSNSでの表示に使われる。
oEmbed
URLを貼るだけで、外部サービスの画像や動画を埋め込み表示する仕組み。取得した内容はデータベースに保存される。
CVE
脆弱性に振られる世界共通の識別番号。
CVSS
脆弱性の深刻度を0.0から10.0で表す指標。
寄稿者・投稿者・編集者
WordPressの標準の権限グループ。寄稿者は投稿を書けるが公開できず、投稿者は自分の投稿を公開でき、編集者は他人の投稿やコメントも管理できる。
セッション
ログインしている状態を、サイトとブラウザの間で保つ仕組み。
Cookie
サイトがブラウザに保存させる小さなデータ。ログイン状態の保持などに使われる。
フック(アクション)
特定の処理が起きたときに、プラグインなどが独自の処理を差し込めるWordPressの仕組み。
mu-plugins
指定のフォルダに置くだけで常に読み込まれ、管理画面から停止できないプラグイン。通常の一覧とは別の「必須」区分に表示される。
バックポート
新しいバージョンで施した修正を、古い系列にも適用すること。
自動バックグラウンド更新
管理者が操作しなくても、WordPressが更新を自動で適用する仕組み。
ディスカッション設定
コメントの受け付けや承認の条件を決める、WordPressの設定画面。
接頭辞(テーブル接頭辞)
WordPressのデータベースのテーブル名の頭に付く文字列。標準は「wp_」で、インストール時に変更できる。
Core Security Initiative
WordPressセキュリティチームが2026年8月28日に公表した、コアの安全性を高める取り組み。
WP_Http::make_absolute_url()
相対的なURLを完全なURLに組み立てる、WordPressコアの処理。
【参考リンク】
WordPress.org|Releases(外部)
WordPressの公式サイト。最新版と、系列ごとの修正版を入手できる。リリース一覧では、各系列の修正版の公開日も確認できる。
Version 7.1.3|WordPress Documentation(外部)
WordPress 7.1.3のバージョン情報ページ。セキュリティ修正7件の一覧と、今回変更された9本のファイル名を確認できる。
WordPress 7.1.3 Security Release now available|Pantheon(外部)
PantheonによるWordPress 7.1.3の告知。コメント管理画面の格納型XSSへの仮想パッチ適用を記している。
Patchstack(外部)
WordPressを中心とするセキュリティ企業の公式サイト。脆弱性データベースと、実際の攻撃を観測した報告を公開している。
Trail of Bits(外部)
コメント管理画面の格納型XSSを報告したセキュリティ企業の公式サイト。ソフトウェアのセキュリティ評価や監査を幅広く手がける。
Must Use Plugins|WordPress Developer Resources(外部)
mu-pluginsの仕組みを説明するWordPress公式ドキュメント。通常の一覧とは別の「必須」区分に表示される点を記している。
Anthropic’s coordinated vulnerability disclosure dashboard(外部)
Anthropicが開示した脆弱性の件数と検証の流れを示すページ。直接報告の件数と、その注記も基準日つきで掲載している。
【参考記事】
WordPress 7.1.3 Security Release(外部)
Patchstackによる7.1.3の解析。7件それぞれの成立条件と影響範囲、Imgur埋め込みのキャッシュが更新後も残る点を整理している。
Four ways back in: the WordPress XSS campaign that hides its own admin account(外部)
プラグイン2本の格納型XSSを入口にした攻撃の解析。4つの再侵入経路と、データベースで管理者を照合する手順を示している。
WordPress Core <= 7.1.2 – Unauthenticated Sensitive Data Exposure of Comments on Private and Unpublished Posts(外部)
コメントの未認証開示に付いたCVE-2026-66666の情報。CVSS 6.9、影響は7.1.2以前で、7.1.3で修正済みと記している。
The Core Security Initiative(外部)
WordPressセキュリティチームが8月28日に公表した取り組み。リリース工程の改善、積み残しの解消、AIによる探索の3本柱を示す。












|WordPressプラグイン利用者は今すぐアップデートを-768x419.jpg)





