WordPressのプラグインの脆弱性とは

プラグインは、WordPressに機能を足す部品です。問い合わせフォーム、予約、ログインの守り、検索エンジン向けの設定など、WordPress本体に無い機能を、プラグインを入れて足します。脆弱性は、プログラムにある、攻撃に使われるおそれのある弱点のことです。プラグインもプログラムなので、脆弱性が見つかることがあります。

見つかったあとは、次の順で対策が進みます。プラグインの開発元が弱点を直し、修正版を出します。サイトの側では、WordPressの管理画面の「更新」で、その修正版に更新します。ここまで進んで、そのサイトでの対策が済みます。

この流れが止まるところは、2つあります。1つ目は、修正版が出ないことです。開発元が開発をやめたプラグインや、WordPressの公式サイトでの公開が停止されたプラグインには、弱点が見つかっても修正版が出ないおそれがあります。2つ目は、修正版が出ているのに、サイトで更新していないことです。管理画面に更新の知らせが出ていても、更新を受け持つ人が決まっていなければ、弱点は残ったままになります。

プラグインの脆弱性は、修正版に更新して対策する 1 弱点が見つかる プラグインの プログラムに 2 開発元が直す 修正版を 出す 3 サイトで更新する 管理画面の 「更新」で修正版にする 止まる所1:修正版が出ない 開発が止まったプラグイン・ 公開が停止されたプラグイン 止まる所2:修正版に更新していない 更新を受け持つ人が 決まっていない 備え=修正版が出続けるプラグインだけを入れ、出たら更新する
図1:プラグインの脆弱性が対策されるまでの流れと、流れが止まる2つの所。

2026年10月に問題になったPHPの脆弱性は、サーバーの側にあるPHPの弱点で、プラグインとは直す場所が違います。PHPの更新はだれの仕事か、何を確かめればいいかは、PHPの脆弱性の記事で解説しています。

関連記事PHPの脆弱性で何をすればいい?会社のホームページで確かめる順番と、PHPの更新はだれの仕事か【無料診断付き】

プラグインの脆弱性への備えは、修正版が出続けるプラグインだけを入れておくことと、出た修正版に更新することの2つです。

なぜプラグインが狙われるのか

WordPressの公式サイトのサイトヘルスの説明では、プラグインは問い合わせフォームやネットショップのようにサイトの機能を広げるもので、サイトの深いところまで触れられるため、最新に保つことが欠かせない、とされています。実際にプラグインは、フォームに入力された中身を受け取ったり、記事や設定がしまわれているデータベースに書き込んだり、管理画面の設定を変えたりします。こうしたプラグインに弱点があると、その機能や権限が攻撃に使われるおそれがあります。

もう1つの理由は、同じプラグインを、たくさんのサイトが使っていることです。WordPressの公式サイトで配られているプラグインには、配布のページに「有効インストール数」として、使っているサイトの数の目安が出ています。多くのサイトで使われているプラグインに弱点が見つかると、攻撃する側は、同じ手口で多くのサイトを狙えます。

これは、WordPressやプラグインが危ないという話ではありません。弱点はどのプログラムにも見つかることがあり、修正版に更新すれば対策できます。WordPressの公式のサイトを守るための手引きでも、攻撃の例に、古いままのプラグインやソフトウェアを狙うものを挙げています。狙われやすいのは、修正版が出ていても、古いバージョンのまま更新されていないプラグインです。

入れているプラグインを、4つの点で見直す

まず、入れているプラグインの一覧を出します。WordPressの管理画面の「ツール」→「サイトヘルス」→「情報」を開くと、「使用中のプラグイン」と「停止中のプラグイン」の項目に、入れているプラグインが、バージョン、開発元、自動更新が有効かとあわせて並んでいます。同じ画面の「WordPress」の項目にはWordPress本体のバージョンが、「サーバー」の項目にはPHPのバージョンが出ているので、あわせて控えておきます。2つ目の点で使います。

一覧が出たら、1つずつ、次の4つを見ます。

