いやぁ、本当に困りましたねぇ。ログイン履歴を記録する「Crazy Bone」
というプラグインを使って履歴を確認したらログイン失敗の形跡がたくさん発見されたので、「WP-Ban」
というプラグインを使って早速IPアドレスでブロック。同じグローバルアドレスからのアクセスが拒否されてしまうのでアクセスにひょっとしたら影響あるかもと思いましたが、不正ログインしようとしたアドレスなのですから断固拒否!!「これで不正にログインしようとしたIPアドレスからのアクセスを拒否してやった!!」とにんまりしながら設定を保存しました。
少し脱線します。「Crazy Bone」プラグインを有効化すると、即座にログインの履歴が取られるようになってどんなログインエラーがあるのかも一目瞭然。リストを眺めているとやっぱり多かったのが
- デフォルトのユーザー名である「admin」
- サイトのサブドメイン名やドメイン名
- 著者の投稿一覧「author archive」で表示されるスラグ
- 「test」というユーザー名
でした。まあ1が危険なのはわかっていますが2と3が意外に多かったですね。番外編で「test」というユーザー名もありました、おそらく本当にテスト用として登録したユーザーなのでしょうけど、こうしてアタックしてくるということはこのユーザー名を使っている人がいるんでしょうね(私は全く使いません)
また、ほぼ100%日本のIPアドレスからのログイン試行。
多分不正ログインしてやりたいことは
- 単純にサイトを乗っ取りたい
- 投稿のデータなどを搾取したい
- アドセンスなどの広告コードをこっそり入れ替えて自分の実績に
などなどいろいろ考えられますね。3なんかはやられてもしばらく気づかないかもしれませんね。ただそんなことは許さない!!というのが前述した2つのプラグインと、作者のアーカイブに表示されるスラグを変更できる「Edit Author Slug」
というプラグイン。個人的には3種の神器として必ず使っています。WordPressで作るサイトは汎用性が高いのでこの位のセキュリティ対策はぜひしてくださいね。
ということで脱線はここまで。「Crazy Bone」でエラーになっているIPアドレスをブロックしたはずが・・・
自分もアクセスできなくなってる~~😱😱😱
ログインに失敗したことないからリストのままコピーすれば大丈夫!!という安易な作業が原因であるのは明らかです。設定画面で更新ボタンをクリックした後で「あっっっ自分のグローバルIPが含まれてる」と気づいたのですが後の祭りです・・・。
顔は真っ青、頭は真っ白、そして画面も真っ白状態でした(無事に復旧したので笑い話ですけどね)
それからきちんとこのプラグインが動作していることも身をもって確認できました(こちらも無事に復旧したからこんなこと言えるんですけどね)
今回は私と同じような状態になってしまった方のために、WordPressへインストールしたWP-Banプラグインで自分がアクセスできなくなったときの対処方法について紹介したいと思います。ただし、これはあくまでも私的な体験談ですから、環境によっては同じではないかもしれません。作業は自己責任で行っていただきたいと思います。
プラグインフォルダの削除
プラグインの有効化時に不具合が発生したときの荒療治であるプラグインフォルダの削除。普通のプラグインならこれで解除でき、管理画面などにアクセスできるようになります。サーバーへFTPでの接続が必要です。関連記事としては
などを見てみてくださいね。
が、これはアクセス拒否のプラグイン。昔セキュリティ系のプラグインでこれをやって全くアクセスできなくなった経験から危険かも?と思いつつ、その他に方法が見つからないのでどきどきしながら行いました。すると・・・
見事にプラグイン動作停止!!管理画面が開けるようになりました。
所詮追加機能のプラグインなのでプラグインが動かなければそこに設定した情報も読み込まれないのが動作の順番なのでまず問題なくこれで不具合解消できるのですが、これはあくまでも私の環境の例ですのでくれぐれも自己責任でお願いしますね。
再びWP-Banプラグインを使えるようにする
これで見事にサイトへのアクセスはできるようになりました。でも、不正アクセスを拒否するために導入した「WP-Ban」ですからもう一度使いたいですよね?
早速再度プラグイン検索してインストーーール・・・は御法度です
設定情報がデータベースに残っているのでそのまま有効化すると案の定アクセス拒否されます(復旧できることが分かったのでテストサイトで遊んでみました)。
これを解消するにはphp Myadminなどのサーバーツールでデータベースに入り
- 「wp_options」テーブルを開く
- 検索窓に「option_name」「LIKE %%」「ban」と入力して検索
- 「banned_〇〇〇」となっているデータを削除
これでデータはすべて削除され、何もない状態でプラグインが有効化されます。
ちなみに「banned_ips」の中にある
「i:0;s:14:”210.236.117.65″;i:1;s:14:”157.14.151.134″;」というデータの中から赤字の部分(ここに表示しているのは不正アクセスしてきた奴のアドレスです)を削除して、行番号の整理すれば自身のIPアドレス以外はそのまま復旧できるかと思いましたが、再度有効化すると上書きされてしまうみたいです。もう一度最初から拒否の設定をしていくしかないようです。
これで無事にアクセス復旧と「WP-Ban」の再有効化が完了しました!!

php Myadminが使えないときは
私が使っているサーバーではphp Myadminなどのデータベース編集ツールがありません。そんなときに便利なプラグインがあります。「ARI Adminer」といふプラグインです。検索してインストールし、有効化すれば、WordPressの管理画面からデータベースの中身が操作できるようになります。
それを使って上の作業をしてみると

こんな感じになります。php Myadminが使えるサーバーでもこのプラグインの方が便利かもしれません。