マジヤバ案件なので、同被害にあった方はまず「対策」の見出しまで飛んで、対策したほうが良いです。
それだけですべてが終わりかはわかりませんが、やらないよりマシ。
あとwordpressセキュリティに自身ニキ、これ以外にやったほうが良い対策があれば教えて下さい。
全国の不正アクセスにおびえるWordPressユーザーが泣いて喜びますので、何卒よろしくお願いします。
WordPress不正アクセスの経緯
WordPressの情報を管理しているメールアドレスにメールが届く。
新規ユーザー登録というような文言が見えたので「購読機能てきなやつで追加してくれた人がいたのかな? と思い、メール内容を見ると……」
WordPress「サイト『ひきともり』の新規ユーザー登録
ユーザー名:~~~
メールアドレス:~~~~」
ん、これ結構まずいんじゃね? と思い、ググったら、同様の症状を即発見。
それをもとにwordpress編集画面からユーザーの一覧を見ると
と、セルに地球に向けて全力でかめはめ波を打たれた時のベジータみたいな心境でした。
そこからはひたすら「これどうすりゃええねん……」と思いながらグーグル先生に土下座しまくりつつ対策を探しまくりました。
以下その対策。
対策
効果があったかはわかりませんが、僕がやって新規ユーザー登録が止まった方法の一覧。
止まるまで常時やったほうがいいこと
worpress編集画面の「ユーザー」
↓
ユーザー一覧
を確認して、自分以外の人を「削除」していく。
権限グループが管理者だと、自分(管理者)と全く同じ力を持つ=ブログの生殺与奪が他人に委ねられます。
マジでヤバい。鬼滅の刃の義勇さんが「生殺与奪の権を他人に握らせるな!」とマジギレするレベル。
優先順位の高いやったほうがいいこと
ユーザー名、パスワード、メールアドレスの変更
基本的にユーザー名、メールアドレス(この二つをひとくくりにしてIDと言います)とパスワードがバレると、自分のwordpress編集画面にログイン出来て、新規ユーザー追加ができます。
なので、ここがバレていると、どれだけ他の対策を取ったとしても基本的に無駄です。
ドアの鍵開けたまま、家の中の物を盗まれない対策をするようなものです。
無駄だから嫌いなんだ。無駄無駄。
パスワード、メールアドレスは比較的簡単に変更できますが(ユーザー一覧の自分のユーザー名クリックしたら出て来る画面で変更可能)、ユーザー名が曲者。
僕は「Username Changer」というプラグインを使って、ユーザー名を変えました。
一応ここまでしたら、基本的に対策は完了だと思いますが(もし自分のIDパスが漏れて管理者追加してるとしたら、IDパス変えて管理者消したら終わりだよね多分)、僕はこれでも止まらなかったので、以下の事を試しました。
Google Authenticatorの導入
Googleが提供している二段階認証のプラグインの導入です。
これをすると、Wordpressの編集画面に入ろうとしたさい、自分のスマホに送られる二段階認証コードが分からないとログインすらできなくなります。
ログインの難易度が非常に上がるわけです。
ここまでやったら不正ログインされる確率はほぼ0に近づくと思いますが、僕はここまでやっても管理ユーザーの追加回数が減っただけで、根本的には解決しませんでした。
サーバー(僕の場合Xserver)のセキュリティ設定
xserverのトップページ→ログイン→(ご契約一覧のあたりにある)サーバー管理→(WordPressにある)WordPressセキュリティ設定→ドメイン選択
にある、セキュリティ設定をすべて(推奨)の項目にする。
タブ3つあるので、全部ね。
やったほうがいいこと
PCのウイルス、スパイウェア等のスキャン
もしかしたらPCの根本的な原因があるのでは? とスキャン。
緊急性は高くない物の若干の脆弱性が見つかったため、それを対策。
僕はavastのウイルス検索と、MalwarebytesとAdwCleanerというソフトでマルウェア検索を行いました。
こういう時ほど無料セキュリティソフトで後悔することは無いです。僕は有料ソフトに切り替えました。
Edit Author Slugの導入
ユーザー名がバレてしまうと、あとはパスワードがバレると終わりです。
ただユーザー名ってwordpressデフォルト設定だと1秒でバレるんですよね。
ブログのトップページのURLに「?author=1」という文言を追加すると、ユーザー名がURL欄に出てきます。
僕のブログなら「https://hikitomori.com/?author=1」みたいな感じですね。
これを入れると未対策なら「https://hikitomori.com/ユーザー名」ってな感じでバレるんですよ。
その対策として「Edit Author Slug」というプラグインを導入すると良いです。
このプラグイン、「?author=1」と入れられた時に帰ってくるURL(要するに未対策時のユーザー名)の代わりに、別な文字列を表示させるものです。
なので、「?author=1」からユーザー名がバレるということは無くなります。
SiteGuard WP Pluginの導入
色々な機能があるみたいですが、ログインする際に画像認証が必要になるのを期待して導入しました。
今まではユーザー名またはメールアドレスとパスワードだけでした。
が、このプラグインと前述のGoogle Authenticatorを導入することで、ログイン画面がこんなかんじに。
ここまで対策を取って、しばらく時間を置くと、やっと不正ログインの嵐から解放されました。
追記
2019/10/31
同じような症状の方から
・「BackWPup」というプラグインを消去すると改善した
という情報をいただきました。
同じ症状で困っている方で、同プラグインを使用している方は、試しに消去してみると改善するかもしれません。
2019/11/03
同じような症状の方から
・FTPで「user-new.php」を削除で改善した
という情報をいただきました。
全く右も左もわからないと、ファイルを削除することに結構なリスクが伴うので、思考停止削除はオススメできませんが、手を尽くしてもダメなかたはダメ元でやってみるのもいいかもしれません。
他に似たような症状がほかのなんらかの対策で改善した方がいらっしゃいましたら、また別な困っている人の為に改善方法のコメントを残していただけると助かります。
現状と反省点
ひたすら雨漏りしていた家の、天井の隙間をふさぎまくった心境です。
最初:3分に1回
途中:5分に1回
現状:ほぼない(設定が終わった直後、数十分に1回が2~3回あったけど、今の所3時間程度何もない)
という状況。
5時間近くこの設定に手間取っていたので、ただただ無駄なことに時間を注いでいた感じがして、非常に疲弊してます。
ただ、ID(ユーザー名orメアド)とパスワードを変更したあとも延々と新規ユーザーが追加されたってことは、なにか根本的な所がおかしいんじゃないかと思ってます。
新規ユーザー追加は、僕(メイン管理者)のIDがわからないとできないことだよね?
んで、それを変更したのに来るってことはいくつか嫌な可能性が考えられて
・変更したIDパスワードが即時でバレるような仕組みがPCに入ってる
・あるいはwordpress側に組み込まれている
・それ以外で新規ユーザーを追加する方法がある。
……つまり、今回の対策はなんの意味もなかった
・サーバー(xserver)側の何かが原因
あたりが想像できますが、ここに気づく方法がわからない、ということ。
あとは、IDPASSがバレてるなら、普通にそのまま編集なりすりゃいいんじゃね? という思いもあるので、無駄にユーザーを追加する=IDPASSが分からずともなんらかの方法でユーザー追加をする方法があり、一度もう不正ログインしてしまったので、その何らかのユーザー追加をする方法が悪意のある人が自由にいじれる状況になってるんじゃないか? という不安。
crazy boneというプラグインで、ユーザー名に対してのアクセスログが取れるみたいですが、それを入れて少し様子を見ていました。
結果的にユーザー名が追加されたタイミングで、自分のIDPASSでログインしたログが取れなかったので、上記可能性が高いのでは? と懸念してます。
なんかよくわかりませんが、IDPASSの変更までのラグか何かで追加されるだけだったらいいんですが……。
これはもう少し様子みないとわからないですね。
しかし、相手が攻撃を一時的にやめただけで(=対策が功を奏したわけではない)、またしばらく更新したあとに同じ攻撃を受けたとしたら、その時は立ち直れる気がしません。つらみ。
それと反省点としては、最初からセキュリティをしっかりしときゃよかったなぁ、ということ。
今更マサラタウンてすが、こういうのって起きる前に対策とっときゃ最初は面倒かもしれませんが、後の発生する可能性のある苦労と比較すると楽に済むんですよね。
とは言え、それを追求すると無限に対策だけして一生が終わるのでバランスは難しいですが……。
個人的には「Google Authenticator」がかなり有能なので、優先度高いと思います。
現状かなり不安な状況です。
また不正にユーザー追加されたら、何か対策をとって、というやりとりは今後もこの記事に追記していく予定です。
追記
2020/09/01
上記対策を取ってからは不正ログインはされていません。今後どうかはわかりませんが、ひとまず安心かな。
コメント(承認制のため反映まで時間がかかります)