勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ

WordPressのxmlrpc.phpに対する攻撃の対策方法

   2024/02/25  WordPress

サーバーの死活監視をしているシステムから、1つのサイトが落ちているとアラートがきた。ロードアベレージが跳ね上がっており、apacheのアクセスログを確認すると海外のIPからWordPressのxmlrpc.phpに対してアクセスが集中していた。以下に対策方法と、これは何だったのかをメモ。

 

対策方法

ファイアウォールで該当のIPを遮断。

-A RH-Firewall-1-INPUT -s xxx.xxx.xxx.0/24 -j DROP

WordPressのhtaccessでxmlrpc.phpへのアクセスを制限。index.phpのリライトルールの前の行に以下を追記。

RewriteRule ^xmlrpc\.php$ "http\:\/\/0\.0\.0\.0\/" [R=301,L]

 

xmlrpc.phpとは

WordPressに対して外部から記事の投稿を行う為のファイル。スマートフォンのアプリとかから投稿する際に、このファイルを使っているみたい。

 

結局何だったのか

xmlrpc.phpを狙った攻撃でよくあることらしく調べると結構な記事数が見かけられた。

 - WordPress

  関連記事

Advanced Custom Fieldsでセレクトメニューを動的に生成する方法
Advanced Custom Fieldsでセレクトメニューを動的に生成する方法

WordPressでカスタムフィールド設定用のプラグインAdvanced Cus ...

WordPressで画像にカテゴリを設定し、記事投稿の際の画像選択時に指定したカテゴリの画像のみ表示させる方法
WordPressで画像にカテゴリを設定し、記事投稿の際の画像選択時に指定したカテゴリの画像のみ表示させる方法

WordPressのメディアライブラリに画像を沢山登録していると、記事投稿の際の ...

WordPressのCron設定(wp-cron.php)を変更し負荷対策する方法
WordPressのCron設定(wp-cron.php)を変更し負荷対策する方法

WordPressのcron設定(wp-cron.php)を変更することで負荷が ...

WordPressで閲覧者にテーマを変更させるプラグイン(Theme Switcher)
WordPressで閲覧者にテーマを変更させるプラグイン(Theme Switcher)

「新規サイトを○○みたいなイメージでWordPressのテーマを見繕って欲しい」 ...

Polylangのスイッチャーでクエリ(GETパラメータ)を引き継ぐ方法
Polylangのスイッチャーでクエリ(GETパラメータ)を引き継ぐ方法

WordPressで多言語サイトを作成するにあたりPolylangというプラグイ ...