セキュリティー

WP(WordPress)

「Crazy Bone」で不正ログインの監視とIPアドレスの接続制限

WordPress プラグイン「Crazy Bone」で不正なログイン履歴を監視

先日、WPのログイン履歴を監視しようと、

Crazy Bone」というプラグインを入れてみました。

不正にログインしようとした形跡がないかをチェックする為です。

 

インストールすると管理画面「ユーザー」メニューの中に「ログイン履歴」という項目が増えているので、

そこからログイン履歴を確認出来ます。

結果ですが、

1時間もしない内に、身に覚えのない怪しいログイン履歴が追加されていました。

CrazyBone

Netherlands?オランダから?

 

いきなりこんなアタックを仕掛けられると思わなかったので、ちょっとびっくりです。

セキュリティに詳しい知り合いにも相談してみたのですが、

サイトの大小にかかわらず、実はどのサイトでも無作為に攻撃を受けている可能性はあるらしいです。

気付いていないだけで、

このブログも頻繁にブルートフォースアタック(総当たり攻撃)を受けていたのかもしれないですね!?

 

これは今後もこまめに監視を続けた方が良さそうですね!!

※追記
この後1ヶ月ほど様子を見たのですが、色々な国からのログイン履歴が数万件溜まりました。
これは、ちょっと怖いですね。。。

その対処方法については、以下に記載しています。
↓↓↓

不正IPアドレスからの接続を制限

「Crazy Bone」を入れてからしばらく経つのですが、上記にも記載しているように、良く分からないアクセス履歴が大量に残っていました

↓こんな感じです。

Crazy Boneのアクセス履歴

 

取り敢えず、

何かあると恐いので、

.htaccessに以下を記述して、

アクセス履歴が残っていたIPアドレスの接続制限を設定しておきました!!

order allow,deny
allow from all
deny from xxx.xxx.xx.xxx

因みに、

不正IPアドレスからのアクセス拒否設定に関しては、

「WP-Ban」というプラグインでも対策を出来きます。

「Crazy Bone」と「WP-Ban」はセットで入れておいた方がいいですね。

[ WP-Banを使って不正ログイン対策 ]

Crazy Bone DBから不正IPアドレスをグループ化して一括取得

それと、

「Crazy Bone」では不正なIPアドレスのみをグループ化して取り出すことができません。

1つのIPアドレスからの攻撃であればコピペすれば問題ないのですが、

複数のIPアドレスを使用して攻撃された場合には結構な手間になります。

 

そのような場合には、

直接、データベースに接続して一括で不正なIPアドレスを取り出すということも可能です。

 

手順としては、

・まず、MySQLサーバに接続
※phpMyAdminをインストールされている場合には、そちらの画面からアクセスして下さい。

・SQLを実行して、「user_login_log」テーブルからデータを取り出す。
※「Crazy Bone」をインストールすると「user_login_log」というテーブルが作成され、
 ログイン履歴はそこに保存されます。

となります。

 

SQLに関しては、

where句に「activity_status='login_error'」という条件を設定すればいいのですが、

時々、正規の投稿者がユーザー名を間違えてログインしようとしてしまうこともあると思います。

 

そのIPアドレスまでアクセス拒否にしてしまうとまずいので、

「country_name」のカラムを確認して「日本(Japan)」からのアクセスのみ除外しておいてもいいかと思います。

国内からアクセスがあった不正IPアドレスを取り出せなくなりますが、誤ったものまで制限するよりはマシです。

 

まとめると、

私の場合には以下のようなSQLを実行してIPアドレスを取り出します。

select activity_IP from プレフィクス_user_login_log
where (activity_status='login_error') and (country_name<>'Japan') group by activity_IP

※「プレフィクス」の部分に関しては、各自設定されたものに置き換えてください。

関連記事

  1. WordPress(WP)

    WP(WordPress)

    選択したタクソノミーをカスタム投稿タイプの記事一覧に表示

    前回、「選択選択中のタクソノミーを管理画面の投稿一覧に表示」という記事…

  2. WordPress(WP)

    WP(WordPress)

    プラグイン「WP Basic Auth」で公開ページにベーシック認証を設定

    個人のメモ書き用にインストールしているWordPressがあるのですが…

  3. Multi Device Switcher
  4. WordPress(WP)

    WP(WordPress)

    【WP】ダブルクォーテーション(")が全角に変換されるのを防止

    WordPress 半角の「"」や「'」が、全角に変換されてし…

  5. WordPress(WP)

    WP(WordPress)

    PHP5.3.9からは「max_input_vars=1000」に注意を!!

    カスタムフィールドを大量に使用する必要があるWordPress案件に遭…

  6. WordPress(WP)

    WP(WordPress)

    WPのプラグイン「iPanorama 360」で360°パノラマ写真を公開

    360°パノラマ写真(全天球画像)の埋め込みを行えるWordPress…

最近の記事

  1. JavaScript
  2. バージョンアップ
  3. JavaScript
  4. セキュリティー
  5. JavaScript
PAGE TOP