Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
こんにちは!
今回は、WordPress のセキュリティについて書きました。
WordPress の認証を何度か失敗すると、認証を制御するようにしたいので調べたり試してみました。
概要
ログイン画面へのアクセスは、自分のモバイルから、家の PC からもアクセスしています。
ログイン制限として、特定の IP からのみアクセスできる事もやろうと思えばできますが、私は特定の IP のみではないようにしたいのです。
不特定の IP からログイン画面にアクセスできるので、つまり誰でも認証を何度も試みることが可能になります。
影響
認証失敗の制限をかけないと悪意のあるユーザーからブルートフォースアタックで攻撃され、結果認証ができてしまうと Web サイトが改ざんされてしまうような被害を受けます。
事前作業
特に WordPress のバックアップの必要などは無いかと思いますが、認証に失敗したら、WordPress にどういう動作というか制限をさせたいのかを考えて、それに合ったプラグインを決めると良いかと思います。
対応
WordPress のプラグイン を使います。
Login Lockdown を使う場合
このプラグインは設定した時間内に、パスワードを指定した回数以上間違えると、「アクセス元の IP アドレスは指定した時間の間に認証ができなくなる」という事が可能です。
設定方法
① プラグインを検索します。プラグイン名は Login Lockdown です。
② インストールしたら有効化します。
③ プラグインの設定画面へ行きます。
④ 設定を変更します。
機能 | 説明 |
---|---|
Max Login Retries | ログインを試みる回数の上限 |
Retry Time Period Restriction (minutes) | 何分以内に Max Login Retries で設定した値の回数認証に失敗するとロックアウトするか |
Lockout Length (minutes) | ロックアウトした場合、次のログインできるまでの時間(分単位) |
Lockout Invalid Usernames? | 無効なユーザー名のログイン拒否するか。 |
Mask Login Errors? | ログインが失敗した場合、通常エラーメッセージを画面に表示させるが、それを非表示にするか。 |
Show Credit Link? | プラグインのリンクを表示するか |
確認方法
① まず、プラグイン無しの状態です。admin というユーザーが存在し、わざとパスワードを間違えて認証を試みました結果です。
ここで問題なのは、ユーザー名 admin のパスワードが間違っていると表示されているので、admin というユーザーが存在する事がばれてしまっております。
② それでは、次にプラグインをインストールして有効化した直後に認証失敗させた画面です。ロックアウトの機能は動作しておりますが、このエラー表示は英語ですが内容は変わっておりません。
admin は記載はありませんが、パスワードが間違っているという表示がある以上は admin ユーザーが存在する事がばれてしまっております。
また、Login Lockdown のクレジット情報が表示されておりますね。これは不要です。
③ プラグインの設定後の認証失敗した画面です。この認証エラーの表示であれば、ユーザーが存在するかどうかわかりませんよね。また、プラグインのクレジットは不要なので消しました。
④ 最後に実際に ロックアウトさせた後に プラグインの画面に [Activity] のログに表示されるか確認しました。ちゃんとロックアウトされた IP アドレスが表示されておりますね。これで OK です。
IP アドレスのチェックボックスにチェックを入れて、[Release Selected] をクリックすればロックアウトを開放できます。
以上です。いかがでしょうか。
今回プラグインを使ってみて分かったのは、悪意あるユーザーからの認証成功を防止する為に、ロックアウトの機能は必要だと思いました。
他のプラグインの機能も試してみたいと思います。
では最後までお読みいただきありがとうございました!