User-Agentでスパムを弾いてみる

CAPTCHAを導入してから3日経ち、状況がどうなっているかAkismetをチェック。

akismet.png

相変わらず引っかかっててあんまり変わらんなあ…と、ここで気付いた。もしかしてwp-comments-post.phpとかwp-trackback.phpをスパムbotが直接叩いてるんじゃないか。ということで2007/Octのアクセスログからwp-comments-post.phpとwp-trackback.phpへのアクセスを拾ってみた。

url.png

やっぱりそうだ。なんだよこのwp-trackback.phpに月間5,396hitsって…これじゃCAPTCHAを使う意味がない orz…。
どう対策しようかなあ…と思い、まずこのスパムbotを判別する方法はないかなと色々模索。アクセス元の情報を知るにはまずHTTP環境変数だ、ということでUser-Agentをアクセスログから拾ってみる。2007/Octのアクセスログより4桁を記録しているUser-Agentを調べてみると、

ua.png

「TrackBack/1.02」「TrackBack/1.6」といういかにも怪しそうな奴らが…アクセス数的にも合致するので、まずこいつらを排除することにする。おまいらにはpostさせねーぞ、ってことで.htaccessに、
SetEnvIf User-Agent "^TrackBack/1.02" ua_spam
SetEnvIf User-Agent "^TrackBack/1.6" ua_spam
<limit POST>
order allow,deny
allow from all
deny from env=ua_spam
</limit>

と設定してみた。他にもBecomeJPBotとか余計な奴らがいるが、こっちは様子見で。あと無意味そうなCAPTCHAは外すことに。これでどうなるかまた様子をみたいと思う。

タイトルとURLをコピーしました