1つ目は、最終更新日です。WordPressの公式サイトで配られているプラグインは、配布のページに「最終更新日」が出ています(管理画面の「プラグイン」の画面の「詳細を表示」でも、同じ情報を見られます)。何年も更新されていないプラグインは、開発元が開発をやめていることがあり、弱点が見つかっても修正版が出ないおそれがあります。最終更新日は、先に当たりをつけるために見ます。替えるかどうかは、日付だけでは決めず、2つ目の点で決めます。

2つ目は、いまのWordPressとPHPに対応しているかです。配布のページの「検証済み最新バージョン」は、開発元がWordPressのどのバージョンまで動きを確かめたかを示しています。これが、控えておいたWordPress本体のバージョンより古ければ、いまのバージョンでは確かめられていないということです。比べるときは、6.8.3の「.3」のような最後の数字は見ず、6.8と6.9のように、はじめの2つの数字で比べます。ただ、更新が続いているプラグインでも、本体の新しいバージョンが出た直後は、1つ前のままのことがあります。1つ目で何年も更新されていないと当たりをつけたもので、「検証済み最新バージョン」も古いままなら、いまのWordPressに対応していないと見ます。

「PHP バージョン」は、そのプラグインの最新版を動かすのに要るPHPのいちばん古いバージョンです。控えておいたPHPのバージョンがこれより古いと、修正版が出ても更新できません(管理画面の「プラグイン」の画面に、「お使いの PHP バージョンでは動作しません」と出ます)。このとき上げるのは、プラグインではなく、サイトのPHPです。反対に、そのプラグインが新しいPHPで動くかは、この項目では分かりません。PHPを上げる手順と、上げる先のPHPでプラグインが動くかの確かめ方は、WordPressのPHPのバージョンアップの記事の第3章と第4章にまとめています。

3つ目は、実際に使っているかです。停止中のプラグインは、いま使っていないものです。有効になっていても、入れた理由がもう無いもの(終わったキャンペーンのために入れた、試しに入れたままになっている、など)もあります。WordPressの公式の手引きでも、使っていないプラグインはサイトから消すように勧めています。停止しただけでは、プラグインのファイルはサーバーに残るので、使わないものは止めるだけでなく消します。名前を見ても何に使っているか分からないプラグインは、自分で止めたり消したりせず、サイトを作った会社(いまは管理を別の会社に頼んでいるなら、その会社。以下、作った会社)に、何に使っているかを聞きます。

4つ目は、代わりがあるかです。同じ機能を、WordPress本体の機能や、更新が続いているほかのプラグイン、外部のサービスで用意できることがあります。どれが代わりになるかはサイトの作りによって変わるので、作った会社に聞くのが確かです。

見る点どこで見るか当てはまらないとき
最終更新日(更新が続いているか)配布のページの「最終更新日」何年も更新されていない:2つ目の点で、替えるかを決める
いまのWordPressとPHPに対応しているか配布のページの「検証済み最新バージョン」「PHP バージョン」と、サイトヘルスのバージョン「検証済み最新バージョン」が古いまま:代わりがあれば替える。サイトのPHPが「PHP バージョン」より古い:PHPを上げる(作った会社に相談)
実際に使っているかサイトヘルスの「停止中のプラグイン」・入れた理由使っていない:消す。何に使っているか分からない:作った会社に聞く
代わりがあるかWordPress本体の機能・ほかのプラグイン・外部のサービス(作った会社に聞く)代わりが無い:残したまま、作った会社に相談する

※表の見る点は、筆者が整理したもの。項目の名前は、WordPressの日本語の管理画面と公式サイトの表示による(2026年10月24日に確認)。

4つを見たら、プラグインごとに、消す・替える・残すを決めます。使っていないものは消します。使っているが、いまのWordPressに対応していないもの(何年も更新されておらず、「検証済み最新バージョン」も古いままのもの)は、代わりがあれば替えます。代わりが無いものは、いったん残したまま、作った会社に、使い続けてよいか、代わりをどう用意するか、それまでのあいだ機能を止めておくべきかを相談します。サイトのPHPが古くて更新できないものは、プラグインではなく、PHPを上げることを作った会社に相談します。使っていて、いまのバージョンに対応しているものは残し、更新を受け持つ人を決めます(第5章)。

