【Disable XML-RPC Pingback】ピンバックを無効にしてアタック攻撃からWordPressを守る!!

先日、僕が携わっているサイトのサーバーにアタック攻撃がありました。
当然その間ずっとサイトはダウンして表示できない状態。

ログを追って、原因がすぐわかったので対処できたのですが、
アタック攻撃だから仕方ないっちゃ仕方ないけど、
ログにIPアドレスが出てこないんですよね。

IPアドレスを隠して攻撃してきている模様。いやらしい。

で、その肝心な原因なんですけど、
いわゆるDDoS Attacksってヤツで、今回はWordPressの機能であるピンバックを悪用するパターンの攻撃でした。

ピンバックとは?

ピンバックは、双方のブログがWordPressの場合にのみ成り立つ機能で、
リンクを貼ったことを相手に通知して、自分のブログの存在を相手に知らせるために利用されます。

例えば、僕のこの記事のことを紹介し、
Aさんのブログで、この記事のURLを貼り付けたとします。

すると、Aさんのブログから僕のブログに、
ピンバックというリンク貼りましたという旨の通知が自動的に送られます。

僕は、そのピンバックを見て、
Aさんの記事に自分の記事が貼られたことを認識し、
ピンバックを承認すると、僕の該当の記事のコメント欄にAさんの記事のURLが投稿され、相互リンクされたことになります。

ピンバックはコメント欄に投稿され、コメント欄の見栄えが悪くなるので、僕個人的には全く使いません…。

xmlrpc.php を狙ったアタック攻撃

WordPressにはxmlrpc.phpという外部からWordPressをコントロールするためのプログラムがあります。

xmlrpc.phpは管理画面からではなく、他のプログラムやサイト外からWordPressをコントロールするための様々な機能を提供しています。
その機能のひとつがピンバックです。

xmlrpc.phpは外部からWordPressをコントロールするため、
ハッカーによりその機能を悪用されることがあり、
今回はそれのDDoS攻撃(大量のパケットを送信することによりサイトをダウンさせる。)を食らってしまったのです…。

対策

 プラグインでピンバックを無効化する

ピンバック機能を無効にしてくれるDisable XML-RPC Pingbackというプラグインがあります。

このプラグインをインストールして、ピンバック機能を無効にします。

htaccessでxmlrpc.phpへのアクセス禁止

htaccessに

<Files "xmlrpc.php">
order deny,allow
deny from all
</Files>

と記述してxmlrpc.phpへアクセスしても403forbiddenエラーになるように設定しました。

まとめ

ピンバック機能を無効にしてくれるDisable XML-RPC Pingbackですが、
これを有効にすると、メールによる投稿機能が使用できなくなりますのでご注意を。

ちなみに僕はそんなの使ってません…。
(メールで投稿って、やりにくくない?)

あと、インストールしているプラグインによっては、
正しく動作しなくなることもあるのでご注意ください。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする