WordPressのセキュリティ対策 WordPressのxmlrpc.php詳細ガイド

2022年2月23日

WordPressの仕様の一つであるXML-RPCは、異なるシステム間での通信を標準化するために開発されています。
つまり、WordPress外のアプリケーション(他のブログプラットフォームやデスクトップクライアントなど)がWordPressとやり取りできるためのものとなります。

しかし、xmlrpc.phpには欠点があります。
WordPressサイトに脆弱性をもたらす可能性があり、現在では、この役割はWordPress REST APIに取って代わられています。

今回はなぜ無効にする必要があるのか、WordPressサイトでオンになっているかどうかを確認する方法もご紹介します。

xmlrpc.phpを無効にすべき理由

WordPressサイトでxmlrpc.phpを無効にする必要がある主な理由は、セキュリティの脆弱性が発生し、攻撃の対象になる可能性があるため。
XML-RPCがWordPressの外部と通信する必要がなくなったため、XML-RPCを有効にしておく理由はどこにもない事は前述した通り。
これを無効にして、サイトのセキュリティを強化するのが賢明です。

XML-RPCピングバックを利用したDDoS攻撃

xmlrpc.phpが可能にした機能の1つが、ピンバックとトラックバック。
これらにより、別のブログやサイトがコンテンツにリンクしたときに、サイトのコメント欄に通知を表示することができてしまいます。

この通信を支えたのがXML-RPCでしたがこの役割はREST APIが担うようになりました。

サイトでXML-RPCが有効になっていると、ハッカーはxmlrpc.phpを悪用して短時間で膨大な数のピンバックをサイトに送信することにより、サイトにDDoS攻撃を仕掛けることができます。
これにより、サーバーが過負荷になり、サイトが機能しなくなる危険性が高まるのです。

XML-RPCを利用したブルートフォースアタック

xmlrpc.phpがリクエストを行うたびに、認証のためにユーザー名とパスワードを送信し、それを繰り返されます。
これは、重大なセキュリティ上の問題を引き起こします(REST APIにはありません)。
実際、REST APIは、ユーザー名やパスワードではなく、認証用のトークンを送信するOAuthを使用します。

xmlrpc.phpはリクエストごとに認証情報を送信するため、ハッカーはこれを使用してサイトにアクセスしてしまう可能性があります。
そして、ブルートフォース攻撃は、コンテンツの挿入、コードの削除、またはDBの損傷へとつながる危険性があります。

攻撃者がサイトに多数のリクエストを送信し、それぞれに異なるユーザー名とパスワードのペアを幾度となく指定すると、最終的には正しい組み合わせになりサイトにアクセスできてしまう。という具合です。

そのため、REST APIを使用して外部システムと通信するWordPressの最新バージョンを利用している場合は、xmlrpc.phpを無効にしておきましょう。
この機能は不要であり、サイトを脆弱にする可能性だけがあります。

xmlrpc.phpを無効にする方法

xmlrpc.phpを無効にする方法は3つあります。

1・プラグインでxmlrpc.phpを無効にする
2・プラグインなしでxmlrpc.phpを無効にする
3・ホスティング企業にxmlrpc.phpを無効にしてもらう

今回は2についてのみご案内

プラグインなしでxmlrpc.phpを無効にする方法

サイトにこのためだけにプラグインをインストールしたくない場合は、フィルターまたは.htaccessファイルにコードを追加して無効にできます。
両方の方法を確認し、いずれかの方法で対応ください。

フィルターを使ってxmlrpc.phpを無効にする
この方法では、xmlrpc_enabledフィルターを使用してxmlrpc.phpを無効にします。
この関数を使いプラグインを作成して、サイトで有効化します。

add_filter( ‘xmlrpc_enabled’, ‘__return_false’ );

.htaccessファイルを介してxmlrpc.phpを無効にする

.htaccessファイルに次のコードを追加します。


Order Allow,Deny
Deny from all

それぞれ何か問題が発生した場合に備えて、元のファイルはバックアップやコピーを作成し、作業を行ってください。

これらの作業がわからない場合は弊社でもスポット対応を行なっておりますのでお気軽にご相談ください。


Recent Entries

口コミ対応も含め、Googleビジネスプロフィール 特に飲食・美容・医療は積極的なご活用を
WordPress改修事例。大量のプラグインはリスクの元
【よくある質問】担当者が退職し、PHPのバージョンやMySQLサポート切れの可能性があります。チェック可能ですか?
【よくあるご質問】担当者が辞めてしまったのでスポットでのホームページやECサイト改修依頼は可能ですか?
Google、Search Console(サーチコンソール)を更新し、スティッキーフィルターとナビゲーションを改善。アップデート


CONTACT

Webサイトリニューアルから新規ホームページ制作・運営・保守まで、目的達成を実現いたします。
各種Webサイト・ECサイト制作、広告代行に関するご相談、ご質問などお気軽にお問合せ下さい。

Tel : 03-5324-2318 / Email : info@reinc.jp

各種お問合せはこちらから