LWP(libwww-perl)を使う時には固有な agent を名乗らないとスパム扱いされる可能性がある罠

ここのところ、アクセスログばかり眺めています。ここのと、バレーボールのブログのやつ。503 頻発などが立て続けに起きたので、少しでも負荷を減らすためにはどうすベーと、毎日考えているのです。

で良く見ていると、以下の3つの Agent が目に付きました。

  • libghttp/1.0
  • TrackBack/1.6
  • TrackBack/1.02

こいつらが mt-tb.cgi(実際はリネームしています)を叩きまくっています。どうやら、トラックバックスパムの送信元のようです。

libghttp/1.0 に関しては、以下のようなことらしいです。

これは、もともとスパムウェアではないライブラリを、スパマがスパム送信に転用しているものと思われます。

ふむふむ。更に TrackBack/1.xx は以下の通り。

3番目にある『TrackBack/1.6』ですが、MovableType のトラックバック技術仕様書にあるサンプルコードから来ているのではないかという情報があります。

ふむふむ。

まぁ、どれもトラックバックスパムしか送って来ないようなんで、さくっと .htaccess で弾くことにしました。

SetEnvIf User-Agent "^TrackBack/1.6" tb_spam
SetEnvIf User-Agent "^TrackBack/1.02" tb_spam
SetEnvIf User-Agent "^libghttp/1.0" tb_spam
order allow,deny
allow from all
deny from env=tb_spam

で本題。

上記のことを調べている中で、以下のエントリを知りました。

その代表的な例が最初にも書いたGoogleで、ユーザーエージェント名に「libwww」が入っていると検索結果画面がことごとく「403 Forbidden」エラーを吐いてくれるようになります。

ええーそんなまさかーと思い、User Agent Switcher で Agent 変更してアクセスしてみると、ホントだ 403…。

日常的に LWP(libwww-perl)を利用し、しかし固有の Agent を名乗るなんて意識したことない身からすると寝耳に水ですが、まぁ、スパム扱いされたくなければ固有の Agent を名乗りなさいということですね。 Agent 変更するのはさっぱり難しくないですし。

Agent の設定、てか LWP の使用方法は以下を参考に。

しかし変更は簡単なんだから、そのうちスパム側も Agent 変更してくるんでしょうね…。