ブログ運営に大事なことは良質な記事を書くだけではありません。
大事なブログをハッカーやウイルスから日々守り続けなければなりません。
もしセキュリティを突破されて乗っ取られてしまえば、今まで培った記事を削除されたり、改ざんされるかもしれません。バックアップから復旧できるという理由で削除だけならまだしも、登録している個人情報が流出する恐れもあります。「こんなブログにハッカーは来ないだろう。」そんな思い込みさえ隙となり、標的となることも少なくありません。
ハッキングの方法には、DoS攻撃やゼロデイ攻撃、SQLインジェクション、バックドアなど、いくつもの種類があります。今回はその中の一つ「ブルートフォースアタック」、別称「総当たり攻撃」に着目し、代表的な対策プラグインの『Loginizer』の使い方を解説します。
WordPress プラグインのインストール・削除・更新
ブルートフォースアタックについて
解説の前にブルートフォースアタックについて確認します。
ブルートフォースアタックは、別称で「総当たり攻撃」と呼ばれています。
その名から連想できるようにパスワードを総当たりし、セキュリティを突破します。
例えば4桁の数字パスワードが設定されていたら、0000から9999までの1万パターン全てを試せば必ず解除することができます。そのため、最近のセキュリティポリシーでは英数大文字小文字、特殊文字(記号)、何文字以上といった制限やパスワード入力の試行回数を制限することで対策を行っています。
Loginizerの設定方法
Loginizerの設定は、管理画面の左メニューに追加された「Loginizer Security」の中の「Brute Force」から行います。これをクリックし、設定画面に移ります。
設定画面はあるものの、実のところ、プラグインを有効化した時点でデフォルトのブルートフォースアタックの対策は行われています。デフォルトに設定を加える場合に操作を行います。
ここでデフォルトで有効化されているから安心するのではなく、デフォルトの内容も確認し、どのような対策が行われているかを確認するようにしましょう。もし古いバージョンのまま使用したり、脆弱性があるプラグインであれば自らハッキングを招くことになります。
Brute Force Settings
このプラグインのメイン設定となるのは「Brute Force Settings」です。
各設定内容は次の通りです。
Max Retries | 最大試行回数 |
Lockout Time | 最大試行回数後のログイン操作禁止時間 |
Max Lockouts | 最大ロック回数 |
Extend Lockout | 最大ロック回数後のログイン操作禁止時間 |
Reset Retries | 再試行を可能とするまでの時間 |
Email Notification | メール通知条件 |
Blacklist IP
ブラックリストに追加したいIPアドレスを設定します。
Start IP | 登録したいIPアドレスを入力 |
End IP(Optional) | 登録したいIPアドレスの範囲を入力 |
アクセス拒否設定の例
「10.20.30.1」からのアクセスだけを拒否したい場合
「Start IP」に「10.20.30.1」と入力し、「End IP(Optional)」は空白にします。
「10.20.30.1~10.20.30.255」からのアクセスを拒否したい場合
「Start IP」に「10.20.30.1」と入力し、「End IP(Optional)」に「10.20.30.255」と入力。
アクセス拒否画面の確認
ブラックリストに追加したIPアドレスでアクセスを行うと次のように表示されます。
「Your IP has been blacklisted」というメッセージの変更方法は後述します。
Whitelist IP
ブラックリストとは逆に、ホワイトリストに追加したいIPアドレスを設定します。
Start IP | 登録したいIPアドレスを入力 |
End IP(Optional) | 登録したいIPアドレスの範囲を入力 |
設定方法はブラックリストと同じなので、「アクセス拒否設定の例」を参考にしてください。
Error Messages
ここではログイン画面のエラーメッセージを表示します。
Failed Login Attempt | アクセス失敗時のメッセージ |
Blacklisted IP | ブラックリストに追加したIPアドレスでアクセスした人へのメッセージ |
デフォルトのメッセージは右側の記載通りです。
この後解説しますが、アクセスエラーにおけるIPアドレスや試行回数、試行時間などは監視することができます。それを利用して、監視しているぞという重圧的なメッセージを入力するのも良いかもしれません。
Failed Login Attempts Logs(Past 24 hours)
これまでの設定内容を基に、アクセスに失敗した形跡は全て最上部の「Failed Login Attempts Logs(Past 24 hours」に表示されます。
IP | アクセスに失敗した接続元IPアドレス |
Attempted Username | アクセス時に使用したユーザー名またはメールアドレス |
Last Failed Attempt | 年月日の形式で最終ログイン日時を表示 |
Failed Attempts Count | アクセスに失敗した回数 |
Lockouts Count | アクセスに失敗してロックされた回数 |
URL Attacked | アクセス元URL(※WordPressなら基本URL/wp-login.php) |
アクセス元IPアドレスやユーザー名に覚えがなければ、不正アクセスと判断することができます。
不正アクセスを確認したら、即座に「IP」に記述されたアドレスを「Blacklist IP」に登録するようにしましょう。
豆知識 BlacklistとWhitelistの同時登録
BlacklistとWhitelistに登録をすると、どうなるかという検証です。
結論としては「同時に登録ができる」そして「Whitelistが優先される」という結果になりました。
このことから次のような利用も可能になります。
Blacklistに「10.20.30.1~10.20.30.255」を追加
10.20.30.1~10.20.30.255に所属するIPアドレスはアクセスが不可能になります。
Whitelistに「10.20.30.1」だけを追加
10.20.30.1はアクセスが可能となります。
Blacklistの10.20.30.2~10.20.30.255のアクセスは不可能のままとなります。
限定的なアクセスの許可設定を行いたい場合はこの方法を利用します。
まとめ
ブログやサイトが大きくなればなるほど、不正アクセスは懸念され、セキュリティ対策は必要なものとなります。Loginizerプラグインだけで全てのハッキングやウイルスを防ぐことはできませんが、代表的なハッキングであるブルートフォースアタックの対策を簡単に行うことができるようになります。
極端な話、豆知識で解説した限定的なアクセス方法を利用することで、指定したIPアドレス以外の全てのログインを拒否することもできるようにもなります。
最初にも述べた通り、運営に大事なことは良質な記事を書くだけではありません。
自分のブログやサイトは自分の力で守るようにしましょう。
コメントを残す