crazy boneというプラグインを入れると、ログインの記録が見られるのですが、自分でログインしたもの以外に大量の不正ログインが行われていてびっくりするんですよ。
ロシア、中国からのアクセスが多いですかね。
でも安心なのはログイン成功にはなっていない事。
プルーストアタック(総当たり)戦術であらゆる文字列でのログインを試しているのだろうけど、破られてはいない。
安心、安心と思ってました。
ユーザー名は簡単にバレてしまう
実は簡単にユーザー名を調べる方法があって
/?author=1
これを自サイトのurlの末尾につけてアクセスする。
このサイトでやってみると
https://stray-light.info/wp/?author=1
となる。
すると投稿者アーカイブのページにアクセスされる。
そのときにurlはこう変化する。
https://stray-light.info/wp/author/admin
ユーザー名が「admin」だと、urlからバレてしまうわけです。
さらに、ここで表示される投稿者アーカイブのページタイトルが
「(ユーザー名)の投稿一覧」
のようになりここでもユーザー名がバレてしまいます。
ユーザー名がバレてしまえば、あとはパスワードをプルーストアタックで攻撃すればいいわけで、ハックする側からすれば攻略時間が半分ですむ計算になってしまいます。
これは非常にまずい!
対処はプラグインEdit Author Slugで
この問題の対処には「Edit Author Slug」というプラグインを使います。
インストールが出来たら管理画面、左メニューから
ユーザー → あなたのプロフィール を開いてください。
「Edit Author Slug」自体の設定ページへは行かなくていいです。
あなたのプロフィールページの一番下にEdit Author Slugの項目が追加されています。
そこの投稿者スラッグ、カスタム設定でユーザー名とは違う名前を設定します。
日本語は対応していないようです。
例えば「nobita」と入れて「プロフィール更新」をします。
もう一度
https://stray-light.info/wp/?author=1
これをやると
https://stray-light.info/wp/author/nobita
に変更されました。
あとひとつチェックが必要
さきほどのあなたのプロフィールページで
- ニックネーム
- ブログ上の表示名
が設定されていないとユーザー名が自動で割り当てられてしまいます。
設定されていない場合は適当な名前を設定しましょう。
投稿者名として表示されるのでその点考慮した名前にしてください。
ここで両方とも「管理人」にした場合、先ほどの投稿者アーカイブのページタイトルが
「管理人の投稿一覧」
に変化しています。
これをやっておかないと
「(ユーザー名)の投稿一覧」
になってここでユーザー名がバレてしまいます。
まとめ
プラグインを使ったユーザー名を隠す方法を紹介しました。
しかし何年もwordpressを使っていますが、いままで知らなかったとは驚きでした。
よくハッキングされないでいたなぁと思います。
特になんでもないサイトでもハッカーにとっては攻撃の時の「駒」に出来るのでとりあえずハッキングして不正なスクリプトを仕込んでおく事はよくあるそうです。
前もってセキュリティには気をつけなくてはいけませんね。