WordPressを不正アクセスから守る、SiteGuard WP Pluginの設定をご紹介

WordPress(ワードプレス)は簡単にWebサイトを作成できる便利なソフトウェアです。多くの人がWordPressを使ってWebサイトを運営しています。しかし、利用者数が多くなるほど情報を不正に集めることを目的とする人や組織のターゲットになりやすいでしょう。第三者からの不正アクセスを許すと、サイト内の情報漏洩やサイトのコンテンツを改ざんされるおそれがあります。

SiteGuard WP Pluginは、WordPressのセキュリティ強化を目的としたプラグインです。無料のプラグインでありながら、不正アクセスを防ぐ機能が複数あります。大切なWebサイトを不正アクセスから守るために、SiteGuard WP Pluginを取り入れてはいかがでしょうか。

プラグインとは

プラグインとはWordPressの機能を拡張するソフトウェアです。プラグインを追加すると、WordPressをより使いやすくカスタマイズできるでしょう。セキュリティ対策のほかにも、バックアップ取得・お問合せフォーム作成・自動目次作成などさまざまな種類のプラグインがあります。運営するWebサイトの特徴にあったプラグインを選びましょう。

プラグインの注意点

プラグインは気に入った機能だけを選んで追加できますが、気を付けるべき点があります。WordPressを使う環境はユーザーごとに異なります。お使いのバージョンや環境によっては、新しいプラグインを採用したことでWebサイトの表示や動作に不具合が発生するかもしれません。また、先に有効化済みのプラグインと干渉することで不具合が発生することもあるでしょう。そのため、新しいプラグインをインストールする前には、必ずバックアップを取るようにしてください。

SiteGuard WP Pluginをインストールする

プラグインのインストール自体は難しくありません。スマートフォンアプリを追加する要領とほとんど同じです。インストール前に気を付けておくべき点と手順を紹介します。

インストールする前に

SiteGuard WP Pluginをインストールし、プラグインを有効化したとしましょう。するとSiteGuard WP Pluginはログイン用URLをただちに変更します。そのため、プラグインを有効にしたら、管理画面を閉じる前に必ず新しいログイン用URLをブックマークするかメモしてください。または、管理者宛にURL変更メールが届くためそちらを確認してもよいでしょう。新しいログイン用URLがわからなくなると、自分のサイトにログインできなくなる可能性もあるため十分注意してください。

初期状態のWordPressは、ログイン用URLがドメイン名以外すべてのWebサイトにおいて共通です。

初期状態のログイン用URL(○○は個々のドメイン名)

https://○○/wp-login.php

ドメイン名のリストがあれば、ログイン用URLまで簡単に辿り着くことができます。そのため、ログイン用URLを変更することは不正アクセスを防止する大切な一歩です。

インストール手順

  • WordPressから管理画面を開く
  • 左側のメニュー一覧から「プラグイン」を選ぶ
  • 「新規追加」を選ぶとプラグインを選択・検索できる画面が開く
  • 右上のキーワード入力欄に「SiteGuard」を入力する
  • 検索結果からSiteGuard WP Pluginを見つけ「今すぐインストール」を選択する
  • インストールが終わったら「有効化」を選択する

有効化すると、ログイン用URLが変わります。

SiteGuard WP Pluginをカスタマイズする

インストールが終わったら、プラグインの設定をカスタマイズしましょう。SiteGuard WP Pluginにはいくつか項目があるため、どの項目を変更するべきか分からないかもしれません。おすすめの設定を紹介します。

インストール完了していれば管理画面メニューに「SiteGuard」が追加されています。「SiteGuard」→「ダッシュボード」を選択して項目一覧を確認してください。

 管理画面からのアクセスを制限する

ログイン用URLと同じく、管理画面URLも個々のドメイン名以外は共通です。ただし、サイトにログイン済みの端末しか管理画面には直接アクセスできません。ログインしていない端末の場合、管理画面からログインページにリダイレクト(転送)され、ユーザー名・パスワードの入力が求められます。

管理画面アクセス制限は、ログイン済みの端末でも接続元が違う場合には、管理画面に直接アクセスすることを許可しません。またログインページにも転送せず、エラー画面を表示してブロックします。同じ端末でも経由するWi-Fiなどネットワークが異なると接続元が違うためアクセスできません。そうすることで、パソコンを持ち出すなど、第三者による端末のログイン情報を利用した接続から守ります。ただし、この機能には問題があります。ひとつは、違うネット環境に接続するたびに管理者もパスワードを再度入力する必要がある点です。もうひとつはChromeのリダイレクトキャッシュ機能により、管理画面もログインページもアクセスできなくなる可能性がある点です。ChromeのCookie(Webサイトにおける訪問者の情報を保存する機能)を削除すれば問題は解決しますが、不安な時は初期状態の「OFF」状態にしておきましょう。また、OFF状態にする場合は端末自体にロックをかけるなど工夫しましょう。管理ページからログインページの転送は、次の設定でリダイレクトを防ぐことができるので問題ありません。

ログインページのURLを初期状態から変更する

ログインページ変更は、インストール後に有効化を許可したタイミングで既に行われています。初期状態の「ON」状態にしておきましょう。自動で変更されたログイン用URLには5桁の乱数が含まれ、他者から推察できないようになっています。覚えにくい場合は任意の文字に変更することも可能ですが、特定されやすい文字には変更しないでください。

