昨日から急に このサイトのコメント欄に、内容とは関係ない商業的な書きこみが増えた。
どうやら MT(MovableType) Comment Spam という、新手の Spam 攻撃らしい。
MovableType では、管理者がコメントの書きこみや Talkback を禁止するIPアドレスを指定できる。この設定をしておけば1度は広告を書きこまれるが2度めは防ぐことができる。 このサイトでは今後、オレが関係ないと判断したコメントやTalkback は削除していき、書きこんだときのIPアドレスは禁止リストに登録されていくようにした。
それ以外にも、Google で検索したら簡単な防御方法を見つけたので紹介しておく。
So, here's a quick fix -- it will keep out the lightweights at least. It's a start as other efforts are underway.
ポイントはSpamを投稿するのは人ではなくて、専用のプログラムだということ。
hidden 属性のフィールドを追加して、コメントの投稿時にそのフィールドがあれば、人からの投稿。無ければプログラムからのSpam投稿ということで、拒否すればいいというわけだ。
具体的には以下のとおりに設定する。 ここに書いてある内容は
からの翻訳版だ。
この方法は以下の MT templates の修正が必要になるIndividual data entry
Comment Listing Template
Comment Preview Template
Comment Error Page</form>タグの前の行に以下のフィールドを追加する。
<input type="hidden" name="snoop" value="goaway" />name と value のフィールドは以降のテンプレートやプログラムで同じものを使えば変更が可能だ。
次に、mt-comments.cgi (または mt-comments.pl) ファイルを開き、次のコードを "use strict;" 行の次の行のところに挿入する。
use CGI qw(:standard); if ($ENV{'REQUEST_METHOD'} eq "POST") { my $data = param('snoop'); die unless ($data); }ほとんどの人が CGI.pm perl モジュールをインストールしているはずだ。 'snoop' という単語が自分で決めたフィールドの名前になっていることを確認して欲しい(spammerの仕事を少しでも増やすために、いろんな種類のフィールドを使おう)。
以上。.

コメントする