« コメントスパム対策 | メイン | トラックバックスパム »

2005年09月19日

このHPについて雑記:: コメントスパム対策を施す

    

昨夜からコメントスパムが再発。
今日の昼前までに26件ものコメントスパムが。
そこで対策をしようと、以前書いたページのMovableTypeコメントスパム対策の通りにやろうとするが…… テンプレートが違う?
いくつかのテンプレートが異なっているようでhidden属性を埋め込むと言う方法をとるのは面倒臭そうだ。
そこで、スパムから特徴点を抜き出して、それでフィルタリングする方法を考えた。
見てみると、投稿に使われるメールアドレスのドメイン部分がGUIDになってる。
ただ、なぜか33文字。
と言うことで、メールアドレスのドメイン部分にGUIDを持つ場合( /^[^@]+@[0-9a-fA-F]{32}.*\..+/ にマッチするもの)、スパムとして弾くことにした。
具体的にはmt-comments.cgiのuse strict;直下に次の文を加えた。

use CGI qw(:standard);
if ($ENV{'REQUEST_METHOD'} eq "POST") {
  my $email = param('email');
  if( $email =~ /^[^@]+@[0-9a-fA-F]{32}.*\..+/ ) {
    print "Content-Type: text/html\n\n";
    print "An error occurred: メールアドレスがスパムの可能性があるため受理できません。他のメールアドレスを使用してください。";
    die;
  }
}

これでコメントスパムはしばらく一安心。



投稿者 Takenori : 2005年09月19日 16:22




comments powered by Disqus
Total : Today : Yesterday : なかのひと