もくじ
日々、様々な検索キーワードでブログに訪れる迷える人たち。キーワードに秘められた思いを勝手に掘り下げ、妄想し、お悩みに回答します。
名付けて「勝手に相談室」。
今日選んだキーワードは
勝手に知らないユーザーが WordPress
です。
かなり深刻な状態
キーワードから推測すると、「WordPressのユーザーに、知らないユーザーが勝手にできてていた」、ということだろうと思う。WordPressのシステムが勝手に知らないユーザーを作ることはない。
質問者が作ったユーザーを忘れていたのかもしれない。共同の執筆者を登録していて忘れていたとか、いつも使っているアカウントでログインできなくなった時のバックアップとして別のユーザーを作ったのかもしれない。
そういうことではなく、本当に知らないうちにユーザーが勝手に作られていた、ということであれば、質問者以外の第三者がWordPressの管理ページにアクセスして、ユーザーを作った、ということだ。
そういう可能性はあるのだろうか?
サイトの乗っ取り
WordPressにかぎらず、サイトを乗っ取られるということは、ある。たびたびニュースになっいるからご存じの方も多いと思う。
WordPressのように、コンテンツを管理するための「管理ページ」を設けているサイトは多い。管理ページは、関係のない第三者の閲覧されたり、利用されるとまずいから、ユーザー名とパスワードを入力しないとアクセス出来ないようにしてある。もちろん、WordPressの管理ページも同じだ。
しかし、設定したユーザー名とパスワードが、簡単に類推できるものであったらどうだろう。何度か試しているうちにアクセスできてしまった、ということになりかねない。
だから、ユーザー名とパスワード、特にパスワードは、誰にも類推できないように、英数大文字小文字記号を取り混ぜて8文字以上にしよう、と言われている。
簡単で、誰でも類推できるパスワードを設定しているとどれくらい危険かということは、WordPressの「ログイン履歴」を見ればよく分かる。実際にアクセスがあったユーザー名とパスワードの組み合わせを書き出してみる。
- admin / admin
- admin / 123456
- admin / 123123
- admin / admin
- admin / password
- admin / admin123
- admin / 12345
- admin / changeme
- admin / admin1234
- admin / adminadmin
- admin / abc123
- admin / 1234567890
- admin / test123
- admin / pass123
- admin / 12345678
- admin / 123qwe
- admin / master
- admin / 159753
- admin / 12341234
- admin / welcome
こういったパスワードを使っていると、簡単に認証(ユーザー名とパスワードを利用してログインすること)を突破されてしまう。
こういうのは論外として、もっと恐ろしいことがある。ブルートフォースアタックと言われる「攻撃」だ。
以下のリストは、ログインに失敗した時間を抜き出したものだ。
- 2016/1/29 12:25
- 2016/1/29 12:24
- 2016/1/29 12:24
- 2016/1/29 12:24
- 2016/1/29 12:24
- 2016/1/29 12:24
- 2016/1/29 12:24
- 2016/1/29 12:24
- 2016/1/29 12:24
- 2016/1/29 12:24
- 2016/1/29 12:24
- 2016/1/29 12:24
- 2016/1/29 12:24
- 2016/1/29 12:24
- 2016/1/29 12:24
- 2016/1/29 12:24
- 2016/1/29 12:24
- 2016/1/29 12:24
- 2016/1/29 12:24
- 2016/1/29 12:24
1秒間に20回以上ものログインの試行がある。もちろん私の仕業でない。そもそも、1秒間に20回というのは人間の仕業ではない。おそらく、管理ページにログインしようとした機械的な攻撃だ。
この手の攻撃は、ボット、つまり、ウイルスに感染させた全世界のパソコンから行われていることが多い。多数のパソコンから同時に1か所のサーバーであったり、サイトを攻撃するわけだ。攻撃には「辞書ファイル」というものを使用する。その辞書に載っているパスワードを使って、次々にログインしようとするわけだ。
たまたま、その「辞書ファイル」に掲載されている「ユーザー名・パスワード」を管理ページで使っていると、ログインされてしまう。
攻撃の目的
攻撃者(悪意を持った第三者)の目的は、あなたのサイトにログインして、情報を抜き出したり、サイトを改ざんしたり、ということもあるだろう。しかし、攻撃者の目的はそれだけではない。
新たな攻撃者を生み出すことにある。
例えば、あなたのWordPressの管理ページから、投稿内容に不正なスクリプトを埋め込んだとしよう。そのページを閲覧した人は、不正なスクリプトにより、ウイルスやマルウエアといった不正なプログラムをパソコンにダウンロードしてしまう。ウイルスやマルウエアに感染したパソコンは新たな攻撃者となり、攻撃に加担してしまう。
攻撃者の最終目的は、全世界に攻撃の手足となる多数のボットを持ち、著名な企業のサイトであったり、インターネットの根幹的なサーバーであったり、そういうところを攻撃することにある。
サイトの管理ページに不正にログインされてしまうということは、そういった攻撃に加担させられてしまう、ということだ。
攻撃からサイトを守るためには
こうした攻撃から自分のサイトを守るためにはどうすればいいか?いくつか方法を考えてみよう。
パスワードを複雑なものにする
攻撃者が攻撃に使う「辞書ファイル」に載っていないような、複雑で類推しにくいパスワードに変更する。これだけで効果はかなりある。それと、8文字以上にする。パスワードを8文字以上にすることによって、かなり不正ログインから守ることができるとのことだ。
もちろん、パスワードは、英数大文字小文字記号取り混ぜたものにしたい。
ログインしにくくする
WordPressを使っているサイトの場合、ログインページは、ほとんどすべてのサイトで同じアドレスになることが多い。だから、攻撃者はWordPressの管理ページがあるかどうかを確認し、あれば、ブルートフォースアタックをかけてくるわけだ。
攻撃者がログインページを探しだしても、ログインしにくくすれば、攻撃をかわすことができる。方法としては2種類ある。
BASIC認証を使う
管理ページのログインページにアクセスする前に、別の認証方法を経ないと、管理ページのログインページにアクセス出来ないようにすればいい。例えば、BASIC認証を使う。
ここでBASIC認証で設定したユーザー名とパスワードを入力すれば、管理ページのログイン画面が表示される。BASIC認証に失敗すると、
401 Unauthorized
というステータスが返ってくる。攻撃者としては、効率よく攻撃に加担してくれるサイトを見つけたいわけだから、BASIC認証を経ないと管理ページにアクセス出来ないようなサイトにかまっている時間はない。結果的に、攻撃から逃れられるわけだ。
セキュリティ対策のプラグインを使う
WordPressのプラグインに、「SiteGuard WP Plugin」というものがある。管理ページの認証に画像認証を取り入れたり、管理ページのアドレスそのものを変えてしまうことができる。
画像認証には「ひらがな」が使われるので、仮に画像を解析されたとしても、海外からの攻撃には耐えられるだろう。管理ページのアドレスを変えてしまうことで、攻撃者からの攻撃そのものをかわすことができる。
無料で使えるので、ぜひとも使ってみてほしい。

Googleの2段階認証もお勧めのプラグインだ。

一手間をかける面倒を怠ってはいけない
悪意を持った第三者からの攻撃をかわすには、いずれにしても、一手間をかけなければならない。
BASIC認証を使うなら、合計2回、ユーザー名とパスワードを入力しなければならない。
SiteGuard WP Pluginを使うならば、画像に表示された文字を入力しなければならない。
Googleの2段階認証なら、スマートフォンで生成される数字を入力しないとログインできない。
しかし、そういった「一手間」をかけるだけで、攻撃を簡単にかわすことができる。サイトを運営する人には、ぜひ、考慮に入れてほしいことだ。
ではまた。