wp2shellとは何か。WordPressコアの緊急脆弱性で確認すべきこと

WordPressの脆弱性対応とセキュリティ確認のイメージ

WordPressの脆弱性に関する情報として、wp2shell という呼び方を見かけた方もいるかもしれません。

2026年7月17日に、WordPress 7.0.2 がセキュリティリリースとして公開されました。あわせて、WordPress 6.9 系と 6.8 系にも修正版が用意されています。

今回の件で大事なのは、攻撃手法の細部を追うことではなく、自分のサイトが影響を受けるバージョンかどうかを確認し、必要な更新と点検を早めに済ませることです。

まず結論。該当バージョンならすぐ更新を

今回確認すべき更新先は、利用しているWordPressの系統によって変わります。

利用中の系統影響を受けるバージョン更新先
WordPress 7.0系7.0.0 – 7.0.17.0.2
WordPress 6.9系6.9.0 – 6.9.46.9.5
WordPress 6.8系6.8.0 – 6.8.56.8.6

WordPress公式リリースでは、WordPress 6.9 は2つの脆弱性の影響を受け、WordPress 6.8 はそのうち1つの影響を受けると説明されています。6.8より前のバージョンは、今回の2件については影響を受けないとされています。

ただし、古いWordPressを使い続けること自体が安全という意味ではありません。今回の件に該当しない場合でも、保守されていないコア、プラグイン、テーマが残っていれば別のリスクになります。

wp2shellとは何を指しているのか

wp2shell は、少なくともWordPress公式リリース本文で使われている正式名称ではありません。

今回のWordPress 7.0.2セキュリティリリースで修正された問題は、公式には次のように説明されています。

  • WP_Queryauthor__not_in パラメータに関するSQLインジェクション
  • REST API batch-route confusion とSQLインジェクションが組み合わさることで、WordPress 6.9以降ではリモートコード実行につながる問題

GitHub Security Advisoryでは、後者はCriticalとして扱われています。つまり、WordPress 6.9.0以降または7.0.0以降を使っているサイトでは、単なる注意喚起ではなく、優先度の高い更新対象として見るべき内容です。

ここでは攻撃コードや再現手順には触れません。サイト運用者に必要なのは、「どう攻撃するか」ではなく、「自分のサイトが対象か」「更新できているか」「更新後に何を確認するか」です。

自分のWordPressバージョンを確認する

管理画面から確認する場合は、WordPress管理画面の「ダッシュボード」または「更新」画面で現在のバージョンを確認します。

SSHとWP-CLIが使える場合は、次のコマンドで確認できます。

wp core version
wp core check-update

該当バージョンだった場合は、バックアップを取った上で、コア更新を進めます。

wp core update
wp core version

複数サイトを管理している場合は、1サイトずつ結果を記録しながら進めることをおすすめします。自動更新が有効でも、「自動更新されているはず」で止めず、実際のバージョンを確認するところまでを1セットにします。

更新前にバックアップを取る

緊急度の高いセキュリティ更新でも、バックアップなしで本番サイトを触るのは避けたいところです。

最低限、次の2つは残してから更新します。

  • データベースのバックアップ
  • wp-content 配下のバックアップ、またはサーバー側の復元ポイント

WP-CLIでデータベースを書き出すなら、公開ディレクトリから直接アクセスできない場所に保存します。

mkdir -p ~/wp-backups
wp db export ~/wp-backups/site-before-core-update.sql

バックアップファイルをWordPressルート直下やuploads配下に置きっぱなしにすると、別の事故につながることがあります。ダウンロード後に削除する、公開されないディレクトリへ置く、アクセス制限をかけるなど、保管場所にも注意が必要です。

更新後に確認したいこと

コアを更新したら、バージョン確認だけで終わらせず、サイトの状態も見ます。

まずは基本的な表示確認です。

  • トップページが表示されるか
  • 主要な固定ページが表示されるか
  • 問い合わせフォームが動くか
  • 管理画面にログインできるか
  • キャッシュプラグインやサーバーキャッシュを使っている場合、古い表示が残っていないか

次に、改ざんや不審な変更がないかを確認します。

wp core verify-checksums
wp user list --role=administrator --fields=ID,user_login,user_email,user_registered
wp plugin list --status=active

wp core verify-checksums は、WordPressコアファイルが公式配布物と一致するかを確認するためのコマンドです。日本語ファイルや一部環境では注意が必要な場面もありますが、コア改ざんの初期確認として役立ちます。

管理者ユーザーの一覧では、見覚えのないユーザーが増えていないかを確認します。プラグイン一覧では、知らないプラグインが有効化されていないか、最近追加されたものがないかを見ます。

セキュリティプラグインだけでは代わりにならない

WAFやセキュリティプラグインは、攻撃の一部を防いだり、ログを残したりする上で役立ちます。

ただし、今回のようにWordPressコア側で修正版が出ている場合、最優先はコア更新です。セキュリティプラグインが入っているから更新しなくてよい、という判断にはなりません。

同じように、レンタルサーバー側のWAFも重要ですが、脆弱なバージョンを残したままにする理由にはなりません。防御層は複数あるほどよい一方で、修正済みバージョンへ上げることが土台です。

制作会社や保守担当者が見るべきポイント

制作会社や複数サイトの保守担当者は、1サイトだけでなく、管理対象全体の棚卸しが必要になります。

今回のようなコア脆弱性では、次のような台帳があると対応が速くなります。

確認項目見る内容
サイトURL管理対象の漏れがないか
現在のWordPressバージョン影響対象かどうか
更新後のバージョン修正版に上がったか
バックアップ取得更新前に取得済みか
表示確認主要ページが正常か
管理者ユーザー確認不審な管理者がないか
備考キャッシュ、プラグイン競合、個別事情

ポイントは、「更新しました」だけで終わらせないことです。いつ、どのサイトを、どのバージョンからどのバージョンへ更新し、更新後に何を確認したか。そこまで残しておくと、あとから問い合わせや調査が必要になったときに慌てずに済みます。

古いままにしているサイトほど、見直しのきっかけに

WordPress 6.8より前は今回の2件については影響を受けないとされています。しかし、古いWordPressを意図的に止めているサイトは、今回とは別の理由でリスクを抱えていることがあります。

たとえば、次のような状態です。

  • PHPバージョンが古く、WordPressを上げられない
  • テーマが古く、更新すると表示が崩れる
  • 放置されたプラグインが残っている
  • 誰が更新判断をするのか決まっていない
  • バックアップや復元手順が確認されていない

セキュリティリリースは、「その場の更新」だけでなく、「そもそも更新できる状態になっているか」を見直すタイミングでもあります。

更新できない理由がある場合は、理由をそのままにせず、検証環境、代替プラグイン、テーマ改修、PHP更新、バックアップ設計まで含めて段階的に整理する必要があります。

まとめ

wp2shellとして話題になっている今回のWordPress脆弱性は、WordPress 7.0.2、6.9.5、6.8.6で修正されています。

特にWordPress 6.9以降では、REST APIの問題とSQLインジェクションが組み合わさり、リモートコード実行につながる問題として扱われています。該当バージョンを使っている場合は、早めに更新し、更新後の点検まで行うべき内容です。

WordPress保守で大切なのは、脆弱性情報を見た瞬間に慌てることではなく、確認手順を持っていることです。

現在のバージョンを確認する。バックアップを取る。更新する。表示と管理者ユーザーを確認する。必要ならログやファイル変更も見る。

地味ですが、この一連の流れを毎回きちんと行えるかどうかが、WordPressサイトを安全に運用できるかの分かれ目になります。