勉強したことのメモ

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

  関連記事

WordPressでデータベース接続確立エラー発生時の対応方法
WordPressでデータベース接続確立エラー発生時の対応方法

WordPressで「データベース接続確立エラー」というエラー表示がされた。大抵 ...

WordPressにて投稿記事及び固定ページの記事数を取得・表示する方法
WordPressにて投稿記事及び固定ページの記事数を取得・表示する方法

WordPressにてページ内に記事数を表示したいというケースがあった。また、通 ...

Contact form7でフォーム送信時に別サーバへもデータを送信する方法
Contact form7でフォーム送信時に別サーバへもデータを送信する方法

contact form7でフォーム送信時に別サーバーでフォーム内容をPOST送 ...

WordPressの記事公開・更新時に何らかの処理を行う方法
WordPressの記事公開・更新時に何らかの処理を行う方法

WordPressで記事を公開(予約公開含む)もしくは更新した際に何らかの処理を ...

WordPressのMedia Library Organizerでダイアログ初回表示時のカテゴリを指定する方法
WordPressのMedia Library Organizerでダイアログ初回表示時のカテゴリを指定する方法

Media Library Organizerを使用中のWPサイトで画像をカテゴ ...