消す・替える・残すを決める流れ 実際に使っているか 停止中・入れた理由がもう無い 消す 停止しただけでは残る 使っていない いまのWordPressとPHPに 対応しているか 検証済み最新バージョン・PHP バージョン 使っている 残す 更新の受け持ちを決める (第5章) はい 代わりがあるか 本体の機能・ほかのプラグイン・外部のサービス いいえ 替える 入れ替えは作った会社に ある 残して、作った会社に相談する 使い続けてよいか・代わりの用意・それまで止めるか ない
図2:消す・替える・残すを決める流れ。最終更新日で当たりをつけたものも、対応しているかで決める。サイトのPHPが「PHP バージョン」より古いときは、プラグインではなくPHPを上げる。見る点と分け方は筆者が整理したもの。何に使っているか分からないものは、作った会社に聞いてから当てる。

配布のページで見られないプラグインもあります。有料で買ったプラグインや、作った会社がそのサイトのために作ったプラグインです。これらは、売っている会社や作った会社に、最後に修正版を出したのはいつか、いまのWordPressとPHPに対応しているか、これからも修正版を出すかを聞きます。

WordPressの公式サイトでの公開が停止されたプラグインは、配布のページに「このプラグインの公開は〇年〇月〇日に停止されており、ダウンロードできません」のように出ます。停止されると、公式サイトからも、管理画面からも、新しく入れられなくなります。停止の理由には、開発元の申し出のほか、決まりへの違反や安全上の問題があり、停止から60日たつと、理由が大まかに出ます(公式の開発者向けの説明による)。停止されているあいだは、公式の配布から修正版が届かないので、代わりがあれば替えます。代わりが無ければ、いったん残したまま、代わりを用意するまで機能を止めておくかを含めて、作った会社に相談します。

一覧を出し、配布のページを見るところまでは、管理画面にログインできれば自分でできます。停止中のプラグインのうち、何のために入れたか分かっていて、この先も使わないものは、自分で消してかまいません。使用中のプラグインを止めたり替えたりする作業は、フォームの送り先や表示が変わることがあるので、作った会社に頼んだほうが安全です。

このサイトは、2026年10月にWordPressを使わない作りに移すまで、有効なプラグインは、管理画面のログインに二段階認証を足すもの1つだけでした。問い合わせフォームや診断の申し込みは、WordPressの外のプログラムで受け付けていたので、そのためのプラグインは入れていませんでした。決まった数まで減らすことが目的ではありません。入れているプラグインの1つずつに、4つの点で説明がつけば十分です。ただ、数が少ないほど、見直しと更新の手間は小さくなります。

入れているプラグインは、最終更新日、いまのWordPressとPHPに対応しているか、実際に使っているか、代わりがあるかの4つで見て、消す・替える・残すを決めます。

無料の診断は、入れているプラグインの弱点までは見ませんが、管理画面のログイン画面のように外から見えている部分を確かめられます(第8章)。

プラグインを新しく入れる前に確かめること

新しくプラグインを入れるときも、第3章の4つの点で見ます。入れる前なら、最終更新日と、いまのWordPressとPHPに対応しているかを、配布のページで見てから選べます。何のために入れるのかと、同じ機能をWordPress本体やいま入れているプラグインで足せないかも、先に見ておきます。

新しく入れるときは、これらに加えて、配布元も確かめます。WordPressの公式の手引きは、信頼できないところからプラグインを入れず、WordPressの公式サイトの配布か、よく知られた会社のものに限るよう勧めています。配布元の分からないファイルを、管理画面からアップロードして入れることは避けます。公式サイトの配布ではない有料のプラグインなどは、売っている会社がどこかを確かめ、入れてよいかを作った会社に相談してから入れます。

