先日の”Brute force attackとの戦い(レンタルサーバー Apache編)”で対策を行った某WordPressのサイトですが、対策を行ってからは格段にアタックは減ってエラーログもほとんどなくなっていたのですが、「Sucuri Security」のログインエラーの通知が来ていたので、「Crazy Bone (狂骨)」プラグインで確認したところ
特にエラーは無いようなのですが、「Sucuri Security」の”Failed Logins”を開いてみたところ
wp-config.phpで
[php]
if ( isset($_POST[‘log’]) && preg_match(‘/^admin/i’, $_POST[‘log’]) ) {
header("HTTP/1.1 403 Forbidden");
die();
}
[/php]
adminのログインは切っているのになぜ〜〜と思ってApacheのログを見たところ、「Sucuri Security」のエラーの時間にありました。
server.totalcatsint.nl - - [07/Feb/2015:18:24:37 +0900] "POST http://xxxxx.net/xmlrpc.php HTTP/1.1" 200 441 "-" "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; fr; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8" "wordpress_test_cookie=WP+Cookie+check"
前回対策を行った”wp−login.php”経由ではなく”xmlrpc.php”にPOSTしてきてましたww
WordPressが人気者であるが故に手を替え品を替え色々してきます^^;
これでは、「Limit Login Attempts」などのログインロック系のプラグインでも防げない。。。
アプリ経由で投稿とかしないのでとりあえず”xmlrpc.php”をアクセス拒否して様子を見てみます。
.htaccessに↓を追記
[html]
<Files xmlrpc.php>
Order allow,deny
Deny from all
</Files>
[/html]