今年の春先くらいから、各サーバー会社より同一内容のメールがよく届きます。
そうです。「あなたのwordpressが狙われている」といったセキュリティ注意を呼びかけるメールです。
WordPressを狙った大規模なブルートフォース攻撃が世界中で話題になっているようです。
もちろん一通り目を通しておりましたので、そのようなスパム行為が横行しているのは認識しておりました。
しかし、「私は大丈夫だろう♪」とう根拠のない楽観的思考から、私は見て見ぬふりをしておりました。(最低です)
そんな時にTCDテーマでお馴染み「デザインプラスの中田さん」が発行されているメルマガで「あなたのWordPressも狙われている」というメルマガが届きました。このメールでは3つのプラグインが紹介されており、以下のような内容が記載されておりました。
このプラグインには、
WordPressのログイン履歴を記録する機能があります。通常のログイン以外の
ログインエラー(不正ログイン攻撃含む)の回数もわかります。で、早速、計測結果を見てましたが。。。
たった1日にも関わらず、
様々な国からログインを試みた跡がありました。もちろんいずれも失敗に終わってます。
が、安心もしてられません。だって、“常に危険に晒されている”ことが
よくわかったからです。パスワードは強固にしておくに越したことはありません。
それだけでも安全性は相当アップできるはずです。
(もちろんユーザー名を「admin」にするのは厳禁)「ウェブマーケティングを学ぶためのメールマガジン」一部抜粋
あらためて「本当にwordpressは狙われているんだな」と再確認。
これはいい機会だと思い、紹介されていたプラグインを全て導入してみました。
その手順を記録しておきますので、wordpressを活用されている方は、ぜひ参考にしてみてください。
目次
wordpressログインID「admin」の変更方法
まずは[ ログインID ]の変更です。根本的なことですが、[admin]をログインIDに設定しているだけで危険度は倍増します。
この[ ブルートフォース攻撃 ]もログインIDを[ admin ]に設定しているサイトが対象に行われています。
逆に言えば、ログインIDを[ admin ]から変更するだけで、セキュリティ強化されるとも言い換えられますので、万が一[ admin ]に設定されている方がいましたら、今すぐ変更をオススメいたします。
まず、wordpress管理画面のサイドメニューから「ユーザー」を選択してください。
ご覧いただいたように「ユーザー名」は変更できません。
そこで、まず新規ユーザーを管理者権限付で追加します。
新規ユーザーを追加したら一度ログアウトし、先ほど新たに追加した新しいユーザーIDでログインし直します。
すると「admin」ユーザーを削除できるようになるはずです。
アカウント削除時に新しく作成したアカウントに過去記事の権限を移行するの間違わないように気を付けてください。
もし、「すべての記事を削除する」を選択してしまうと、過去の記事が全部削除されてしまいます。
以上で「ログインID」の変更が完了です。次回ログイン時から新しいIDでログインしてください。
Crazy Bone(狂骨)プラグインのインストール
次に「Crazy Bone(狂骨)」というプラグインをインストールしてみたいと思います。
このプラグインを追加するとこで、wordpressのログイン履歴を詳細に確認する事ができます。
では早速。まずは「新しいプラグインの検索」で「Crazy Bone」と検索してください。
ファイルをダウンロードされる方はコチラから。
インストールしたら、有効化してください。
ちなみに私がダウンロードした時点ではバージョン0.4.2でした。
有効化に成功すると、サイドメニューのユーザー部分に「ログイン履歴」というメニューが追加されます。
こちらの画面では、「ログイン日時」「ステータス」「エージェント」「IPアドレス」などが時系列で確認できます。
ユーザーエージェントでは「windows8」が「windows NT」と表記されておりますが、ご愛嬌。
ログイン・ログアウト・ログインエラーの項目でソートもできるので、監視するには秀逸のプラグインだと思います。
Login LockDownプラグインのインストール
このプラグインはログイン制限によるクラッキング防止プラグインです。
銀行やクレジットカードのシステムで良く見かける「●●回間違えると制限がかかる」といった事が実装できるプラグインです。
早速インストールしてみましょう。ちなみにダウンロードはコチラから。
ダウンロードしたら、プラグインを有効化してください。
有効化に成功したらメニューの「設定」から「Login LockDown」を選択し、設定内容をご確認ください。
このデフォルト設定では、「5分以内に3回間違えたら60分間このユーザーはログインできなくなる」という設定です。
この間隔等はお好みで設定してみてください。
・Lockout Invalid Usernames
パスワードだけで無く、ユーザー名を間違えた時も「間違い」としてカウントするかどうかです。心配な方はYESにしたほうがセキュリティレベルは高くなります。
・Mask Login Errors
ログインエラー時のメッセージについてです。
Noの設定時にパスワードのみ間違えたときは「パスワードが違います」と表示されます。つまり、IDは合っているという事がバレてしまう訳です。設定を「Yes」にした場合は「ユーザー名・パスワードが違います」と表示されますので、どちらが間違っているか分かりません。つまり、当然「Yes」の方がセキュリティレベルが高いという事になります。
Spirits-and-Goblinsプラグインのインストール
最後に「Spirits-and-Goblins」のご紹介です。このプラグインは「ワンタイムパスワード」と言って、やはり銀行などで採用されているセキュリティ効果の高い対策です。
ログイン時にID・パスワードを入力すると、毎回変わる「ランダム数値」がメールで届きます。その届いた「ワンタイムパスワード」を入力する事で、はじめてログインできるようになります。
では早速インストールしてみましょう。ファイルダウンロードはコチラから。
検索・インストールしたら「プラグインの有効化」してください。
有効化に成功するとメニューの設定部分に「Spirits and Goblins (魍魎)」が追加されます。
設定画面を確認すると、「ワンタイムパスワードの長さ」や「ワンタイムパスワードの有効期間」を変更するとことができます。
配信先を「メール」に設定しておくと、wordpressの管理者登録メールアドレスにワンタイムパスワードが届きます。
Twilio に登録する事で、ショートメール送信もできるようですが、私はテストしておりませんので興味がある方は試してみてください。設定が完了すると、ログイン画面がこのように変わります。
「Login form protected by Login LockDown.」が追加されました。
実際にID&パスワードを入力すると以下のような画面に遷移します。
メールボックスを確認すると、ワンタイムパスワードが届いておりますので、そのパスワードを入力するとログインできます。
正直かなり手間が増えるため、私はこの記事を書いた後、このプラグインは外しました。。。
しかし、企業サイトやセキュリティ重視のサイトであれば、かなり強固なセキュリティとなりますので、オススメです。
以上4つの手順がセキュリティ強化のための手順でした。
さらに気になる方は「管理画面をSSLにする」「管理画面にIP制限をかける」「exec-PHPプラグインを使わない」「WordPressのバージョンを常に最新にする」「.htaccessでIPブロック」などなど。
言い出したらキリがありませんが、心配な方は色々調べて対策してみてください。
ちなみにデザインプラスさんが運営しているプラグイン紹介サイト「WPぷらコレ」では、今回紹介したプラグイン以外のセキュリティ対策プラグインも紹介されているようです。是非、参考にしてみてください。
余談ですが、「セキュリティ対策をしなくても、自分は大丈夫」という心理は「正常化の偏見」と呼ぶらしいです。
人は「自分にとって都合の悪い情報を無視したり、過小評価したりしてしまう」特性があり、非常に危険な考え方です。
例えば非常ベルが鳴っても「どうせ誤作動だろ」と根拠なしに判断します。
まさに私はこのタイプなんですが、このような人が大多数いるため「ブルートフォース攻撃」のようなスパム行為が後を絶たないのだと思います。
人は「きっかけ」があれば「行動」しやすい傾向もありますので、私のように「自分は大丈夫だろう♪」と楽観視されている方がいましたら、是非この記事を機会に「最低限のセキュリティ対策」だけはやっておくとことを心よりオススメいたします。
シェアクリックをお願いします。
FacebookでシェアするTwitterでつぶやくはてなブックマーク!
Pingback: WordPressのセキュリティを見直そう【ロリポップ大規模攻撃から4ヶ月】