セキュリティ企業Seqriteは2026年10月16日、WordPress本体の脆弱性を連鎖させる攻撃手法「wp2shell」について、検証時に確認したファイル生成やプラグイン設置の挙動などを公開しました。認証不要のリモートコード実行につながるCVE-2026-63030とCVE-2026-60137は同年7月に修正済みですが、過去に脆弱なバージョンを公開していたサイトでは、更新後も侵害の有無を確認する必要があります。
今回の分析は新たな脆弱性の発見を示すものではなく、攻撃の検証環境で観察された痕跡を中心に整理したものです。これらの痕跡がすべての実攻撃で残ると確認されたわけではありません。
WordPress「wp2shell」技術分析のサマリー
- 2026年10月16日、SeqriteのAmruta Wagh氏とYash Jare氏が「WP2Shell Exploit Chain」の技術分析を公開しました。
- 対象はWordPress本体の既知の脆弱性「CVE-2026-63030」と「CVE-2026-60137」です。プラグイン固有の脆弱性ではありません。
- 2件を連鎖させると、攻撃者がWordPressへのログインなしでリモートコード実行に至る可能性があります。
- 検証では、予期しない管理者アカウントや、不正なプラグインを通じたPHPコード実行につながる挙動が説明されています。
wp-content/plugins/配下のwp2shell_で始まるディレクトリや、wp-content/配下の一時ファイルなどが調査上の手掛かりとして挙げられました。- 完全な攻撃連鎖の影響範囲はWordPress 6.9.0~6.9.4、7.0.0~7.0.1です。6.8.0~6.8.5はSQLインジェクションの脆弱性に影響します。
- 2026年7月17日に6.9.5、7.0.2などの修正版が公開されており、IPAは7月22日に更新を呼びかけています。
- IPAによると、関連する脆弱性は7月21日にCISAのKEVカタログへ追加されています。新規分析の公表日と、修正・実悪用確認の時期は異なります。
| 項目 | 内容 |
|---|---|
| 新たな分析の公表日 | 2026年10月16日 |
| 分析元 | Seqrite(Quick Heal Technologies) |
| 対象 | WordPress Coreの「wp2shell」攻撃連鎖 |
| 関連CVE | CVE-2026-63030、CVE-2026-60137 |
| 主な侵害痕跡 | 不審な管理者アカウント、プラグインディレクトリ、PHPファイルの新規作成・変更、REST APIバッチエンドポイントへの不審なリクエスト |
| 修正版 | 6.8.6(SQLインジェクション)、6.9.5、7.0.2。これらより新しい適切な修正版も対象 |
| 今回の新規性 | 脆弱性そのものではなく、Seqriteによる攻撃手順・ファイル操作の観測と検知観点の提示 |
Seqriteが示した侵害の痕跡―不審なプラグインとPHPファイル
Seqriteの分析では、WordPress REST APIのバッチ処理とSQLインジェクションの欠陥を連鎖させた後、管理者権限を足掛かりに不正なプラグインを配置する流れが説明されています。検証環境では、プラグインの導入に先立って書き込み可能なディレクトリを調べるための一時ファイルが生成され、その後にプラグインのアーカイブが配置・展開される様子が観察されました。
同社が示す調査対象は次のとおりです。
| 確認箇所 | Seqriteが示した観測例・調査対象 | 確認の観点 |
|---|---|---|
wp-content/ |
temp-write-test-*形式の一時ファイル |
通常運用では説明できない一時ファイルの生成・削除履歴 |
wp-content/uploads/ |
wp2shell_で始まるZIPアーカイブ |
アップロード領域の不審なアーカイブやPHPファイル |
wp-content/upgrade/ |
wp2shell_で始まる展開用ディレクトリ |
不明なプラグインの展開・設置履歴 |
wp-content/plugins/ |
wp2shell_で始まるプラグインディレクトリ |
承認されていないプラグイン、PHPファイルの追加・変更 |
| WordPress管理画面 | 想定外の管理者アカウント | アカウントの作成日時、作成者、権限変更履歴 |
| Webアクセスログ | REST APIのバッチエンドポイントへの不審なリクエスト | ファイル変更や権限変更と時間的に一致するアクセス |
これらはSeqriteが分析した検証環境でのファイル名や操作を含む例示であり、攻撃者が必ず同じ名称を使用するとは限りません。また、正規のプラグイン更新時にもWebサーバープロセスがPHPファイルの書き込みやディレクトリ移動を実行するため、ファイルの存在や更新だけで侵害を断定できません。ログの時刻と管理操作の履歴を突き合わせて判断します。
7月に修正済みの2件の脆弱性―影響するWordPressバージョン
wp2shellは、WordPress REST APIのバッチ処理で意図しないルートに到達できる不備(CVE-2026-63030)と、投稿クエリ処理でのSQLインジェクション(CVE-2026-60137)を組み合わせた攻撃です。
WordPress開発元のセキュリティアドバイザリとIPAの注意喚起では、WordPress 6.9.0~6.9.4と7.0.0~7.0.1が未認証RCEにつながる攻撃連鎖の影響を受けるとしています。WordPress 6.8.0~6.8.5もSQLインジェクションの影響範囲ですが、同じ組み合わせによるRCEの影響範囲には含まれません。
WordPressは7月17日に修正版を公開しました。各系列の最低修正バージョンは6.8.6、6.9.5、7.0.2です。運用中のサイトでは過去に脆弱な版を使っていたかを確認し、現在の運用系列でセキュリティ更新が適用されているかを点検します。
脆弱性の発見経緯や公開PoC、当時の悪用状況については、セキュリティ対策Labの既報「WordPress本体で危険度の高い脆弱性『wp2shell』、サイバー攻撃への悪用が発生」で解説しています。
実際の攻撃事例も公表―京都教育大学で6サイトが改ざん
wp2shellの悪用は研究上の可能性にとどまりません。京都教育大学は10月13日、学内のWebサーバーへの不正侵入に伴い、学科や附属学校・幼稚園の計6サイトでページやファイルの一部が改ざんされたと公表しました。大学の調査では、WordPressのwp2shellが侵入に悪用されたとされています。
大学は侵害を受けたサイトの公開を停止し、リストアと脆弱性対策を実施したうえで、9月4日までに公開を再開しました。ただし、大学が公表した事例で、今回Seqriteが例示したwp2shell_形式のファイルやディレクトリが実際に使われたと確認されたわけではありません。
詳細は「京都教育大学の6サイトに不正アクセス、WordPress脆弱性『wp2shell』悪用でページ改ざん」にまとめています。
WordPress管理者が確認したい点―更新後も侵害調査を
今回の分析を踏まえると、更新状況の確認と、脆弱なバージョンを運用していた期間に不正な操作が発生していないかの調査を分ける必要があります。
- WordPress管理画面または管理台帳で本体バージョンを確認し、該当系列の修正が適用されているか調べます。自動更新を設定していても、実際の適用状況を確認します。
- 脆弱なバージョンを公開していた期間を特定し、その期間のWebアクセスログと管理者ログイン・アカウント作成履歴を照合します。
wp-content/plugins/、wp-content/upgrade/、wp-content/uploads/などについて、不審なディレクトリやPHPファイル、承認されていないプラグインがないか確認します。特定のファイル名だけを検索して調査を終えないようにします。- 予期しない管理者アカウント、プラグインの新規インストール、PHPファイルの変更が見つかった場合は、変更の正当性と時刻を運用履歴で照合します。侵害の疑いがある場合は証跡を保全して調査します。
- REST APIに対するアクセス制御やWAFの検知状況を点検します。REST APIを一律に遮断すると、WordPressの編集機能や連携システムに影響する可能性があるため、変更前に機能への影響を確認します。
CVE-2026-63030とCVE-2026-60137はすでに修正済みですが、パッチ適用によって既設の不正アカウントやファイルが自動的に除去されるとは限りません。疑わしい挙動があった場合は、ソースコードやファイルの正規版との比較、関係アカウントの調査、必要な復元作業を検討します。
出典
- WP2Shell Exploit Chain: Anatomy of a Sophisticated WordPress Attack(2026年10月16日)― Seqrite
- REST API batch-route confusion and SQL injection issue leading to Remote Code Execution ― WordPress公式GitHub Security Advisory
- Facilitated SQL injection vulnerability in the author__not_in parameter of WP_Query ― WordPress公式GitHub Security Advisory
- WordPressの脆弱性対策について(CVE-2026-60137、CVE-2026-63030:wp2shell)― IPA








