WordPressは、CMS本体だけでなく、テーマ、プラグイン、PHPなど複数の要素を組み合わせて動作するため、安全に運用するには、それぞれの脆弱性への対処に加えて、公開機能の悪用、不正ログイン、データ消失、サイト改竄など、異なる経路から生じる問題に備えなくてはならない。
このページでは、WordPressを安全に運用するための対策を、以下のセクションとして整理し、各セクションごとにWordPress固有の対策と一般的な対策を羅列する。
- 公開機能の悪用を防ぐ
- 脆弱性を把握し、解消する
- 不正ログインを防ぐ
- 障害や改竄に備えてバックアップする
- インシデント発生時に被害拡大を防ぎ、調査・復旧する
公開機能の悪用を防ぐ
WordPressには、コメント、問い合わせフォーム、XML-RPC、REST APIなど、外部から利用できる機能も多い。
使用していない機能は公開せず、必要な機能には用途に応じた制限を加えることで悪用される恐れを減らせる。
参考リファレンス
脆弱性を把握し、解消する
WordPressは、本体だけでなくテーマ、プラグイン、PHPなど複数のソフトウェアに依存する。いずれかに脆弱性が残れば、Webサイトへの侵入や不正なコードの実行に利用される。
参考リファレンス
WordPress固有の構成要素と周辺の実行環境を分けて、脆弱性の確認と更新を行う。
不正ログインを防ぐ
WordPressの管理機能は、認証に使うキーを奪われたり突破されたりすると、正規の管理機能そのものを攻撃者に利用される。
当サイトではパスワード、パスキー、認証情報など、権限を得るための情報を「キー」として扱う。
WordPressのログイン画面に辿り着かせない
管理画面へ到達できる接続元を減らし、不特定多数からログインを試行できる状態を避ける。
WordPressのログインを成功させない
ログイン画面へ到達されても、認証を突破できない状態を作る。パスワードだけに依存せず、MFAやパスキー、Bot対策などを組み合わせる。
WordPressのユーザーと権限を整理する
正規の認証でログインされた場合でも、不要なアカウントや過剰な権限が侵害範囲を広げる。必要な利用者だけに、必要な権限を与える。
障害や改竄に備えてバックアップを行う
WordPressでは、更新失敗、操作ミス、サーバ障害などによってサイトを正常に利用できなくなる。復元に必要なデータを把握し、障害が発生してもサイトを戻せる状態を作る。
参考リファレンス
一方、マルウェア感染やサイト改竄では、侵害されたバックアップをそのまま書き戻すことが安全とは限らない。このページでは、通常の復元とクリーンな再構築を分けて扱う。
障害・操作ミス・更新失敗に備える
復元に必要なデータを特定し、バックアップの取得、自動化、外部への退避、ステージング環境での復元までを準備する。
改竄・マルウェア感染に備える
侵害された環境をそのまま復元するのではなく、安全な環境からWordPressを再構築できるようにする。設定情報と正常時の構成を記録し、必要なコンテンツだけを戻せる状態を作る。
インシデント発生時に被害拡大を防ぎ、調査・復旧する
WordPressへの侵害が疑われる場合は、通常運用の対策からインシデント対応へ切り替える。
まず侵害を封じ込めて被害拡大を止め、その後に侵入経路と改竄範囲を調査する。復旧では、調査結果に応じてバックアップからの復元またはクリーンな再構築へ接続する。
