最近のWordPressではブルートフォースアタック(総当り攻撃)などの被害が相次いでいる。
ログインページにボットでアクセスしてサーバーに負荷を増幅させたり、ログインされて不正にページを改ざんされてしまったりと被害が絶たないのだ。
これらを対策するには「知識」が必要になり、初心者では難しすぎて手が届かない面もあった。
しかし、初心者の方でも簡単に設定することができるセキュリティー対策プラグインの「SiteGuard WP Plugin」が登場し、セキュリティー面の強化が素人でもできるようになったのである。
もくじ
SiteGuard WP Pluginの設定方法
SiteGuard WP Pluginでの設定項目は、ダッシュボードの設定を含めて11項目となっている。
- ダッシューボードの設定
- 管理ページアクセス制限
- ログインページ変更
- 画像認証
- ログイン詳細エラーメッセージの無効化
- ログインロック
- ログインアラート
- フェールワンス
- ピンバック無効化
- 更新通知
- WAFチューニングサポート
それぞれの項目について順序良く解説していくことにする。
ダッシュボードの設定
WordPressの管理画面より「SiteGuard」の「ダッシュボード」を選択すると以下のようなセキュリティーのチェック画面に移行する。
ダッシュボードでは「設定項目のON/OFF」が一目で確認できるようになっている。
さらには「ログイン履歴」から不正にアクセスしてきた「ログイン名」と「IPアドレス」が表示される。
早速、項目の設定をしていくことにしよう。
管理ページアクセス制限
この設定は必ず「ON」に設定しておこう。
この機能はログインされていないユーザーが「wp-admin」より先のディレクトリに不正にアクセスを行った場合の対処方法として有効だ。
例えば、
- http://サイトURL/wp-admin/
- http://サイトURL/wp-admin/○○○
- http://サイトURL/wp-admin/○○○/△△△
などのURLに不正にアクセスされた場合には「404ページ」で返してくれる。
ファイルを攻撃、ファイルに不正アクセスされる場合にはアクセスできなようにするのが一番と言える。
除外パスにファイルのパスを設定することで、アクセスを許可するフォルダを指定することができる。
この機能は変更はしなくても良い。
変更したい方は以下のように設定すると除外パスへの登録が可能となる。
例えば、
- /wp-admin/○○○
上記のパスを除外するとなると「○○○」を除外パスの欄に記入すると良い。
ログインページの変更
この設定も必ず「ON」に設定しておこう。
この項目を設定することで、WordPressのログインページへのアクセスが以下のように変更となる。
設定前(before):
- http://サイトURL/wp-login.php
設定後(After):
- http://サイトURL/login_○○○○○
上記の「login_○○○○○」には乱数が設定されているが、好みに設定することができる。
この設定は必ずメモしておくことが大切だ。
次からの貴方のログインページヘのアクセスは「設定後(After)のURL」となることを理解しておこう。
使用頻度の高いログインページの「wp-login.php」を変更することで、ボットによる特定のログインページを狙ったアクセスを回避することができる。
画像認証
この設定を「ON」にすることでボットによる直接的なログインを阻止することが出来る。
従来のWordPressのセキュリティー機能に加えて、新たに認証入力を追加することができる。
ログインページの項目を「ひらがな」に設定した場合は、
このように「ひらがな」の認証入力が追加される。
コメントページにも「ひらがな」を設定することで、ボットによるスパムコメントの防止をWordPressの標準機能に重ねて強化することができる。
ログインページ、コメントページ、パスワード確認ページ、ユーザー登録ページの4つに「ひらがな」を設定しておくことを推奨する。
ログイン詳細エラーメッセージの無効化
この設定を「ON」にすることでログインに失敗した時に表示されるエラーメッセージが全て同じ内容になる。
設定前(before):
- ユーザー名を間違えた場合<エラー:無効なユーザー名です。>
- パスワードを間違えた場合<エラー:ユーザー名○○○のパスワードが間違っています。>
- 画像認証を間違えた場合<エラー:画像認証が間違っています。>
設定後(After):
- ユーザー名を間違えた場合<エラー: 入力内容を確認の上、もう一度送信してください。>
- パスワードを間違えた場合<エラー: 入力内容を確認の上、もう一度送信してください。>
- 画像認証を間違えた場合<エラー: 入力内容を確認の上、もう一度送信してください。>
不正なアクセスを試みる輩が「ユーザー名」「パスワード」「画像認証」のどれかで失敗した場合に「どの認証で失敗したのか」を知らせない、いわゆるカモフラージュ的なセキュリティーを施すことが出来る。
ログインロック
この設定は必ず「ON」にしておこう。
ブルートフォース攻撃では、ログインページのアドレスに1度に攻撃をしてサーバーをパンクさせることも目的としている為、ログインの回数を制限することは非常に有効だと言える。
基本的にはデフォルトのままで問題は無い。
デフォルトの設定でも不正ログインが止まない場合は以下の設定を試して欲しい。
- 期間は「30秒」を設定する
- 回数は「3回」に設定する
- ロック時間は「5分」に設定する
上記の3つに設定することで強いセキュリティーを保つことができる。
はじめはデフォルトの設定にし、ダッシュボードのログイン履歴と見比べながら、不正ログインが止まない状況ならば、強いセキュリティー(上記の設定)に変更するのも良いだろう。
ログインアラート
この設定を「ON」にするとログインした際には必ずメールで通知が来るようになる。
不正にログインされた場合の注意勧告として捉えてほしい。
しかし、ログインされたら既に手遅れの場合も多く、乗っ取られ改竄されている可能性も否定できない。
特に変更する必要性は感じられないがカスタマイズしたい人向けに変数が公開されている。
- サイト名:%SITENAME%
- ユーザ名:%USERNAME%
- ログイン日付:%DATE%
- ログイン時刻:%TIME%
ログインアラート|SiteGuard WP Plugin
フェールワンス
この機能は「ON/OFF」のどちらかを設定して欲しい(レポ部では「ON」を設定)
ONにすると正しいログイン情報を入力しても1回目だけログインが失敗になる。
5秒以降、60秒以内に再度ログイン情報を入力するとログインが成功となる。
これは「アカウントリスト攻撃」「ブルートフォース攻撃」の両方を防ぐための機能として使用できる。
しかし、管理者がログインした際にも1回目のログインは必ず失敗してしまうので、他者からの不正なアクセス数には強いが、管理者には面倒くさいのがデメリットだろうか。
リスト攻撃はリスト化したIDやパスワードで前もって仕入れて不正にアクセスしている場合が多いので「パスワードを頻繁に変更すること」がリスト攻撃の最大の対策と言えることは間違いない。
ピンバック無効化
WordPressのピンバック機能を無効化することで「DDoS攻撃」を未然に防ぐことができる。
セキュリティ企業のSucuriが2014年3月10日に公開したブログによると、約16万2000もの正規のサイトが「DDoS攻撃」の踏み台に悪用されているということだ。
この機能もできれば「ON」にしておきたい。
しかし、ピンバックの機能が使用できないことも頭に入れておこう。
ピンバックとは「記事内に相手に繋がるリンクを張った場合に相手側に通知する機能」で、相手側がピンバックを承認すると自分のサイトの記事リンクが作成される仕組みとなっている。
トラックバックの記事バージョンと考えるとよい。
この機能はあってないもので相手側がピンバックの機能を無効化していればピンバックとして意味をなさいからだ。
迷っている方は「ON」に設定することを推奨する。
DDoS攻撃(ディードスこうげき、ディーディーオーエスこうげき、Distributed Denial of Service attack)とは、踏み台と呼ばれる多数のコンピュータが、標的とされたサーバなどに対して攻撃を行うことである。 別名として、協調分散型DoS攻撃、分散型サービス妨害攻撃などがある。
DDoS攻撃|wikipedia
更新通知
この設定も「ON/OFF」のどちらかを設定してほしい(レポ部では「ON」を設定)
ONに設定すると「WordPressの更新」「プラグインの更新」「テーマの更新」が必要となった場合に、メールで通知してくれる。
セキュリティーの基本はWordPressを最新のバージョンにしておくことだ。
しかし、プラグインなどを頻繁に更新すると新しいバージョンで起こる不具合までもインストールしてしまう可能性も否定できない。
悩んでいる方は「ON」を設定することを推奨する。
WAFチューニングサポート
この設定は「OFF」に設定しよう。
WAF(SiteGuard Lite)がインストールされている場合に「エラー」を回避するためのルールを設定する機能だ。
WAFをインストールしていない場合は「OFF」を設定し、導入している場合には「ON」を設定してほしい。
WAF(SiteGuard Lite)は、Webサーバーに対する外部からの攻撃を防ぐ機能をもっているが、WordPressの機能やプラグインの機能によっては互換性によりWAFが誤検知をしてしまう可能性があるのだ。
この設定を「ON」にして除外ルールを作成することで誤検知を防ぎつつ、WAFを使用することができる。
まとめ
このプラグインはブルートフォース攻撃、リスト攻撃、DDoS攻撃などの迷惑行為を未然に防ぐツールとしては素晴らしい機能性を持っている。
しかし、結局の所、大規模サイトになってくるとブルートフォース攻撃、DDoS攻撃、リスト攻撃等のクラッキングは、ツールを使っても止まないことが多く、プラグインだけでは解決しない場合も珍しくはない。
万が一、侵入されてしまった時の為に「ファイルのバックアップ」と「データベースのバックアップ」を取っておくことが1番のセキュリティー対策(保険)と言えるだろう。
WordPressでデーターベース、ファイルのバックアップを定期的に取る「BackUpWordPress」という無料プラグインが人気だ。
簡単にバックアップを取れることで人気のプラグインでもある。
詳しくは以下のリンクを参考にしてほしい。