亜細亜ノ蛾 - Weblog

[SiteSearch Google]

May 06, 2006

対SPAM最終兵器“Junk slowdown”!!

[ad]

タイトルに偽りなし

今回紹介するSPAMコメント・トラックバックの対策方法は、“Junk slowdown”というスクリプトの導入です。

結論から先に言うと、自分がいろいろ試したSPAM対策の中で、一番効果があったのがこの方法です。

まずはその前に、従来のSPAM対策の説明、そして“Junk slowdown”導入方法、導入後の状況を書きます。

まずはおさらい

各種SPAM対策のプラグインは、ほとんどが「コメント・トラックバックを受け取った後で、SPAMかどうか判断する」という流れになります。

しかしその方法では、一日に何十、何百とSPAMによる被害を受けている状況だと、その度にプラグインによるチェックが行われるので、サーバに負担をかけることになります。「毎秒コメントCGIにアクセス」なんて、自宅サーバでは言うに及ばず、レンタルサーバ環境でも恐怖です(追い出されるかも)。

たとえば──ちょっと前の記事ですが、drkさんは2時間程度で約1万件のトラックバックスパムを受信とのことです。恐ろしや……。

トラックバックスパムで攻撃されてます・・・orz :: Drk7jp
トラックバックスパムで攻撃されてます・・・orz :: Drk7jp

MT-Comment.cgiのリネーム

そこで先ずお勧めなのが、コメントCGIの改名です。

コメントCGIもトラックバックCGIも同様に処置できるので、二つのCGIをまとめて、以下「コメントCGI」と呼びます

コメントCGIリネームと“mt.cfg(mt-config.cgi)”の変更方法は、下記を参照ください。

mt-comments のリネーム: blog.bulknews.net
mt-comments のリネーム: blog.bulknews.net

SPAM業者に(何らかの手段で)知られたコメントCGIのURL。それを変えてしまうことで、SPAM送信者から「コメント・トラックバックを受け付けること」自体が無くなります。

──しかし、自分も何度か試しましたが効果があるのは約一週間。その後はまた、一日に何回もSPAMを受けるようになりました。

おそらく──SPAM業者が「コメントCGIの設置してあるURLが存在しない」ということを知り、SPAM送信先を修正するのでは──と想像します。

(余談だが──何回かMT-Comment.cgiをリネームしたけど、毎回毎回、再びSPAMが来るまで一週間のタイムラグがある。〈エラーが出たら自動的にURLを修正するスクリプト〉くらい、簡単に組めそうな気がするが──人間がログを見て、手動で修正しているのかな? ご苦労様! SPAM業者! :-D )

“Junk slowdown”!!

ということで、上記の方法を改善するのが、下記URLにあるスクリプト。英語で書いてあり、自分の語学力では全てを把握できませんが、抜群の威力です。

Solid Wall of Code: MT 3.2: Junk slowdown
Solid Wall of Code: MT 3.2: Junk slowdown

これは要するに「リネームしたコメントCGIの替わりに設置しておくオトリ」です。Perl版とPHP版があり、PHP版の方がお勧めのようです。PHP版はページの半分くらいの“Implementation (Advanced)”にあります。

スクリプトの記述にあるsleepがミソで、アクセスすると30秒間プログラムの実行を遅延させます。おそらく、数秒間隔でのアクセスに対抗するため、と思います(もしくは、タイムアウトエラーを意図的に発生させるため?)。

おすすめの設置方法

“.htaccess”を利用して、「リネームのCGI」へアクセスするとJunk slowdownに飛ばす、という方法が有効です。

  1. 上記スクリプトを設置
  2. コメントCGIをリネーム
  3. “mt.cfg”を変更(MT3.2xは“mt-config.cgi”)
  4. “.htaccess”に下記のように記述
  5. コメント・トラックバックのテストを忘れずに!!

Junk slowdownの設置場所は、ブラウザでアクセスできる場所であればどこでも大丈夫です。

たとえば、Junk slowdownを“/hoge/sand-trap.php”に設置したとします。Movable Typeのインストールディレクトリにある“.htaccess”に以下のコードを追記します。なるべく上の行に追記した方がいいでしょう。


RewriteEngine on
RewriteRule ^(mt-comments|mt-tb|mt-comcom|mt-tbtb)\.cgi$ /hoge/sand-trap.php [LAST]

二行目は「()内にあるファイル名(|区切り)で、拡張子が“.cgi”のファイルにアクセスするとJunk slowdownに飛ばす」という意味です(自分なりに工夫した部分なので、もっとスマートな方法があるかも :P )。

コメントCGIをリネームする度に、上記の()内にリネーム前のファイル名を追加していきます。

導入してどうなったか

自分の環境ではJunk slowdown導入後、一ヶ月の間に一件もSPAMを受信しませんでした! MT管理画面の「迷惑コメント・トラックバック」に一件もSPAMはありません。多いときで一日に数十件のSPAMを受けていたので、これはかなりうれしいです。

(これまた余談──しかし、毎日毎日、〈リネーム後のCGI〉にアクセスはある。一日20~30回程度。いったい、何をしているんだ?)

一日に何万、何十万とアクセスがある(それだけ注目されている)環境だと、もしかするとこれだけではヌルいかもしれません。しかし、やってみる価値のある、効果の高い方法だと思います。

教えてエロいえらいひと

コメント・トラックバックCGIのリネームとMT.cfg・.htaccessの変更を、同時に行ってくれるスクリプトがあれば、週一くらいで実行すると万全なのですが。

あと、激しく疑問なのが上記の「リネーム後のCGIにアクセスはあるのにコメントが届かない」こと。ひょっとして──正式にコメントしているひとが何十人もいる、とか!?

Google Adsense

 

Related Posts with Thumbnails

コメント

コメントを投稿

"対SPAM最終兵器“Junk slowdown”!!" にコメントを投稿することができます。お気軽にどうぞ。

過去の記事

カテゴリィ一覧
  1. その他
    1. 食・健康・生活
  2. ウェブデザイン・文章
    1. Movable Type
  3. ウェブ上で見つけたページ
  4. コンピュータ・エレクトロニクス
    1. PC
      1. Firefox
    2. カメラ・デジタルカメラ
  5. マンガ・アニメ・ゲーム
    1. エヴァンゲリオン/ ヱヴァンゲリヲン
    2. マンガ
      1. DEATH NOTE
      2. HUNTER×HUNTER
      3. SKET DANCE
      4. バクマン。
  6. 本・音楽・映画・TV
    1. 映画