オプションで管理画面からログインページのリダイレクトを防ぐ機能があります。初期状態では「ON」にされていません。忘れずにチェックするようにしてください。

画像認証で機械的なアクセスをブロックする

画像認証は、ログインページ・ユーザー登録ページ・パスワード確認ページ・コメントページに画像認証を追加します。英数字かひらがなのゆがんだ画像が表示され、画像を見て正しく入力できなければ続行不可となる仕組みです。機械的な攻撃では画像のゆがんだ文字を判別することは難しいため、不正なアクセスをブロックできます。英数字よりひらがなを選ぶと、日本語を読めない・入力できない相手から攻撃を防ぐことができます。初期状態の「ON」状態にしておきましょう。

ログイン時のエラーメッセージを変更する

WordPressで作成したWebサイトはログインに失敗したとき、ユーザーがなにを間違ったかメッセージで知ることができます。ユーザー名・パスワード・画像認証のうち「パスワードが違います」と表示されたら、他の情報は正しいことが第三者に知られてしまうでしょう。ログイン時の詳細エラーメッセージを無効化にすれば、何を間違えたかを相手に知らせずに済みます。初期状態の「ON」状態で、エラーメッセージを使ってユーザー情報のヒントを与えないようにしましょう。

機械的なログイン攻撃をガードする

ログインロックは、同じ接続元による機械的な連続攻撃を防ぎます。同じ接続元が何度もログインに失敗する場合機械的な攻撃と判断して、その接続元によるアクセスをブロックする機能です。期間(時間)・回数・ロック時間が任意で選ぶことができます。初期状態の「ON」状態にしておきましょう。

ログインするたびにメールでお知らせ

誰かがログインするたびにメールでお知らせしてくれる機能がログインアラートです。管理者のログインだけメールで受け取るか、他のユーザーによるログインもメールで受け取るか選ぶことができます。初期状態は「ON」で「管理者のみ」です。自分のログインもメールで通知されます。管理者が複数いる場合や、サイトのログイン頻度が多い場合はメールを確認しきれなくなるかもしれません。サイトごとに「ON」と「OFF」を使い分ければよいでしょう。

ユーザー名とパスワードのリスト攻撃を防ぐ

ユーザー名とパスワードの組み合わせが流出した場合に、リスト攻撃を行われる可能性があります。リスト攻撃とは、攻撃者がログイン用URLを機械的に抽出し、総当たりで手持ちリストのユーザー名とパスワードを入力することです。このような機械的な攻撃に対し、フェールワンスという、ログイン情報が正しい組み合わせであっても一度だけ失敗する機能を用います。機械的な攻撃であれば一度ブロックすればアクセスを回避できる可能性は高まります。ただし、自分のアクセスにも適用されるため煩わしいと感じるかもしれません。1回目のエラー後、5秒の間隔をおいて、その後60秒以内に再度トライすればログインできます。5秒の間隔をおけば同じ組み合わせによって連続攻撃を仕掛けてくる相手への防御になります。ユーザー名やパスワードを使いまわしていないなら初期状態の「OFF」状態でもよいでしょう。

XML-RPCからの情報流出を防ぐ

XML-RPCはWebサイトと他のシステムが通信するために用意された仕様です。WordPressの初期から搭載されている機能ですが、現在はセキュリティ上の弱さが指摘され、他の仕組みで通信を行っています。そのため、最新のWordPressに更新していれば不要な機能です。XML-RPCを有効にしていると、不正アクセスによりユーザー名やパスワードが流出する可能性もあります。XMLRPC防御は初期状態の「ON」状態でよいでしょう。ほかに「ピンバック無効化」と「XMLRPC無効化」の2つ選択肢があります。他のプラグインでXML-RPCを使用していなければ「XMLRPC無効化」を、使用しているなら「ピンバック無効化」を選択しましょう。

ユーザー名が見えるのを防ぐ

WordPressはユーザー名が第三者でも簡単に分かる仕様になっています。この機能を使ってユーザー名を調べればパスワード解析すれば不正アクセスできます。初期状態は「OFF」ですが「ON」にした方がよいでしょう。

オプションで選ぶことができるREST APIとは、投稿などデータを外部から取得できる機能です。この機能を利用してユーザー名を不正に取得されるケースもあります。無効化のオプションもチェックを入れた方がよいでしょう。REST APIを使用するプラグインがあれば除外するプラグインのリストに入れてください。

WAFの誤認を回避する

使用しているWebサーバーがWAF(SiteGuard Server Edition)を採用している場合のみ関係する設定です。WAFはウェブアプリを悪質な攻撃から守るセキュリティ機能です。ただし、WAFは正常なアクセスをエラーと誤認することがあります。誤認が起こる状況を登録しエラーが起こらないようにする機能がWAFのチューニングサポートです。初期状態は「OFF」状態になっています。エラーが発生していなければ「OFF」状態でよい機能です。

まとめ

Webサイトを悪質な攻撃から守る、SiteGuard WP Pluginのインストールと設定について解説しました。設定する項目数が多く、少し難しく感じたかもしれません。それでも、記事の説明を読んで初期状態設定を少し変更すれば、最適な状態にできるでしょう。安全なWebサイト運営のためにも、ぜひインストールを検討してはいかがでしょうか。