先日から、DDoS攻撃の踏み台にされているWordPressサイトが16万以上も存在しているということで話題になっています。この攻撃は、WordPressのリモート投稿機能のXML-RPCを悪用して、DDoS攻撃を仕掛けるという手法です。
XML-RPCは、ピンバックでも利用されていて、WordPress3.5以降からは設定項目がなくなり、デフォルトで有効な状態になっています。なので、意図的にXML-RPCを無効にしていない限り、DDoS攻撃の踏み台にされてしまう可能性があります。XML-RPCを無効化する方法については、後述します。
DDoS攻撃というのは、第三者のコンピュータに攻撃プログラムを仕掛け、その踏み台にした多数のコンピュータから標的とするサーバーなどに大量のパケットを同時送信することで機能をダウンさせる攻撃のことです。
踏み台にされているサイトは、Krebsでリストとしてまとめられていますが、とんでもない量です。有名サイトも結構やられているみたいですね。
URLからDDoS攻撃の踏み台にされているかどうか、チェックすることができるWEBサービスがSucuri Researchです。セキュリティ会社のSucuriが提供しています。
自分のサイトがDDoS攻撃に加担してしまっていないか、チェックしておきましょう。
Sucuri Researchの使い方
Sucuri Researchにアクセスして、フォームにURL・ドメイン・IPアドレスのいずれかを入力します。
[CHECK SITE]をクリックすると、結果が下に表示されます。
踏み台にされていないと判断されたら、「Good: Your Website http://hogehoge.com was not used for DDOS.」というようなメッセージが表示されます。
「Warning: Your Website http://hogehoge.com was USED for DDOS.」というようなメッセージが表示されたら、DDoS攻撃の踏み台にされています。
注意点
Sucuri Researchでは、Securiが保有しているログから、過去に攻撃が実施されたかどうかを確認しています。
そのため、Goodが出たからといって、完全に安心はできません。併せて、Krebsが公開している踏み台リストでも検索しておきましょう。
DDoS攻撃の踏み台にされないための対処法
今回のDDoS攻撃では、WordPressのXML-RPCが使われているので、この機能を無効化することで対処できます。以前はリモート投稿の設定から無効化できましたが、WordPress3.5以降ではXML-RPCについての設定項目がなくなり、デフォルトで有効になっています。
そのため、XML-RPCを無効化するには、利用しているテーマのfunctions.phpにコードを追加するか、プラグインを使用する必要があります。
functions.phpでXML-RPCを無効化する
利用しているテーマのfunctions.phpに以下のコードを追加することで、XML-RPC機能を無効化できます。
add_filter('xmlrpc_enabled', '__return_false');
この1行を追加するだけで、XML-RPC機能を無効化できます。
Disable XML-RPC Pingbackプラグインを使ってXML-RPCを無効化する
functions.phpをいじるのはちょっと・・・という方は、Disable XML-RPC Pingbackというプラグインを使いましょう。
Disable XML-RPC Pingbackの使い方は、インストールして有効化するだけでOKです。特に設定は必要ありません。
.htaccessでxmlrpc.phpに接続できるIPアドレスを制限する
xmlrpc.phpに接続できるIPアドレスを制限することでも、踏み台にされるのを回避することができます。xmlrpc.phpへの接続を国内IPに制限する方法は、某氏の猫空さんで紹介されていました。
アクセスを制限するには、.htaccessに以下のようなコードを追加します。
<Files ~ "^(wp-login\.php|xmlrpc\.php)$"> Order deny,allow Deny from all allow from 1.0.16.0/20 allow from 1.0.64.0/18 allow from 1.1.64.0/18 省略・・(国内IPをすべて書く) </Files>
上記コードを追加すると、wp-login.phpとxmlrpc.phpへのアクセスが、国内IPアドレスからのみ許可されるように制限されます。
注意点としては、某氏の猫空さんでも書かれていますが、国内からアクセスされたらこの方法では防げないですね。
あとがき
メンテナンスを怠っているWordPressサイトがあったら、今すぐ確認してみましょう。
もしかしたら、気付かないうちに犯罪の片棒を担いでしまっているかもしれません。