コメントスパム対策

* 3 Comments * 6 TrackBacks

再度。って感じなのですが。
まずは、テストです。

MTHashを使います。
Forcing Comment Previews at Musings

 

Reference :
Forcing Comment Previews at Musings
スパム対策を強化 at Zakimi::Blog
プレビューボタンのみ表示してhashを仕込むというコメントスパム対策
at Going My Way
コメントスパム対策 at 日々の移ろい


MT 3.11-ja用。覚え書き。

your-mt-folder/lib/MT/Template/Context.pm

1200行目過ぎくらい。
    if ($cookies && $cookies->{commenter_name} && $cookies->{commenter_name}->value()) {
        $commenter_name = MT::I18N::encode_text($cookies->{commenter_name}->value(),'utf-8',undef);
    }


    if ($registration_allowed || $unregistered_allowed) {
        $javascript = <<JAVASCRIPT;

の間。

    require Digest::SHA1;     my $sha1 = Digest::SHA1->new;

    $sha1->add( $entry_id . $ENV{'REMOTE_ADDR'} );

    my $salt_file = MT::ConfigMgr->instance->PluginPath .'/salt.txt';
    my $FH;
    open($FH, $salt_file) or die "cannot open file <$salt_file> ($!)";
    $sha1->addfile($FH);
    close $FH;

    my $comment_validated = $sha1->b64digest . "=";

1300行目過ぎくらい。
<p><label for="text"><MT_TRANS phrase="Comments:"></label> $allow_comment_html_note<br />
<textarea tabindex="4" name="text" rows="10" cols="50" id="text">$comment_text</textarea></p>


<div align="center">
<input type="submit" name="preview" value="&nbsp;<MT_TRANS phrase="Preview">&nbsp;" />
<input style="font-weight: bold;" type="submit" name="post" value="&nbsp;<MT_TRANS phrase="Post">&nbsp;" />
</div>

の間に

<input type="hidden" name="validated" value="$comment_validated" />

your-mt-folder/lib/MT/App/Comment.pm
250行目付近。
    if (!$q->param('text')) {
       return $app->handle_error($app->translate("Comment text is required."));
    }


    my ($comment, $commenter) = _make_comment($app, $entry);
の間に

    require Digest::SHA1;
    my $sha1 = Digest::SHA1->new;

    $sha1->add( $entry_id . $ENV{'REMOTE_ADDR'} );
    my $salt_file = MT::ConfigMgr->instance->PluginPath .'/salt.txt';
    my $FH;
    open($FH, $salt_file) or die "cannot open file <$salt_file> ($!)";
    $sha1->addfile($FH);
    close $FH;
               
    my $digest = $sha1->b64digest . "=";

    if ($q->param('validated') ne $digest) {
    return $app->handle_error($app->translate(
            "Please preview your modified entry before posting it."));
    }


Previewをしないと投稿出来なくなっています。
それを確かめたら、
Individual Archives TempleteにあるPostボタンを
削除します。
で、Rebuild!!


はぁ。
これ、凄く手間取ったんです。
原因は良く分からず。
ということで、きちんとメモ。でした。

6 TrackBacks


 


 


 

TypeKeyでコメントスパム対策するのも悔しいのでいろいろ対策方法を検索してみ... Read More

大量にくる訳ではないんですが、ウザいコメントスパム。巷には色々なコメントスパム対... Read More

とりあえずスパム消すの飽きたので放置。するのもなんだから、女子藷月号さんとこを参考に、簡単な対策を施してみる。……本当に簡単な対策だなコレ。コロンブスの卵的発想だ。駄目なら"コメントスパム対策 :小林Scrap Book"とか"コメントスパム対策:Hitori-goto"とか"Mova... Read More

「コメントスパム」の被害にとうとうあいました。 宣伝や意味の無い内容をコメント投... Read More

コメントスパム対策にMTHashを導入してみた。結果は(これまでのところ)大成功。 Read More

コメントスパム対策 MTHash編
from 縁にまつわるエトセトラ。。
on June 21, 2005 6:36 PM

さくらレンタルではサブドメインが設定できますのでサブドメイン取得しそちらで、もう... Read More

3 Comments

こんばんは。MTのスパムに業を煮やして対策方法探していました。参考にさせて頂きます。
トラックバック文字化けしていますね。垂オ訳ありませんでした。(汗)


お返事遅くなって垂オ訳ありません。
TBの文字化け高ないですよ。
なんか、新しいバージョンでは対策とられてると
聞いたのに、なんか駄目なんですよね・・・。


コメントスパムが来るようになり、こちらにたどり着きました。 MT3.01D-j なのですが、コメントできなくなってしまいました。お暇な時にでも助けていただけないでしょうか。こんなのが出ます。
Use of uninitialized value in string ne at lib/MT/App/Comments.pm line 246.


Leave a comment

OpenID, VoX, Hatenaお使いの方は
これらのIDでログインしコメントできます。
(will not be published, but required * 必須ですが表示はされません)
Heart Star Blink Star ♪ ♪♪ Tear Sweat! Bomb 髑髏 Caution! Caution! 蛙 蛙2 兎 パンダ 魚 金魚
Smile1 Smile2 Smile3 Smile4 Smile5 Smile6 Leaf Red Leaf Yellow Leaf 楓 椛 銀杏緑 銀杏 木 桜 木 木
Powered by MT Smileys

<__trans phrase="run-periodic-tasks script is running...">

March 2010

S M T W T F S
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      

Recent Entries

Recent Comments

Recent Trackbacks