ブルートフォースアタックはパスワード辞書を使った総当たり攻撃で、辞書と同じパスワードがヒットすれば、不正ログインを許してしまう原始的ではありますが結構怖い攻撃です。

当方のサイトへの最近の攻撃では、1万を越える異なるパスワードでログインが試みられています。

人がログイン画面からログインを試す場合、10回も繰り返せば嫌になります。が、しかしプログラムを利用すれば、お茶を飲んでる間にログインチェックが可能となります。クラッカーの皆さんは、さほど苦労せず脆弱なサーバーやサイトを日々探索しているのです。

さて最近ですが、WordPressのxmlrpc.phpを悪用してDDoS攻撃が仕掛けられたことから、悪用されたWordPressサイトの一覧が公開されました。日本の結構名のある会社のサイトも上がっていて、不名誉なレッテルを貼られてしまいました。

そんなレッテルは貼られたくないので、早速ping機能を無効にしました。

xmlrpcそのものはブログに取って大切な機能であるため、そのものを無効とするわけにはいきません。

が、何と、そこに付け込んだ新たなブルートフォースアタックが発生しました。

そのアタック方法は?

話には聞いてはいたのですが、実際どのように実行されているかは調べていませんでした。ですが、当方のサイトが標的にされたので早速確認してみました。

方法は至って簡単です。ログイン名とパスワードをWordPressのxmlrpc.phpに投げることで、戻されたその結果によりログイン名とパスワードが正しいかどうか分かるわけです。

以下は実際に投げ込まれたXML文です(見易いように編集してあります)。

xmlrpcに投げ込まれたXML

するとWordPressからは次のような結果が送信されます。

ログインできなかった場合

上記のログイン名、パスワードは誤りですのでこのようなデータが送り返されたわけですが、もし正しい場合はどんなXMLが送り返されるかを見てみました。

ログインが成功した場合

これではログイン画面を隠したところで裏口の場所が分かっているので、攻撃を避けるのは容易ではありません。

なお、WordPressにおける「XML-RPC」のAPIは、「XML-RPC wp」に一覧があります。

(140807)