企業サイトのWordPressセキュリティ対策|被害の原因と対策の優先順位、PHP更新・バックアップ・月次の保守チェック表

「会社のホームページはWordPressで作ったが、公開してから誰も管理画面を開いていない」「更新ボタンを押すとサイトが崩れそうで怖い」。企業サイトを担当する方から、こうした声をよく聞きます。2026年は7月にWordPress本体の重大な脆弱性、10月にPHP本体の重大な脆弱性(PHP2Shell)が相次いで公表され、放置されたWordPressサイトのリスクがあらためて注目されています。
この記事では、専門家ではない担当者向けに、WordPressサイトが被害にあう主な原因と、やるべき対策を優先度の高い順に整理します。WordPress公式の「Hardening WordPress」(Advanced Administration Handbook)とIPA(情報処理推進機構)の資料にもとづき、最後に月次の保守作業で使えるチェック表を載せています。情報は2026年10月23日時点のものです。
- 被害の多くは、古い本体・プラグイン・テーマ、弱いパスワード、放置されたサイトが原因です。特別な攻撃よりも、基本の不足が狙われます。
- 最優先は本体・プラグイン・テーマの更新と、不要なプラグイン・アカウントの削除です。次に、強いパスワードと二段階認証、ログイン画面の保護を行います。
- WordPressを更新しても、サーバー側のPHPの脆弱性(PHP2Shellなど)は直りません。PHPの更新は別の作業として確認が必要です。
- バックアップは取るだけでなく、戻せることを確認します。対策は一度で終わらないため、月次の点検を決めておきましょう。
目次
WordPressのセキュリティ対策とは
WordPressのセキュリティ対策とは、WordPress本体・プラグイン・テーマ、それを動かすサーバーとPHP、管理画面のアカウントを、攻撃されにくい状態に保ち続けるための作業です。WordPress公式のドキュメントでは、これを「Hardening(ハードニング=守りを固めること)」と呼んでいます。
WordPressは利用者が多いため、古いバージョンを探して自動で攻撃するツールが出回っています。攻撃者は「どの会社か」ではなく「弱いサイトかどうか」で相手を選ぶため、会社の規模は関係ありません。
実際に2026年7月には、WordPress 6.9以降の標準構成で、ログインなしで遠隔からコードを実行される可能性がある脆弱性(CVE-2026-60137、CVE-2026-63030)が修正され、IPAが注意喚起を出しました。自動更新で修正版が配られましたが、IPAは更新されていない可能性もあるとして、管理画面でバージョンを確認するよう呼びかけています。
被害の主な原因
WordPressサイトの被害は、次の4つの原因に集約できます。多くの場合、複数が重なっています。
WordPressサイトが被害にあう主な原因
| 原因 | 起きること | よくある状況 |
|---|---|---|
| 古いプラグイン・テーマ・本体 | 公表済みの脆弱性を突かれ、改ざんや不正なファイルの設置をされる | 更新通知が出ているのに、表示崩れが怖くて止めている。開発元が更新をやめたプラグインを使い続けている |
| 推測されやすいパスワード | 管理画面に不正ログインされ、ページの書き換えや管理者の追加をされる | ユーザー名が「admin」、パスワードが社名や電話番号。複数の担当者で1つのアカウントを共有している |
| 管理画面への総当たり | ログイン画面にパスワードを大量に試され、当たれば乗っ取られる。サーバーの負荷も上がる | ログイン画面が誰でも開ける状態で、試行回数の制限がない |
| 放置されたサイト | 誰も見ていないため、侵害に長く気づかない | キャンペーン用の古いサイト、検証用サイト、退職した担当者が作ったサイトが残っている |
IPAの「安全なウェブサイトの運用管理に向けての20ヶ条」でも、「利用しているソフトウェアの脆弱性対策を定期的に行っているか」「不要になったページやサイトを閉鎖しているか」「不正ログインへの対策をしているか」が、運用の基本項目として挙げられています。
関連記事Webサイトの改ざん・不正アクセスの確認方法と初動対応|症状・調べ方・個人情報保護委員会への報告と相談窓口
対策を優先度順に進める
すべてを一度にやる必要はありません。効果が大きく、手間が少ないものから順に進めます。
優先度1:本体・プラグイン・テーマを更新する
最も効果が大きいのが更新です。WordPress公式も、古いバージョンにはセキュリティの修正が届かないため、常に最新に保つよう求めています。
- 本体のマイナー更新は自動のままにする:WordPressは3.7以降、セキュリティ修正を含むマイナー更新(例:6.9.4→6.9.5)が初期設定で自動適用されます。公式は、これを止めることを「強く推奨しない」としています
- プラグイン・テーマの自動更新は種類で決める:WordPress 5.5以降、プラグイン・テーマごとに自動更新を有効にできます(初期状態は無効)。表示に影響しにくいものは自動、サイトの見た目や機能の中心になるものは検証してから手動、と分ける方法が現実的です
- 更新前にバックアップを取る:公式の手順でも、更新の前にデータベースとファイルのバックアップを取るよう案内しています
- 自動更新が動いているか確認する:自動更新はWordPressの定期実行の仕組み(WP-Cron)に依存します。「ツール」→「サイトヘルス」でエラーが出ていないかを確認します
優先度2:不要なプラグイン・テーマを削除する
使っていないプラグインやテーマも、ファイルがサーバー上にある限り攻撃の入口になり得ます。WordPress公式も、使わないプラグインは削除するよう案内しています。「停止」ではなく「削除」まで行うのがポイントです。あわせて、長期間更新されていないプラグインは、代わりの方法がないかを検討します。入手先は、WordPress.orgの公式ディレクトリなど信頼できる配布元に限ります。
優先度3:管理者アカウントを整理し、ログインを強くする
- アカウントを棚卸しする:退職者、制作会社、使っていないアカウントを削除します。管理者権限は必要な人だけにし、記事を書くだけの人は「編集者」などに下げます
- ユーザー名「admin」を使わない:公式も「admin」というユーザー名を使わないよう明記しています。別名の管理者を作り、古いアカウントは権限を下げるか削除します
- 長く、使い回さないパスワードにする:辞書にある単語や個人情報を避け、パスワード管理ツールで生成・保管します。1つのアカウントを複数人で共有しません
- 二段階認証を有効にする:公式は、すべての管理者アカウントで二段階認証を有効にするよう勧めています。WordPress本体には二段階認証の機能がないため、プラグインや認証サービスで追加します。SMSは安全な経路ではないとされているため、可能なら認証アプリを使います
優先度4:ログイン画面を守り、XML-RPCを見直す
ログイン画面(wp-login.php)と管理画面は、総当たり攻撃の主な標的です。公式の「Brute Force Attacks」では、次のような方法が紹介されています。
- IPアドレスで制限する:社内や委託先など、決まった場所からしか管理しないなら、ログイン画面に入れるIPアドレスをWebサーバーの設定で絞ります。在宅勤務や外出先から更新する場合は、例外の扱いを決めて記録しておきます
- ログイン画面に追加のパスワードをかける:サーバーの基本認証で、WordPressのログインの手前にもう一枚の鍵をかけます。admin-ajax.php まで止めるとサイトの機能が壊れることがあるので、設定は慎重に行います
- 試行回数を制限する:WAFやCDN、Webサーバーで、ログイン画面への短時間の大量アクセスを制限します
XML-RPCは、外部のアプリやサービスからWordPressを操作するための古い仕組みです。ログインの試行にも使われるため、公式は「使っていないなら無効にする」「必要なら制限し、アクセスの頻度を強く制限する」としています。WordPressの「xmlrpc_enabled」フィルターで止まるのはログインが必要な機能だけなので、完全に止めるならWebサーバー側で xmlrpc.php を遮断します。スマホアプリや外部連携で使っていないかを先に確認しましょう。
優先度5:管理画面からのファイル編集を無効にする
WordPressの管理画面には、テーマやプラグインのプログラムを直接書き換えられる編集機能があります。管理画面を乗っ取られると、この機能で不正なコードを埋め込まれるおそれがあります。wp-config.php に次の1行を加えると、この編集機能を止められます。
define( 'DISALLOW_FILE_EDIT', true );
これで不正なファイルのアップロードまで防げるわけではなく、乗っ取られた後の被害を広げにくくする対策です。あわせて、ファイルの書き込み権限を必要な場所(主に wp-content)だけに絞ります。
バックアップと復元テスト
どれだけ対策しても、被害を完全には防げません。最後の守りがバックアップです。WordPressのバックアップはデータベースとファイルの両方が必要で、どちらか一方だけでは元に戻せません。ファイルには本体、プラグイン、テーマ、アップロードした画像、wp-config.php が含まれます。
バックアップの考え方(WordPress公式の案内より)
| 項目 | 目安 |
|---|---|
| 対象 | データベースと、WordPressのファイル一式 |
| 頻度 | 更新が少ないサイトは週1回、更新の多いサイトは毎日。更新作業やサーバー移転の前には必ず |
| 世代と保管場所 | 直近の3〜5世代を、サーバー上・クラウドストレージ・手元など別々の場所に保管 |
| 確認 | 自動バックアップでも、ときどき手動で取得し、仕組みが動いているかを確かめる |
大切なのは、実際に戻せるかを試しておくことです。ファイルが壊れていた、戻し方を誰も知らなかった、ということは珍しくありません。年に1〜2回は検証用の環境に復元し、表示を確かめておきましょう。
サーバー側の対策:PHP・WAF・改ざん検知
WordPressの管理画面でできる対策だけでは足りません。WordPressを動かしているサーバーとPHPも、同じように更新と点検が必要です。
PHPのバージョンは、WordPressの「ツール」→「サイトヘルス」→「情報」→「サーバー」で確認できます。PHP 8.2は2026年12月31日でサポートが終わるため、8.2以前なら、プラグインやテーマの対応を確かめたうえで8.3以降への切り替えを計画しましょう。
関連記事PHPの重大な脆弱性「PHP2Shell」(CVE-2026-109618・109619)|業務システムで確認すること・修正版・8.1以前の対応【2026年10月】
関連記事PHP 8.2のサポート終了は2026年12月31日|影響と8.3・8.4への移行手順・スケジュール例
関連記事WAFとは?ファイアウォール・IPSとの違い、種類と守れないもの|中小企業のWebサイト・業務システムに必要か
月次の保守作業チェック表
セキュリティ対策は、一度設定して終わりではありません。毎月決まった日に、次の項目を点検するのがおすすめです。誰がいつ何をするかも決めておきます。
WordPressサイトの月次点検チェック表
| 分類 | 点検すること | 確認する場所 |
|---|---|---|
| 更新 | 本体・プラグイン・テーマ・翻訳に未適用の更新がないか。自動更新の失敗通知が届いていないか | ダッシュボード→更新、通知メール |
| 更新 | 開発元が長く更新していないプラグイン・テーマがないか | プラグイン一覧、配布ページ |
| 削除 | 停止したまま残っているプラグイン・テーマがないか | プラグイン、外観→テーマ |
| アカウント | 見覚えのないユーザー、退職者・委託終了先のアカウント、不要な管理者権限がないか | ユーザー一覧 |
| ログイン | 管理者全員が二段階認証を使っているか。ログイン失敗が急増していないか | 認証の設定、サーバー・WAFのログ |
| サーバー | PHPがサポート中で、修正版になっているか。サーバー会社から重要な告知が出ていないか | サイトヘルス、サーバー管理画面 |
| サイトの状態 | サイトヘルスに重大な問題が出ていないか。HTTPSの証明書が有効か | ツール→サイトヘルス、ブラウザ |
| バックアップ | 直近のバックアップが取れているか(データベースとファイルの両方)。半年に1回は復元テスト | バックアップの保管先 |
| 改ざん | トップページや主要ページに見覚えのない表示・リンクがないか。Search Console に警告がないか | 実際のページ、Search Console |
| 記録 | 実施した作業と結果、気づいた問題を記録したか | 作業記録 |
保守会社に任せる場合は、プラグインの更新や更新後の表示確認、PHPの切り替えが契約の範囲に入っているかを事前に確認しておきましょう。
関連記事Webサイトのセキュリティチェックリスト20項目|担当者が自分で確認できる方法と頻度(IPAの20ヶ条と整合)
10の質問に答えるセルフチェックと、サイトのURLから公開されている情報(HTTPS、セキュリティ設定、PHPのバージョン表示など)の確認ができる簡易セキュリティ診断を用意しています。登録は不要です。月次点検の前に、まず現状をざっくり把握するのにお使いください。
よくある質問
- セキュリティ対策のプラグインを入れれば十分ですか?
- 十分ではありません。プラグインは一部の対策を助けるものですが、本体・プラグイン・テーマの更新、アカウントの整理、PHPの更新、バックアップは別に必要です。プラグイン自体も更新を続ける必要があり、入れすぎると、かえって管理の手間と攻撃の入口が増えます。
- 自動更新にするとサイトが壊れませんか?
- 可能性はゼロではありません。そのため、本体のマイナー更新は自動のままにし、見た目や機能の中心になるプラグイン・テーマは、バックアップを取ってから手動で更新して表示を確認する、という分け方が現実的です。更新しないで放置するリスクのほうが大きいと考えてください。
- ログイン画面のURLを変えれば安全になりますか?
- 総当たりの通信を減らす効果はありますが、主な対策にはなりません。WordPress公式も、隠すことによる安全は主な対策として不適切だとしています。強いパスワードと二段階認証、IP制限などと組み合わせて使います。
- 古いWordPressサイトを使っていないのですが、どうすればよいですか?
- 使っていないサイトは閉鎖するのが基本です。IPAの20ヶ条でも、不要になったページやサイトの閉鎖が挙げられています。残す必要がある場合は、更新を続けるか、内容を静的なページに置き換えて、WordPressを動かさない形にすることを検討します。
まとめ
企業のWordPressサイトの被害は、古いソフトウェア、弱いパスワード、放置が主な原因です。まず本体・プラグイン・テーマの更新と不要なものの削除、次にアカウントの整理と二段階認証、ログイン画面の保護、ファイル編集の無効化と進めましょう。WordPressの更新ではPHPの脆弱性は直らないため、サーバー側のPHPの更新とバックアップの復元テストも欠かせません。月次の点検表を決めて、担当者が替わっても続けられる形にしておくことが大切です。
参考:WordPress Advanced Administration Handbook「Hardening WordPress」「Brute Force Attacks」「Two Step Authentication」「Backups」「Upgrading WordPress」(WordPress.org)、WordPress.org「Plugins and Themes Auto-Updates」、WordPress Developer Reference「xmlrpc_enabled」、IPA「WordPressの脆弱性対策について(CVE-2026-60137、CVE-2026-63030:wp2shell)」(2026年7月22日)、IPA「安全なウェブサイトの運用管理に向けての20ヶ条」(2019年3月6日更新)、PHP公式「Security advisory: Critical remote code execution vulnerabilities, update now」(2026年10月21日)、PHP公式「Supported Versions」。
この記事に関連するサービス
システム保守・運用
業務システムやWebシステムの監視、障害対応、セキュリティ更新、小さな修正を月額の定額制で行います。他社が開発したシステムも、引き継ぎ調査から対応します。 サービスの詳細を見る



