2026年10月17日
2026年10月17日
WordPressの脆弱性診断のやり方|自分でできる範囲と外注の目安(2026年版)
結論:診断してよいのは、自分が管理するサイトだけ
WordPressの脆弱性診断は、脆弱性が見つかっている古いプラグインやテーマが、サイトに残っていないかを調べる作業です。自分で行う方法として、WPScan(コマンドラインのツール)と、セキュリティプラグインのスキャンがあります。
最初に決めておくことが1つあります。診断してよいのは、自分が管理するサイト、または相手の事前の同意を得たサイトだけです。WPScanの公式の免責事項には、「事前の相互の同意なしにWebサイトに対してWPScanを実行することは、国によっては違法となる可能性がある」と書かれています。この記事では、日本の法令の条文は扱いません。他人のサイトを、無断で診断しないでください。
この記事は、2026年10月16日時点の公式情報にもとづいています。診断の前には、バックアップを取ってください。
脆弱性診断で調べること
| 調べる対象 | 内容 |
|---|---|
| WordPress本体のバージョン | 古いバージョンに、既知の脆弱性がないか |
| プラグイン | 使っているプラグインに、既知の脆弱性がないか。更新が止まったプラグインがないか |
| テーマ | 使っているテーマに、既知の脆弱性がないか |
診断で見つかるのは、すでに知られている脆弱性(既知の脆弱性)です。未知の問題を見つけるものではありません。
自分でできる診断①:WPScan
WPScanは、WordPressサイトのセキュリティをテストするためのスキャナーです。READMEでは、セキュリティの専門家やブログの管理者向けと説明されています。
基本的な使い方
READMEに書かれている、主なコマンドです(blog.tld は、診断する自分のサイトです)。
# 既定の設定でスキャンする(バージョン、テーマなどを検出)
wpscan --url blog.tld
# 全プラグインを列挙する
wpscan --url blog.tld -e ap
# 脆弱なプラグインを列挙する
wpscan --url blog.tld -e vp
# バックアップフォルダーを確認する
wpscan --url blog.tld -e bf
脆弱性のデータとAPIトークン
- 脆弱性のデータは、WordPress Vulnerability Database APIから取得されます。トークンは、
--api-token、設定ファイル、または環境変数WPSCAN_API_TOKENで指定します。トークンは、WPScan.comでアカウントを登録して取得します - 無料枠は、1日25回までのAPIリクエストです。1日の上限に達すると、スキャンは続行されますが、脆弱性のデータは表示されなくなります
- APIリクエストは、WordPressのバージョンに1回、プラグインごとに1回、テーマごとに1回、発生します。READMEでは、平均的なサイトのプラグイン数は22とされています。プラグインが多いサイトでは、無料枠を超えることがあります
動作環境とライセンス
- 前提条件は、Ruby 3.3以上、Curl 7.72以上、RubyGemsです。Dockerイメージも提供されています
- ライセンスは、デュアルライセンスです。商用利用には、商用のライセンスが必要とされています。商用利用の例として、マネージド/SaaSとしての提供、商用製品としての配布、付加価値サービスとしての利用が挙げられています
- ペンテスターや、自分のシステムのテスト、非商用利用は、無料の条件で利用できる例とされています。商用ライセンスが必要かどうかは、READMEに書かれた連絡先に問い合わせるよう案内されています
- 提供形態は「AS-IS」で、保証はなく、サポートや更新も保証されていません
READMEには、バックアップフォルダーには機密データが含まれる可能性があるという注意もあります。
詳しい使い方は、WordPressのWPScanで脆弱性を発見する方法とWordPressのWPScanでセキュリティ検査する方法も参考にしてください。
自分でできる診断②:セキュリティプラグインのスキャン
コマンドラインが使えない場合は、セキュリティプラグインのスキャンでも、脆弱性を確認できます。たとえばWordfence Securityは、無料版で次の機能が使えると、wordpress.orgで説明されています。
- 脆弱性チェック: 既知のセキュリティ脆弱性を確認し、放棄されたプラグインについても警告します
- マルウェアスキャナー: コアファイル、テーマ、プラグインを調べます
- 整合性チェック: WordPress.orgのリポジトリと比較して、変更を報告します
ただし、無料版は、ファイアウォールのルールとマルウェアのシグネチャの提供が30日遅れます(詳しくはWordfence Securityの設定方法)。
結果の読み方と対処
診断の結果は、次の順で整理します。
| 結果 | 対処の考え方 |
|---|---|
| 脆弱性が見つかったプラグインやテーマ | まず、更新できるか確認する。更新で直らない、または更新が止まっている場合は、無効化や、別のプラグインへの置き換えを検討する |
| WordPress本体が古い | 更新する。更新の前に、バックアップを取る |
| 放棄されたプラグインの警告 | 更新が止まっているため、代わりのプラグインを探す |
| 古いバックアップフォルダーなどが見つかった | 公開された場所に置かず、削除または移動する |
見つかった脆弱性の調べ方は、WordPressのプラグインの脆弱性をチェックする方法や、WordPressで脆弱なプラグインを発見する方法も参考にしてください。
外注を考える目安
自分で診断できるのは、既知の脆弱性の確認が中心です。次のような場合は、専門の診断サービスへの依頼を検討してください。これは、当サイトとしての目安です。
- 決済や個人情報など、重要なデータを扱うサイトで、より深い診断が必要なとき
- 診断の結果の解釈や、対処の優先順位に自信がないとき
- 他人のサイト(クライアントのサイトなど)を診断する必要があるとき。その場合は、相手の事前の同意が必要です
- すでに侵害された疑いがあるとき。Wordfenceの公式のFAQでは、侵害されたあとは、完全な再インストールを推奨しています
よくある質問
自分のサイトを診断しても問題ありませんか。
自分が管理するサイトなら、問題ありません。WPScanも、自分のシステムのテストは、無料で使える例として挙げています。
WPScanは、商用でも無料で使えますか。
READMEでは、商用利用には、商用のライセンスが必要とされています。たとえば、クライアントのサイトを診断するサービスとして提供する場合は、商用にあたる可能性があります。ライセンスの要否は、READMEに書かれた連絡先に問い合わせてください。
脆弱性が見つからなければ、安全ですか。
安全とは言えません。診断で見つかるのは、既知の脆弱性です。診断のあとも、WordPress本体・テーマ・プラグインを、更新し続けてください。
無料で診断できますか。
WPScanは、1日25回までのAPIリクエストが無料です。Wordfence Securityも、無料版に脆弱性チェックがあります。いずれも、無料版には制限があります。