Open MagicVox.netがオススメするMovableTypeスパム対策まとめ

Posted by
ぴろり
Posted at
2007/01/23 22:53
Trackbacks
関連記事 (1)
Comments
コメント (1)
Post Comment
コメントできます
Category
MovableType

 を開設して誰しも頭を悩ませるのがの嵐です。 特にボット(送信を目的にしたプログラム)による絨毯爆撃を受けて, 泣く泣くコメント欄を閉鎖したりトラックバックの受付けを停止された管理者も多いのではないでしょうか?
 このエントリでは Open .net で実践中の での対策手法をまとめて紹介しています。 ちなみに今現在,ボットに対する排除率は 100% を記録しています。

この記事をはてなブックマークに追加する この記事のはてなブックマーク数 | この記事をlivedoorクリップに追加する この記事のlivedoorクリップ数 | この記事をYahooブックマークに追加する この記事のYahoo!ブックマーク数 | この記事をdel.icio.usに追加する

コメント対策

 英文によるものを目にすることが多く, オンラインカジノやポルノサイトへ誘導するための URL が張られることが多いです。 コメント欄がで埋め尽くされていたりすると, 折角面白いエントリであってもコメントを残す気力も失せてしまいます。 コメントしても読まれないのが目に見えていますからね…  サイトを訪問頂いたビジタとの数少ないコミュニケーションの場ですから是非とも堅守しましょう。

Step.1 - コメント投稿スクリプトのファイル名変更

 コメントの投稿を受付けるスクリプト()は の初期設定では mt-comments.cgi というファイル名になっています。 最近はさすがに数が減ってきましたが,ボットの中にはこのファイル名に対して決め撃ちでアクセスしてくるものが未だにあります。 そのためこのファイル名を変更することは一応の効果があります。

  1. をインストールしたディレクトリにある mt-comments.cgi のファイル名を変更します(例えば post-komment.cgi など)
  2. の設定ファイル(mt-config.cgi)をエディタで開き,先ほど変更したファイル名に合わせて以下の行を追加します

バージョン 3.2 以前の設定ファイルでは # でコメントアウトされているので,行頭の # を削除してから修正します

Step.2 - コメント投稿スクリプトのファイル名隠蔽

 Step.1 でスクリプトの名前を変更しただけでは効果がありません。 変更したファイル名がコメント投稿フォームの中に埋め込まれてしまっているためです。 そこで JavaScript を使ってこのファイル名を隠蔽することにします。
 この方法の良いところは,ボットがスクリプトへのアクセス自体を防ぐことにより,サーバ負荷を大幅に軽減することができるという点です。 後述する などの手法は非常に有効な手段ではあるものの,スクリプトが起動してからを拒否するという動作のために,スクリプトへの絨毯爆撃が行なわれるとサーバが落ちるなどの危険性があります。 を評価できないボットは,この段階で間違った URL へアクセスを試みて 404 Not Found エラーとなります。
 Open .net でのアクセスログを観察してみると,この段階でボットによるアクセスは 100% 防げているようです。 の怪しいドメインからのアクセスは間違った URL へのコメント投稿を試みて尽くエラーとなっていることが伺えます( ̄ー ̄)

Step.3 - コメント欄への 導入

 最後の砦は対策の切り札とも言える です。 Step.2 で紹介した を用いる方法は機械的に突破するのが比較的容易く,対策方法として有効なのも時間の問題でしょう。 については機械的に突破するためのコストが著しく高いため,ボット対策としては当分は効果的です。
 Open .net では自作の CAPTCHA システムを導入しています。 ビジタに一手間を強いるのは気が引けますが,による機会損失を考えると導入を検討するに値するでしょう。

トラックバック対策

 トラックバックでの対策も基本的にはコメント対策と似ています。 トラックバックは外部で言及されたリソース同士を結びつけるための重要な仕組みです。 トラックバック欄が充実した記事はそれだけでハブとしての的価値を持ちます。 そんなステキな仕組みをのために無駄にするのは勿体無いことです。

