人気者になればなるほど攻撃が増えると言われますが、これは今のWordPressにまさに当てはまります。WordPressブログにおける大規模なコードインジェクションと隠しリンクが大きな注目を集めており、今夜私は別の攻撃形態であるWP Trackbackスパムによる洪水も発見しました。
攻撃は単純かつ効果的です。wp-trackback.php に HTTP リクエストを大量に送信するものです。実際には DDoS のようなものです。これを行う方法はいくつかあります。
- ソフトウェア駆動型。1,000 件の HTTP 同時リクエストを特定のサイトやウェブページに送信できるソフトウェアをいくつか見たことがあります。
- コード埋め込み。ターゲットとなるページ(この場合は wp-trackback.php)を、ページ読み込み時にそのページへのリクエストを行う人気のあるページまたはサイトに組み込みます。同様の手法を多くの高トラフィックなサイトで実行すれば、即座にスラッシュドット効果が得られます。
- ボット。GoogleBot や Yahoo! Metacrawler に似ていますが、これらは悪意ある目的のみを持ち、特定のページ(wp-trackback.php)のみを狙います。
実は大変な事態でした。ブログが攻撃を受けたうちの1台のサーバーを約6時間監視していました。この攻撃はDigg効果やSlashdot効果のように見えました。しかし、あらゆる反Digg対策では対応できず、WP-SuperCacheでさえも撃退できませんでした。そしてふと気づきました。もしかするとページがキャッシュされていないのではないか、と。
分析による確認では、以下の結果となりました:

WP-Shortstats がそれを追跡していました。ブログのほぼすべてのページに対して、数時間以内に数千件のトラックバックリクエストが殺到しました。
状況を悪化させたのは、wp-shortstats プラグインもこれを記録していることだ。つまり、ページリクエストごとに Shortstats によって対応する SQL クエリが実行され、状況が悪化している。
その結果——遅く、 crawl するブログ;最終的には、過負荷またはクラッシュしたサーバー。
解決策は?トラックバックの無効化では役に立ちません。wp-trackback.php を削除するか、CHMOD で 000 に設定する必要があります。IP アドレスを特定できる場合は、それらのアドレスもブロックしてください。
ブログは正当なトラックバックを送受信できなくなりますが、現時点ではこれが唯一の解決策です。
Hi there, I would like to subscribe for this weblog to take
most up-to-date updates, therefore where can i do it please assist.