【wordpress】URLに管理者IDが表示されてしまうことに対する対応(ブルートフォース攻撃対策

どうも、ツイッターのフォロワーさんより、脆弱性のご指摘を受けて
気づいた内容の備忘録です。

本当にありがとうございます・・・

管理者IDが丸見え!?

ことの始まりはフォロワーさんのこの一言
フォ「このホームページ、管理者ID丸見えになってしまいますよ。
  管理者IDがバレたらブルートフォースアタックで乗っ取られますよ。」
僕「????管理者ID隠せる場所は隠したはず」
フォ「URLに『?author={id}』を追加してリダイレクトして見えますね」
僕「!!!????」

どうやら、管理者IDが丸見えな部分があったみたいです。

ご指摘くださった方への謝辞

よくお世話になっております、
M2さん(@M2_m_)です。
Web系のエンジニアで、ものすごく博識な方です。
qiitaでも技術メモを公開しているのでよければそちらの記事もご覧ください。

そして、wordpress運用時の注意点の記事も書いておりました!
WordPressを(レンタルサーバーで)実運用する際の注意点

勉強になります!

そして本題・・・

再現性の確認

ブラウザのURL表示欄に表示されているURLに対して「?author=1」を入力し、
リダイレクト(エンターキー押す。

当サイトは以下のURLになってます。

それをこうして

こうじゃ

※青い四角部分にIDが表示されています。

ああ・・・管理者IDってわかるような文字だし、あかんやん・・・

ブルートフォース攻撃とは?

わかりやすく解説してくれているサイトがありました。

つまりは
管理者IDさえわかってしまえば、パスワードは総当たりで当てることができる

流石に手入力でパスワードを総当たりで入力することはしないと思います。
システムを組んで、自動で総当たりをするというのが通常です。
でもパスワードの文字数によっては、年単位でかかることもあるみたいです。
それを計算したサイトがありました。

英語小文字だけでも大体9時間・・・
でも組み合わせ内容によってはもっと短く破られることもあるんですね・・・

対策

色々対策はありますが、wordpress向けとして簡単にできる方法として
プラグインを導入する方法がありました。


このプラグインを導入すると、先ほどURLに追加した「?author=1」でリダイレクトしても
管理者IDを隠すことができるみたいです。

導入方法

1.wordpressの管理画面よりプラグインをクリック

2.プラグインを追加する画面が表示されるので「プラグインを検索する」の
テキストボックスから「Edit Author Slug」を入力し、検索。

3.「Edit Author」が画面に表示されるので、「今すぐインストール」をクリック

4.インストール完了するまでしばらく待ちましょう

5.インストール完了し、今すぐ有効化をクリックした後、
     wordpressの管理者メニューからユーザ→ユーザ一覧をクリック

6.管理者IDのリンクをクリック

7.管理者のページの一番下にEdit Author Slugの項目を確認

※ここで管理者IDが選択されていると思います。

8.管理者ID以外の項目を選び、プロフィールを更新ボタンをクリック
※オススメはカスタム設定です。
 管理者IDとは無関係な文字を設定した方が良いですね。
 カスタム設定を選び、カスタム設定のテキストボックスに入力をしたら
 「プロフィール更新ボタン」をクリックしましょう。

もう一度再現性の確認

僕のサイトは「tatsunoko」で入力しました。

そうしましたら同じ手順でトライ

結果・・・

完全に隠れました!!!
とりあえず管理者IDを表面化しないようにはできました。
考えないといけないことは他にもありますが
まずはこれで大丈夫でしょう・・・
その他セキュリティは色々調べます。。

まとめ

気づかないところで、セキュリティに穴があるのはとても危険ですね。。。
脆弱性に対応するにも、プラグインをこまめに更新をしているのですが、
こまめに更新した結果、プラグインが動かず、サイトがうまく表示されないということもあったりします。
調整がなかなか難しいですが、これも勉強と思って、色々調べていきます。

改めて
今回ご指摘いただいた
M2様
そして調査に使用させていただいたサイトの方々
(ZIG様、エッジ様、ぽんすけ様)

本当にありがとうございます!!!

今回は以上です!!!

スポンサーリンク