« 2007年04月02日~06日の日記 | メイン | ドラクエダンジョン~いろいろ落とした »
2007年04月13日
コメントスパム対策@MT3.31-ja
これまでにも幾らかコメントスパムは届いていましたが、手動削除で対応できるレベルでした。ところが、今週前半からその量が激増(1日で50件弱)。看過できないほどになりました。そこで、MT用のコメントスパム対策を調査しました。
すると、主に下記の対策があるようです。
- mt-comment.cgiのリネーム
- 2バイト文字を含まないコメントを遮断
- コメントごとに任意のキーを入力要求(画像認証)
1番上のリネームは、あまり効果がないようです。うち自身、別の掲示板でスクリプト名を変えて対応しましたが、しのげて数日でした。3番目の任意のキーを入力要求するのが、最も適切かと思いましたが、手頃な導入案内が見つからなかったので、2番目の対策を暫定的に実施しました。
この対策は、英語圏のかたからのコメントが受け付けられないというデメリットがありますが、このブログの場合は気にかける必要はないでしょう(笑。
具体的には、下記のコードを、lib/MT/App/Comments.pmに追加します。位置は、235行目くらいです。
MT->add_callback('CommentThrottleFilter', 1, undef,
\&MT::App::Comments::_builtin_throttle);
# 上は元からあるコードで、その下に以下のコードを追加
if ( ($q->param('text') ne "") && ($q->param('text') !~ m/[\x80-\xff]/) ) {
return $app->handle_error($app->translate("Comment text is invalid."));
}
なお、今回対策を実施したバージョンは、MT3.31-jaです。この対策を適用してから、嵐のようなコメントスパムは、とりあえず治まりを見せています。ただし、これはあくまで一時てきな対策です。日本語スパムには対応できませんし、海外からのコメントを完全にシャットアウトするのも、もったいないです。一方の画像認証は、スパム排除はおおいに期待できますが、入力者の負担が増えてしまいます。そんなわけで、いまだ明確な解は見えていなかったり。
ちなみに、今回の対策において、参考にしたサイトは、下記のとおりです。
- コメントスパム対策 at MT3@akiyan.com
投稿者 bokupi : 2007年04月13日 06:49
トラックバック
このエントリーのトラックバックURL:
http://omoshiro-joho.com/c-i-mnet/cgi-bin/mt/mt-tb.cgi/1366