WordPressは世界中で広く利用されている一方、管理画面への総当たり攻撃、脆弱なプラグインやテーマの悪用、不正ファイルの設置など、さまざまな攻撃対象になりやすいCMSでもあります。そのため、「セキュリティプラグインを入れれば安全」という考え方だけでは十分ではありません。
WordPressを守るには、コアやプラグインの更新、管理者アカウントの保護、不要な公開面の削減、権限の最小化、バックアップ、ログ監視などを重ねて実施する必要があります。特に、放置されたプラグインやテーマ、共有管理者アカウント、使い回しパスワードは攻撃の起点になりやすいため、優先して見直すことが重要です。
また、万が一改ざんや不正アクセスが発生した場合に備えて、バックアップだけでなくログや操作履歴を残しておくことも重要です。侵害後に原因を確認できないと、再発を防げない恐れがあります。
そこで本記事では、WordPressのセキュリティ対策で優先すべき項目、管理者アカウントの保護、プラグイン・テーマ管理、サーバー側のハードニング、バックアップと監視、侵害が疑われる場合の確認方法までを解説します。
WordPressのセキュリティ対策で最優先すべきこと
WordPressの防御では、単一のセキュリティ製品に依存せず、更新、認証、権限、バックアップ、監視を組み合わせることが重要です。
WordPress本体・テーマ・プラグインを更新する
WordPressコアだけでなく、テーマ、プラグイン、PHP、Webサーバー、OSなどもサポート中のバージョンへ更新します。
脆弱性が公開された古いプラグインを放置すると、認証不要の不正アクセスやファイルアップロードなどに悪用される可能性があります。
不要なプラグイン・テーマを削除する
使っていないプラグインやテーマは、無効化するだけでなく削除することが重要です。
無効化されていてもファイル自体がサーバーに残っていれば、脆弱なコードが攻撃対象になる可能性があります。
管理者アカウントにMFAを設定する
管理者アカウントには、強固で固有のパスワードとMFAを設定します。
可能であれば、TOTPやFIDO2、パスキーなどを利用し、メールだけを第2要素に依存しない構成が適しています。
管理画面へのアクセスを制限する
管理画面やログイン画面は、IP制限、VPN、認証プロキシ、レート制限などでアクセス元を絞ります。
固定IPで運用できる場合は、/wp-admin/へのアクセスを許可IPだけに制限する方法も有効です。
外部バックアップを取得する
データベース、wp-content、設定ファイルなどを定期的にバックアップし、サーバー外の別ストレージへ保管します。
本番サーバーと同じアカウントだけでバックアップを管理すると、侵害時に一緒に削除される可能性があります。
WAF・ログ監視・改ざん検知を導入する
WAFによって既知の攻撃パターンを遮断し、管理者ログイン、権限変更、プラグイン追加、ファイル変更などを継続的に監視します。
一つの対策だけに頼らない
WordPressでは、セキュリティプラグインだけを入れても、古いプラグインや弱い管理者認証が残っていれば侵害される可能性があります。
更新・認証・権限・公開面・バックアップ・監視を組み合わせて、多層防御を構成することが重要です。
WordPressの管理者アカウントを守る方法
WordPressでは、管理者アカウントが侵害されると、プラグイン追加やファイル編集、ユーザー作成などを行われる可能性があります。管理者保護は最優先で行うべき対策です。
共有アカウントを使わない
管理者、編集者、制作会社などには、個人単位のアカウントを割り当てます。
一つの共有アカウントを複数人で利用すると、不正操作があった際に誰が操作したのか追跡しにくくなります。
管理者権限を必要最小限にする
執筆や記事更新だけを行う利用者に、常時管理者権限を付与する必要はありません。
投稿者、編集者など、業務に必要な範囲まで権限を下げることが重要です。
adminのような予測しやすいユーザー名を避ける
「admin」などの予測しやすい管理者ユーザー名は、総当たり攻撃で狙われやすくなります。
新しい管理者アカウントを作成したうえで、不要な旧アカウントを削除します。
MFAとログイン試行制限を設定する
MFA、ログイン試行回数制限、bot対策などを組み合わせることで、不正ログインのリスクを下げられます。
ログインURLの変更は攻撃ノイズを減らす効果はありますが、それだけで防御できるわけではありません。
WordPressのプラグイン・テーマを安全に管理する方法
WordPressの脆弱性の多くは、プラグインやテーマなどの追加コンポーネントに関係します。必要最小限に絞り、継続的に更新することが重要です。
開発元と更新状況を確認する
導入前に、開発元、最終更新日、WordPress・PHPの対応バージョンなどを確認します。
脆弱性対応の実績を確認する
過去に脆弱性が発見された際、開発元が迅速に修正版を提供しているかも判断材料になります。
機能が重複するプラグインを減らす
複数のキャッシュ、最適化、セキュリティ系プラグインを重ねると、競合や設定不整合が起こる可能性があります。
重大脆弱性は優先して対応する
通常はステージング環境で検証してから本番へ反映するのが安全です。
ただし、既に悪用されている重大脆弱性では、通常の変更管理を短縮し、優先して更新・停止などを行う必要があります。
WordPressのサーバー側で実施したいハードニング
WordPress本体だけでなく、Webサーバーやファイル権限の設定も見直すことで、侵害時の影響を抑えやすくなります。
不要な書き込み権限を与えない
Webサーバープロセスへ必要以上の書き込み権限を与えないようにします。
攻撃者にWordPressの権限を奪われても、任意ファイルを書き込める範囲を限定することが重要です。
wp-config.phpを厳格に管理する
wp-config.phpにはデータベース情報や秘密情報が含まれるため、ファイル権限を厳格化します。
構成上可能であれば、Web公開範囲から外すことも検討できます。
uploads配下のスクリプト実行を制限する
wp-content/uploads/などのアップロード領域では、PHPなどのスクリプトを実行できないようにすることが重要です。
ファイルアップロード脆弱性を悪用されても、アップロードされた不正PHPがそのまま実行されるリスクを抑えられます。
テーマ・プラグイン編集機能を無効化する
WordPress管理画面からテーマやプラグインのコードを直接編集できる機能は、通常運用では無効化を検討します。
バックアップやデバッグ情報を公開しない
.env、SQLダンプ、バックアップZIP、Gitディレクトリ、デバッグログなどをWeb公開領域へ置かないようにします。
本番環境でWP_DEBUGの表示を有効にすると、内部パスやエラー情報が漏れる可能性があります。
XML-RPC・REST APIの設定を見直す
WordPressの外部連携機能は、必要なものだけを有効にすることが重要です。
不要なXML-RPCを制限する
XML-RPCを使用していない場合は、無効化またはWAFなどで制限します。
ただし、Jetpackや外部投稿アプリなどが利用している場合があるため、無条件に停止すると正規機能が動かなくなることがあります。
REST APIの不要な公開を見直す
REST APIを全面停止するのではなく、ユーザー列挙、不要なエンドポイント、認可漏れなどを確認します。
認証が必要な操作は、適切にアクセス制御されていることが重要です。
WordPressのバックアップと監視を強化する
セキュリティ対策では、侵入を防ぐだけでなく、侵害された場合に復旧・調査できる状態を作ることも重要です。
DBとファイルを定期バックアップする
データベース、wp-content、設定ファイルなどを定期的に取得します。
更新頻度が高いサイトでは、データベースをより短い間隔で保護することも重要です。
バックアップをサーバー外へ保管する
本番サーバーとは別のアカウント、別ストレージ、別ロケーションへバックアップを保存します。
3-2-1の考え方を参考に、複数世代を保持する運用が有効です。
復元テストを実施する
バックアップは取得するだけでは不十分です。隔離環境などで定期的に復元テストを実施し、実際に戻せることを確認します。
管理者操作やファイル変更を監視する
管理者ログイン、ユーザー追加、権限変更、プラグイン更新、テーマ変更、ファイル改ざんなどを監視します。
異常な404、POST、PHPエラーなども、攻撃の兆候として確認できる場合があります。
WordPressで最低限そろえたいセキュリティ構成
小〜中規模のコーポレートサイトでは、複雑な製品を大量導入するより、基本対策を確実に実施することが重要です。
保守されたWordPress・PHP基盤
マネージドWordPressや、適切に保守されたLinux・PHP環境を利用します。
CDN・WAF
前段にCDNやWAFを配置し、DDoS、bot、既知の攻撃パターンを遮断します。
管理画面のアクセス制御
管理画面は、VPNや認証プロキシなどを利用して、公開範囲を必要最小限にします。
管理者MFAと最小権限
個人アカウント、MFA、最小権限を基本とし、共有管理者アカウントを使用しないようにします。
外部バックアップと復元テスト
オフサイトバックアップを定期取得し、復旧手順を確認します。
脆弱性・改ざん・操作ログ監視
脆弱性情報、管理者操作、ファイル改ざんなどを継続監視します。
- WordPress・プラグイン・テーマを更新します。
- 不要なプラグインとテーマを削除します。
- 管理者へMFAを設定します。
- 外部バックアップを取得します。
- WAFを有効化します。
WordPressへの不正アクセスが疑われる場合の対処法
セキュリティ対策を行っていても、身に覚えのない管理者追加、改ざん、リダイレクト、不審なファイルなどが確認された場合は、すでに侵害されている可能性があります。
不審な管理者アカウントを確認する
見覚えのない管理者やユーザーが追加されていないか確認します。
改ざんされたファイルを確認する
テーマ、プラグイン、uploads配下などに不審なPHPやJavaScriptが追加されていないか確認します。
アクセスログ・操作ログを保全する
Webサーバー、WAF、WordPress操作ログ、認証ログなどを保存します。
復旧を急いでログを削除したりサーバーを初期化したりすると、侵入経路を確認できなくなる可能性があります。
侵入経路を確認する
脆弱なプラグイン、管理者アカウント侵害、不正ファイルアップロードなど、どの経路から侵入されたのかを確認します。
WordPressの不正アクセス調査をフォレンジック調査会社に相談する
WordPressが改ざんされた場合、感染ファイルだけを削除しても、侵入に使われたアカウントやバックドアが残っていると再侵害される可能性があります。
また、ログや改ざんファイルを先に削除すると、侵入経路を特定できなくなる恐れがあります。
不審な管理者、改ざん、マルウェア、外部リダイレクトなどが確認された場合は、サーバーやWordPressのログを保全し、侵入経路や被害範囲を調べられるフォレンジック調査会社への相談を検討してください。
おすすめのフォレンジック調査会社
公式サイトデジタルデータフォレンジック
編集部が厳選したおすすめのフォレンジック調査会社は、デジタルデータフォレンジックです。
デジタルデータフォレンジックは、累計4万7千件以上の豊富な相談実績を持ち、全国各地の警察・捜査機関からの相談実績も409件以上ある国内有数のフォレンジック調査サービスです。
24時間365日の相談窓口があり、緊急時でも安心です。相談から見積りまで無料で対応してくれるので、フォレンジック調査の依頼が初めてという方もまずは気軽に相談してみることをおすすめします。
まとめ
WordPressのセキュリティ対策では、セキュリティプラグインだけに頼らず、更新、認証、権限、公開面の削減、バックアップ、監視を組み合わせることが重要です。
特に、古いプラグインやテーマ、共有管理者アカウント、MFA未設定、外部バックアップの欠如は優先して見直したいポイントです。管理画面へのアクセス制御やWAF、改ざん検知などもあわせて導入すると、多層的に防御できます。
また、すでにWordPressで改ざんや不正ログインが確認されている場合は、復旧だけで対応を終えないことが重要です。ログや改ざんファイルを残した状態で侵入経路と被害範囲を確認し、必要に応じて専門調査を検討してください。



![中小企業の情報瀬キィリティ相談窓口[30分無料]](/wp-content/uploads/2023/07/bnr_footer04.png)



