WordPressで構築したサイトが受ける攻撃の大半は、管理画面に対する不正アクセスです。
「SiteGuard WP Plugin」は管理画面への不正アクセスを防止する機能を備えたプラグインです。
セキュリティに知識がなくても簡単な操作で導入が可能なので、初心者の方にもおすすめです。
インストール
WordPress管理画面の「プラグイン」->「新規追加」にアクセスし、キーワードに「SiteGuard WP Plugin」と入力するとプラグインが表示されるので「今すぐインストール」をクリックしてインストールをしましょう。
インストール後「有効化」をクリックしてプラグインを有効化すると、ログインページのURLが変更されます。「新しいログインページURL」をクリックするとログインページにアクセスしますので、忘れないようにブックマークなどに登録しましょう。
設定方法
管理ページアクセス制限
「/wp-admin」配下のファイルへのアクセスを制限する機能です。未ログインのIPからのアクセスを遮断することで不正アクセスを防止します。
ログインページ変更
ログインページのURLを任意の文字列を設定する機能です。ログインページを秘匿化することで管理画面への不正ログインを防ぐことができます。デフォルトでは「login_ランダムな数字」になっており、半角英数字・ハイフン・アンダーバーで任意の文字列に変更することが可能です。
またオプションの「管理者ページからログインページへリダイレクトしない」には必ずチェックを入れましょう。これは未ログイン状態で「/wp-admin」にアクセスすると自動的にログインページにリダイレクトをするのを防ぐ機能です。逆に言うと、設定しないとログインページのURLを変更しても「/wp-admin」にアクセスされると容易にログインページに到達されてしまいます。
画像認証
画像認証は管理画面のログイン、コメント投稿、パスワード再発行、ユーザー登録画面に画像認証を追加する機能です。管理画面からの不正ログインを防ぐほか、スパムコメント防止に高い効果が期待できます。
画像はひらがな、または、英数字から選択でき、それぞれのランダムの文字列が表示されるようになります。
ログイン詳細エラーメッセージの無効化
管理画面へのログインに失敗した際に表示されるエラーメッセージをすべて同じ内容にする機能です。同じ内容にすることで攻撃者にログインできない原因を推察させない効果があります。
ログインロック
ログインロックは管理画面へのログインに失敗したIPに対して、期間や回数に応じて一定時間ログインの試行をブロックする機能です。機械的な不正アクセスを防ぐ効果が期待できます。
ログインアラート
ログインアラートは管理画面にログインするたびにメールで通知する機能です。万が一不正アクセスに発生した場合に、そのことにいち早く気づきやすくします。
通知メールは件名と本文を編集することが可能です。
また受信者を「管理者のみ」にしないと、WordPressに登録したすべてのユーザーに通知メールが届いてしまうので注意が必要です。
フェールワンス
フェールワンスは正しいログインページで正しいユーザー名とパスワードを入力してログインしようとしても必ず1回は失敗させるという機能です。リスト攻撃を受けにくくする効果が期待できますが、2重3重の防御という意味合いが強いと思います。
有効にするにしても対象ユーザーは管理者に限定したほうがいいでしょう。
XMLRPC防御
XMLRPCは外部からWordPressを操作するためのプロトコルですが、現在はREST APIに取って代わられており、一部のプラグインを除き使用する場面は少なくなっています。むしろ攻撃の踏み台にされることのほうが多いので、特に必要が無ければ無効化することを推奨します。
ユーザー名漏えい防御
WordPressサイトではURLに「?author=数字」でユーザーアーカイブに自動的にリダイレクトし、ユーザー名が容易に把握されてしまいます。またREST API上でも情報を取得できてしまいます。ユーザー名漏えい防御ではこれらへのアクセスを無効化し、ユーザー名を取得できないようにします。
更新通知
更新通知はWordPress本体・プラグイン・テーマにそれぞれ更新があるかどうか24時間毎に確認し、更新があった場合に管理者宛にメールで通知する機能です。
自動アップデートを有効にしているなら不要ですが、任意のタイミングでアップデートを行っている場合には通知を有効にして、常にアップデートが発生していないか確認しましょう。
WAFチューニングサポート
WAFチューニングサポートはSiteGuard WP Pluginの開発元のJP-Secureが提供しているWAF SiteGuard Server Editionがサーバーに導入されている場合に、正常なアクセスを遮断しないように回避ルールを作成する機能です。SiteGuardはさくらのレンタルサーバなどの共用サーバーにも導入されているので、WAFを有効化してセキュリティを高めている場合にはこの機能でチューニングを行いましょう。
詳細設定
詳細設定ではIPアドレスの取得方法を選択します。
通常は「リモートアドレス」で問題ありませんが、プロキシサーバーやロードバランサーを設置してクライアントのIPアドレスが取得できない場合に「X-Forwarded-For」を選択します。
ログイン履歴
ログイン履歴は管理画面へのログインの履歴を最大10,000件まで記録し、確認する機能です。
時々確認し、見覚えのないログインや不自然にログインに失敗している履歴がないか確認しましょう。
まとめ
SiteGuard WP Pluginはテーマを編集することなく手軽にセキュリティを高められるので、初心者にもおすすめです。
セキュリティに知識がない人もとりあえず導入してみることをおすすめします。