WordPressログイン画面へのアクセス情報をProwlアプリに通知するプラグインです。wp-login.phpにアクセスされた時点でアクセスユーザのIPアドレス等の情報を直ちにiPhoneへ通知します。
プッシュ通知を受信したロック画面のサンプルです。右側のようにBrute Forceのadmin攻撃は連続して行われるようです。
WP Login Alert Notifyプラグインは以下の時点で通知します。
- ログイン画面にアクセスがあった時
- ログイン画面からログインしようとした時
アクセスユーザについて以下の情報を通知します。
- ログインしようとしたID
- アクセスがあった日時
- IPアドレス
- ホスト名
- ブラウザ
- リファラ
Prowlアプリで開くと、WPログイン画面からユーザID”admin”でログインしようとした情報が次のように表示されます。
なお、自分のアクセスも同様に通知されますので、共同利用の場合はIDで識別可能なはずですし、単独利用であれば自分のアクセス以外が全て不正にログインしようとしていることになります。
Prowlアプリのインストール
ProwlはGrowlクライアントのiOS版です。プッシュ通知に対応したサービスからProwl APIを通してiPhoneやiPadでプッシュ通知を受信することが出来ます。
Prowl: Growl Client 1.4
ユーティリティ, 仕事効率化
App Storeで詳細を見る
Prowl APIキーの取得とアプリ設定
以下のサイトでProwlアカウントを作り、API Keyを取得します。
Prowlアプリを開き、作成したアカウントでログインしておきます。
WP Login Alert Notifyプラグインをインストール
/wp-content/plugins/に適当なディレクトリを作り、以下のサイトからダウンロードしてFTP転送するなり、gitコマンドで必要なファイルを格納します。
Prowl API Keyを設定してプラグインを有効化
WordPressダッシュボードから「インストール済みプラグイン」を選択するとWP Login Alert Notifyというプラグインがありますので、編集ボタンをクリック。
YOUR_PROWL_API_KEYを上記で取得したAPI Keyに差し替えます。
1 |
$api_key = "YOUR_PROWL_API_KEY"; |
ダッシュボードのプラグイン一覧に戻り有効化して準備完了です。
Brute Force攻撃の現状
WordPressの管理権限をもつデフォルトユーザ”admin”が狙われています。TechCrunchで紹介された記事を機に自分のサイトで1週間ほど調査したところ、adminユーザでログインを試みるアクセスが1日300回前後で推移していることが分かりました。
デフォルト”admin”ユーザを削除する
WordPress初期値の”admin”ユーザは削除してしまうことをおすすめします。
- 「admin」ユーザーと同じ管理権限を持つ新しいユーザーを作成。adminユーザに登録したメールアドレスとは別のアドレスが必要になります
- 一旦、ログアウトします
- 新しいユーザIDでログインします
- adminユーザを削除します
- 「admin」ユーザーが所有する投稿とリンクの取り扱いは「すべての投稿とリンクをこのユーザーに帰属させる」を選択し新しいユーザーに紐づけます。その後、「確認のうえ削除する」をクリックする。
- adminユーザー削除後は新しいユーザIDのメールアドレスを変更することが出来ます。
その他のプッシュ通知受信アプリへの対応
現在、im.kayac.comは対応済みでBlackBerryでも受信可能であることを確認しています。その他、AndroidアプリのNotifyMyAndroidにも対応する予定です。
このプラグインについて
WP Login Alert Notifyは、メールで通知するプラグインWP Login Alerts by DigiPをProwlアプリに通知するよう修正した改変版です。ライセンス情報はファイル内に記載してあります。
ユーティリティ, 仕事効率化
App Storeで詳細を見る