EJP 株式会社

WordPressサイトをLogin Security Solutionプラグインでセキュリティ強化する!

By: The U.S. Army

こんにちは。
「 WordPressのadmin攻撃を受けました。。 」にて、デフォルト状態での運用は危険だということを実感しました。
今回は、以下のプラグインを使用して、ログインに関するセキュリティ改善を実施します。

Login Security Solutionをインストール

WordPressのプラグインインストール画面から検索して、Login Security Solutionをインストールします。
このプラグインはかなり細かな設定が可能なようです。
当方は、マルチサイト環境ですが、インストールできているようです。

インストールが成功すると、以下の様にパスワードの変更を求めるメッセージが出力されます。

このメッセージは要するに、本プラグインを有効化してから、パスワードが変更されていない為、変更してくださいという内容です。また、本プラグインはブルートフォース攻撃に対してサイトを保護すると謳っています。

ブルートフォース攻撃とは

ブルートフォースとは「強引に」という様な意味になり、パスワードの入力制限がかかるまで考えられるパターンをツールなどを使用して、パスワードを解読する攻撃です。
WordPressのデフォルトでは、パスワードは何回失敗してもログイン不能にはならないため、ブルートフォース攻撃の格好の餌食となってしまいます。

それでは、早速「Change All Passwords」リンクからパスワードを変更しておきます。
リンクをクリックすると、以下の様な画面になります。

パスワードを変更する場合は、「Confirm…」のチェックボックスをチェックし、「Require All Passwords Be Changed」ボタンを押下します。

メッセージの内容からすると、次回ログイン時に変更されるようです。
ログアウト前に各種設定をすませておきます。

各種設定を行う。

それでは設定を行っていきます。

Login Failure Policies

これは読んで時のごとくログイン失敗時のポリシー設定の項目になっています。なお、このプラグインは過去のログインデータを保持しているようで、そのデータに基づいて、チェックしていくようです。

Password Policies

パスワードそのもののポリシーになります。

Miscellaneous Policies

その他のポリシー設定になります。

運用する

これで一通りの設定が終わりました。
それでは、一度ログアウトしてみます。。ドキドキ。。
ログインしてみます。。
ん。。普通に以前のパスワードでログインできました。。
「Change All Passwords」は機能していないようです。。。
ちょっと、不安ですが、その他の機能を確認してみます。

わざとログイン失敗してみました。
すると、以降のログインするまでに表示に時間がかかるようになりました。
ちゃんと「Delay Tier 2」が機能しているようです。

さらに、「Breach Notification」で設定した回数以上失敗してみました。
すると、管理者宛にアクセス元と、ログインしようとしているユーザー名、パスワードと共にメールが送られてきました。
また、私は「Breach Email Confirm」も「Breach Notification」と同じ回数を設定していたため、そのまま、該当ユーザー名のパスワードが無効となりました。

ログイン画面の「パスワードをお忘れですか ?」からパスワードを初期化しないとログインできない様になりました。

ちゃんと機能しているようです。

その後、パスワードの再設定をする際も、「Length」で設定した文字数以上のパスワードでなければ許容され無かったので、ちゃんと機能しているようです。

これで、セキュリティ対策ができましたが、他にも脆弱性は存在します。
今後も模索しながら対応する必要があると思いました。

あわせて読む

新着記事

ブログを購読