入れたら、だれが、何のために入れたかを、社内で記録しておきます。次に見直すときに、使っているかどうかをすぐに決められます。

新しく入れるプラグインは、同じ4つの点で見たうえで、WordPressの公式サイトの配布か、よく知られた会社のものから選びます。

残したプラグインの更新を、だれが、いつするか

残すと決めたプラグインは、修正版が出たときに、だれが、いつ更新するかを決めます。やり方は、自動で更新する形と、人が確かめて更新する形の2つです。

WordPressには、プラグインごとに自動更新を有効にする機能があります(WordPress 5.5から)。管理画面の「プラグイン」の画面の「自動更新」の列で、「自動更新を有効化」を押すと、そのプラグインは自動で更新されるようになります。WordPressの公式の自動更新の説明によると、自動更新は既定では1日に2回動き、新しいバージョンがあれば更新され、成功したか失敗したかがメールで届きます。次に更新されるまでの時間は、プラグインの画面の「自動更新」の列に「〜に自動更新が予定されています」と出ます。同じ説明では、自動更新を有効にする前に、うまくいかなかったときに元に戻せるようにしておくことも勧めています。いま元に戻せる状態か分からないときは、サーバー会社や作った会社に、バックアップがあるかと、戻し方を聞いておきます。

更新のしかた向くプラグイン気をつけること
自動で更新する更新が続いていて、動きが変わっても困りにくい機能のもの届いたメールで、成功したかを見る。バックアップから戻せるようにしておく
人が確かめて更新する問い合わせフォーム・予約・決済など、動きが変わると困る機能のもの。作った会社が手を入れたもの更新したら、ページとフォームを確かめる。更新の知らせを見る間隔を決める。バックアップから戻せるようにしておく

※表の分け方は、筆者が整理したもの。

残したプラグインは、更新のしかたを2つに分ける 自動で更新する 向く:更新が続いていて、 動きが変わっても困りにくいもの 既定で1日に2回、自動で更新 届いたメールで、成功したかを見る 人が確かめて更新する 向く:フォーム・予約・決済など、 動きが変わると困るもの・手を入れたもの 更新したら、主なページの表示を見て、 フォームを実際に送って確かめる どちらも、先に元に戻せるようにしておく だれが、いつ更新するかを決めておく(自社で更新する人がいなければ、契約に入れる)
図3:残したプラグインの更新のしかた。自動更新の回数とメールは、WordPressの公式の説明による。分け方は筆者が整理したもの。

作った会社が手を入れたかどうか分からないプラグインは、自動にするかどうかを作った会社に聞きます。人が確かめて更新するプラグインは、更新の知らせが出ても、だれかが更新するまで古いまま残ります。管理画面の更新の知らせを見る間隔を決めておき、更新したあとは、主なページの表示が崩れていないかを見ます。問い合わせフォームは、実際に送って、完了の画面と知らせのメールまで確かめます。

自社で更新する人がいないときは、作った会社に、プラグインの更新が管理の契約に入っているかを聞きます。契約が無いか、入っていなければ、だれが、どのくらいの間隔で更新するかを決めて、契約か、管理の仕事の一覧に書いておきます。管理の仕事を、自社でやるものと頼むものに分ける考え方は、ホームページの管理の記事の第6章で解説しています。

残したプラグインは、自動で更新するものと人が確かめて更新するものに分け、だれが、いつ更新するかを決めておきます。

WordPressが乗っ取られたら、まず記録して連絡する

プラグインの弱点を突かれて、サイトが乗っ取られることもあります。WordPressの公式の乗っ取られたときの説明が、乗っ取られた兆しとして挙げているのは、たとえば次のようなものです。

  • 検索エンジンで、危険なサイトとして扱われている
  • サーバー会社に、サイトを止められた
  • 覚えのない利用者が作られている
  • サイトを開くと、見た目が書き換えられている
  • ほかのサイトへの攻撃に使われている、と連絡が来た

