コメントスパム対策[MT3]
Movable Type 3.01D-ja用。
MT2用と同じように、記事のサブジェクトをキーとしてスパムかどうかをチェックします。
[2004/10/22追記]
ここに書いたように、最近のコメントスパムは巧妙になってきていて、一筋縄では回避できない。そのため、9/23に更に回避コードを入れました。**********を使ってダイナミックに*を設定しています。(明記したくないので、ソース等ご希望の方はコメントください)
[追記]
このパッチの主眼点は、
・キーをエントリ毎に替える事で安易なクラックを抑止できる
というものです。
まず、コメントフォームに以下のキーを設定します。
[MT-dir]/lib/MT/App/Comments.pmを以下のように変更します。
$ diff Comments.pm.bak20040729 Comments.pm
135a136,147
> #-- 2004/07/29 miya; reject comment spams
> {
> my $author = $q->param('author') || '';
> my $url = $q->param('url') || '';
> my $email = $q->param('email') || '';
> unless (defined $q->param('tid') && $q->param('tid') eq $entry->title) {
> $app->log("$author/$url/$email banned because comment posted without valid tid");
> return $app->error("comment posting is not permitted");
> }
> }
> #-- end
コメントスパムはMTのシステムログに記録されます。(以下例。改行してます)
2004.07.29 09:03:34 210.xxx.yyy.zzz miya/http://japo.net/miya//mailaddress@example.net
banned because comment posted without valid tid
コメント
コメントスパム対策をすり抜けてくるコメントスパムが急増してきた。
対策を強化せねばならない。
投稿者: miya | 2004年9月23日 21:23
強化版実装。
投稿者: miya | 2004年9月23日 22:14