WordPressのファイル保護やセキュリティ対策

サイト(Wordpress)公開初期、頻繁にApacheのログに現れたWordPressのxmlrpc.phpにアクセスを試みるIPが多くてビックリ!情報サイトで確認して分かったことは「セキュリティ対策としてxmlrpcファイルを外部アクセスから保護及びブルートフォースアタックの対策が必要」と言うことで下記のように施した。

WordPressのファイル保護とブルートフォース対策

【xmlrpc.phpの保護】

1.WordPressの.htaccessに下記を追加
 RewriteRule ^xmlrpc.php$ “http\:\/\/0.0.0.0\/” [R=301,L]←現在不可
2.子テーマのfunctions.phpに下記を追加
 add_filter(‘xmlrpc_enabled’, ‘__return_false’);

xmlrpcファイルの保護必要なコード(1)がバージョンアップで「.htaccess」に追加してもすぐ削除されているのでfunctions.phpに(2)のコードを追加した。

【ブルートフォースアタックの対策】

「PeerBlockとApacheのhtaccessで保護」することでOK!と思っていたが、WordPressのプラグイン「Limit-Login-Attempts」で確認すると海外からのログインが何百とロックされている。なので、WordPressのブルートフォースアタック対策に「wp-config.php」の先頭部分に「admin系のユーザーのみ有効」だけど下記のコードを追加した。

if ( isset($_POST['log']) && preg_match('/^admin/i', $_POST['log']) ) {
 header("HTTP/1.1 403 Forbidden"); die();}

上記の追加で効果があったかどうか分からない部分があるけど、少なくともxmlrpc.phpのアクセスは完全にブロックして、「Limit-Login-Attempts」で確認のブルートフォースアタックも百程度に減少してる。

TOP

Copyrighted Image