気づいたら、まず、何を見て気づいたか、いつ気づいたか、最近入れたプラグインや変えた設定を書き留めます。原因を探す手がかりになり、相談するときにもそのまま使えます。そのうえで、サーバー会社と作った会社に連絡します。ほかの利用者とサーバーを分け合うレンタルサーバーでは、乗っ取りがこのサイトだけで済んでいないこともあるので、サーバー会社がすでに手を打っているかも、あわせて確かめます。

次に、サイトの管理に使っているパソコンを、ウイルス対策ソフトで調べます。公式の説明によると、パソコンに入り込んだプログラムに、管理画面やFTPのログインの情報を盗まれていることがあるからです。調べたら、サイトに入るためのパスワードを、全部変えます。WordPressの管理画面だけでなく、サーバーの管理画面、サーバーにファイルを送るための接続(FTPなど)、データベースも含め、ログインできる人全員の分です。あわせて、ログインに二段階認証を入れます。データベースのパスワードは、変えるとWordPressの設定ファイルも書き換える必要があるので、作った会社に頼みます。ほかにも、自分では変えられないところは、サーバー会社や作った会社に頼みます。

パスワードを変えたら、元に戻す作業に移ります。バックアップがあれば、バックアップから戻せます。ただ、戻す前に、乗っ取られたいまの状態の写し(サイトのファイルとデータベースを、そのまま写したもの)も取っておきます。原因を探すときや、戻すのに失敗したときの手がかりになるからです。戻したら、WordPress本体・テーマ・プラグインをすべて最新にし、作った会社やサーバー会社と調べて原因と分かったプラグインは、消すか替えます。そのあと、パスワードをもう一度変えます。

バックアップが無いときや、バックアップの時点ですでに書き換えられていたときは、どのファイルが書き換えられたかを探して取り除く必要があります。公式の説明でも、この作業はいちばん骨の折れる作業とされ、進め方は技術の知識によって変わるとされています。自分で進めるのが難しければ、作った会社などに頼みます。

乗っ取られたら、戻す前に、記録・連絡・パスワード 1 記録する いつ・何を見て 気づいたか 最近入れたプラグイン 2 連絡する サーバー会社 サイトを作った会社 3 パスワードを変える 先にパソコンを調べる 管理画面・サーバー・ FTP・データベース ログインできる人全員 4 写しを取って戻す いまの状態の写し → バックアップから → 全部を最新に → パスワード再変更 戻すのは、パスワードを変えたあと 探して取り除く作業がいちばん骨が折れる。難しければ、作った会社などに頼む
図4:乗っ取られたときの順番。WordPressの公式の説明(FAQ My site was hacked)をもとに、筆者が4つにまとめたもの。

乗っ取られたら、記録して連絡し、入るためのパスワードを全部変えてから、いまの状態の写しを取って戻します。

プラグインの更新を受け持ちきれないとき、機能をどこへ動かすか

第3章の見直しで、使っていて、いまのバージョンに対応しているプラグインは、残してかまいません。それでも、問い合わせフォーム、予約、会員登録、ネットショップなど、サイトの大事な機能を多くのプラグインで動かしていて、更新を受け持つ人を置きにくいときは、プラグインで動かしている機能を、どこへ動かすかを考えます。方法は2つあります。

1つ目は、ページを開いた人が使う機能(問い合わせフォームや予約など)を、外部のサービスへ出す方法です。第3章の「代わり」は、古くなったプラグインを替えるためのものでしたが、ここでは、更新が続いているプラグインでも、受け持つ数を減らすために外へ出します。外部のサービスでは、そのプログラムの更新はサービスの会社が受け持つので、サイトで更新するプラグインが減ります。外へ出した機能は、そのサービスのアカウントと、届いた内容をどこに置くかを、社内で管理します。

2つ目は、作り直すときに、記事を書く側(管理画面の側)にだけプラグインを置く作りにする方法です。前もって作っておいたページのファイル(書き出したファイル)だけを配るので、公開しているサイトではプラグインが動きません。ログインの守りのように、書く側で使う機能のプラグインは、書く側に残り、更新を続けます。問い合わせフォームのように、ページを開いた人が使う機能は、そのままでは動かなくなるので、1つ目のように外部のサービスなどで用意し直します。