Step.1 - トラックバック用スクリプトのファイル名変更

 コメント対策と同様の理由から,未だにトラックバック用のスクリプトを決め撃ちしてくるボット対策です。 このスクリプトは初期設定では mt-tb.cgi というファイル名になっています。

  1. をインストールしたディレクトリにある mt-tb.cgi のファイル名を変更します(例えば trackback-me.cgi など)
  2. の設定ファイル(mt-config.cgi)をエディタで開き,先ほど変更したファイル名に合わせて以下の行を追加します

バージョン 3.2 以前の設定ファイルでは # でコメントアウトされているので,行頭の # を削除してから修正します

Step.2 - Trackback Auto Discovery の削除

 Step.1 でファイル名を変更しても,その変更したファイル名が漏れてしまっては意味がありません。 には Trackback Auto Discovery という仕組みがあります,ここにそのファイル名が書かれてしまっています。 の管理画面から[]-[アーカイブ]と進み,個別アーカイブを修正することでこれを削除できます。 アーカイブ中に ntryTrackbackData というタグが在る場合,このタグを削除します。
 これによりボットはトラックバック URL を機械的に知ることが難しくなりました。 トラックバック用スクリプトへのアクセスが激減することから,サーバ負荷も大きく下がることと思います。
 なお,Open .net では,この段階でトラックバック排除率が 100% です。 未だにファイル名を変更する前の mt-tb.cgi 宛に来て 404 Not Found エラーになるものが居ますが, 変更後のスクリプトにアクセスできたものは未だありません( ̄ー ̄)

 この Trackback Auto Discovery の仕組みを無効にすることにはデメリットもあります。 hxxk.jp - Movable Type の Trackback auto-discovery にその機能の概要やメリット,デメリットがまとめられています。

Step.3 - トラックバックへの 導入

 ボット対策の決定打はやはり だと言えます。 の導入は少し敷居が高いものの,効果は十分に期待できます。 この をトラックバックにも利用できればボット対策にも心強いものです。
 Open .net では,トラックバック URL の告知欄で コードの入力をお願いしています (その一例)  そしてプラグインを用いて,正しい コードが入力されていないトラックバックはエラーとなるようにしています。

『人間の敵は人間である』

 これまでに挙げた方法でボットによって機械的に行なわれる行為はほぼ防げるものと思います。 しかしそれでも尚,送られてくるトラックバックやアフィリエイトサイトへ誘導するための宣伝は防ぎようがありません。 これについては注意書きなどでお願いするくらいしか方法がないのですが,こういった行為をする相手にはお願いなんて読まれているハズもありません。 頭痛の種は永遠に無くならない訳ですね。合掌。

参考


この記事を読んだ人はこんな記事も読んでいます ?

その他の関連する記事


関連記事/トラックバック (最新 5 件を表示しています)

Open MagicVox.net のスクリーンショット
タイトル
最近のスパム迎撃状況
Trackbacked at
2007/04/25 22:29
from
Open MagicVox.net
評価
Web Scouter
概要
 Open MagicVox.net では, コメントやトラックバックに 様々なスパム対策を施しているお陰か, スパムボットによるスパム被害というものが...

この記事のトラックバック URL

寄せられたコメント (最新 5 件を表示しています)

Posted by
ゆめのあと
at
2007/10/14 10:41
ID
OOebfLvY

初めて投稿させていただきます、ゆめのあとと申します。
コメントスパム対策を探していて、ここに辿り着きました。
参考になります。

サーバの負荷を軽減する方法はないかと探していましたが、
JavaScriptによるファイル名の隠蔽は今のところ効果的に機能しています。

有益な情報をありがとうございます。

コメントを投稿する

 (必須/公開)
 (必須/非公開)
 

コメントスパム防止のため投稿前に ランダムな数字 ? を入力してから投稿してください。 お手数ですがご協力のほど宜しくお願いいたします。(必須)