【WordPress】XML-RPCを利用したブルートフォースアタックを受けました。

XML-RPCを利用したブルートフォースアタックを回避する方法

X(旧Twitter)で、WordPressのセキュリティの話をつぶやいていたら、コメントをいただきました。XML-RPC(xmlrpc.php)を無効化していないとブルートフォースアタックを受けることがあるとのこと。この機会に見直してみたところ、ブルートフォースアタックされていた痕跡がありました。XML-RPCを無効化したので、備忘録として残しておきます。

私のサイトは、SiteGuard WP Pluginを使って、WordPressのログイン画面のURLを変更していたので、不正ログインはないだろうと高を括っているところがありました。ご指摘いただいたので、SiteGuard WP Plugin のログイン履歴を確認してみたところ…

ブルートフォースアタック
ブルートフォースアタック

めちゃくちゃブルートフォースアタックの痕跡が残っていました💦

さすがにマズいので、XML-RPCを無効化することを考え、いろいろググりました。

.htaccessに記述する方法やプラグインを使う方法、それからフィルターフックを使う方法があるようでした。

SiteGuard WP Pluginを利用しているので、機能一覧を確認してみたところ、「XMLRPC防御」という項目があり、XML-RPCの無効化設定ができるようになっていました。デフォルトでピンバックは無効化されています。それでもブルートフォースアタックをされていたので、XMLRPC無効化を選択しました。

XMLRPC防御(SITEGUARD)
XMLRPC防御(SITEGUARD)

SiteGuard WP Plugin のXML-RPC無効化は、.htaccessに記述する機能らしく、.htaccessを確認してみると次のコードが追記されていました。

<Files xmlrpc.php>
    <IfModule authz_core_module>
        Require all denied
    </IfModule>
    <IfModule !authz_core_module>
        Order allow,deny
        Deny from all
    </IfModule>
</Files>

プラグインを使わない方は、単純にこのコードを.htaccessに追記するだけでもいいかもしれません。

XML-RPCが無効化できているかどうかは、https://ドメイン名/xmlrpc.php にアクセスするとわかります。

有効化されている場合: XML-RPC server accepts POST requests only. の文言が表示されます。

無効化されている場合: 403 ErrorForbidden が表示されます。

XML-RPCを無効化することにより、XML-RPCを使用した機能やアプリ、プラグインも利用できなくなりますので、XML-RPCの設定には注意が必要です。

Follow me!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です