更新を受け持ちきれないときは、機能をどこへ動かすか 1つ目 外部のサービスへ出す ページを開いた人が使う機能 (フォーム・予約など)を 外部のサービスで用意する プログラムの更新はサービスの会社が受け持つ 例:問い合わせフォーム 2つ目 書く側にだけプラグインを置く 書き出したファイルだけを配る 公開しているサイトでは プラグインが動かない (作り直すときに選ぶ) フォームは外部のサービスなどで用意し直す 書く側に残したプラグイン(ログインの守りなど)は、更新を続ける
図5:プラグインの更新を受け持ちきれないときに考える2つの方法。

プラグインでどんな機能を動かしているかは、WordPressを続けるか、ほかの作りに移るかを見分ける物差しの1つにもなります。続けるか移るかは、脱WordPressの記事で解説しています。

関連記事脱WordPressは必要?続けるか移るかの見分け方と、移す前にいまのサイトで控えておくこと【無料診断付き】

更新を受け持ちきれないときは、ページを開いた人が使う機能を外部のサービスへ出すか、作り直すときに、書く側にだけプラグインを置く作りにするかを考えます。

ARROWSの無料のセキュリティ診断と、高セキュリティWebサイト制作

プラグインは管理画面の中から見直しますが、攻撃の入口は、プラグインの外にもあります。サイトが外からどう見えているかを確かめたいときは、ARROWSの無料のセキュリティ診断が使えます。サイトのURLと連絡先を入れると、外からだれでも見える範囲を、17項目に分けて自動で確かめます。たとえば、次のような項目です。

  • 外から見えたソフトウェアのバージョンが、作り手のサポートが終わったバージョンではないか
  • 管理画面のログイン画面が、だれでも開ける場所にないか
  • 公開するつもりのないファイル(設定ファイルの控えなど)が、外から開けないか

結果は、A4ヨコ・最大18ページの診断書(PDF)で、通常は数分でメールに届きます。申し込みには、サイトと同じドメインのメールアドレスを使います(ドメインが違う場合は、お問い合わせから相談できます)。

入れているプラグインを1つずつ調べて、弱点があるかを見る診断ではありません。プラグインは、第3章の見直しと第5章の更新で対策します。

第7章の2つ目のように、公開しているサイトではプラグインもPHPも動かない作りに作り直すときは、ARROWSの高セキュリティWebサイト制作にご相談いただけます。管理画面とデータベースを公開しているサイトから切り離し、公開しているサイトでは書き出したファイルだけを配信する構成で作ります。記事やページの更新は、移したあとも管理画面から行えます。いま使っているプラグインのうち、ページを開くたびに処理が要るもの(問い合わせフォームなど)は、そのままでは公開しているサイトで使えないので、作り替えの前に確かめて、代わりの方法をご提案します。公開したあとの毎月の保守では、管理システム(記事を書く側の仕組み)本体や追加した機能を更新し、何を確かめて何を直したかをご報告します。この構成は、攻撃される面(攻撃の入口になりうる場所)を小さくするためのもので、すべての攻撃や被害を防げるとお約束するものではありません。

まとめ

WordPressのプラグインの脆弱性は、開発元が修正版を出し、サイトでそれに更新して対策します。備えになるのは、修正版が出続けるプラグインだけを入れておき、出た修正版に更新することです。

まずは、サイトヘルスの「情報」でプラグインの一覧と、WordPressとPHPのバージョンを見て、1つずつ、最終更新日、いまのバージョンに対応しているか、実際に使っているか、代わりがあるかで、消す・替える・残すを決めてください。何に使っているか分からないものは、作った会社に聞きます。残したものは、自動で更新するか人が確かめて更新するかを分け、だれが、いつ更新するかを決めます。異変に気づいたら、記録して連絡し、パスワードを変えてから戻します。