にしし ふぁくとりー(西村文宏 個人サイト)

Presented by Nishishi via Movable Type. Last Updated: 2015/09/22. 13:24:39.

スパム対策(禁止ワード指定)掲示板CGIってのは

BBSへのスパム投稿を完全にブロックする方法はないでしょうが、「禁止ワード」を指定しておいて、それをブロックするという方法が使えれば、そこそこスパム投稿を防げるんではないかと思います。

スパム投稿は、たいていアダルト系サイトの宣伝なわけですから、それらしい言葉とURLが必ず含まれるわけで。禁止ワードの選定はそれほど難しいことではないような気がします。もちろん、十分な量を用意するには時間がかかるかも知れませんが。

禁止ワードの設定によって、スパムではない投稿が妨げられるという可能性は、あんまりないんじゃないかと思います。もちろん、そのBBSが扱う主な話題にも寄るでしょうが。

で、某SIGのBBSにスパム投稿が多いので、BBSのCGIに直接手を加えて禁止ワードを設定しています。まだ、どの程度効果があるかは分かりませんが(実施したばかりなので)。

禁止ワードの指定機能があるBBSってのは、どっかで公開されてるでしょうかね?
最近、あんまりBBSのCGIを探すことがないので、全然リサーチできてないのですが。

今日、大学からの帰りのバスの中で、ふと思いついたんですよ。
禁止ワードを指定できる掲示板CGIを作ってみたら需要あるんじゃなかろうか、と。^^;
禁止ワードリストは、各CGIが個別に持つよりは、どこかにブラックリストファイルみたいなのがあって、そこを(orそこも)参照できると便利そうですね。

掲示板CGIって、世に溢れてるから今さら自分で作る気がしなかったんだけど、そういう付加価値のあるCGIなら作ってみようかな?という気になります。(まあ、既にあるかも知れないのだけど。)

コメント

今はどうなのかわかりませんが、昔は、投稿元REFERERを確認して、きちんと自分の設置した場所から投稿していたか確認してましたね。

って最近はこの値を見事に詐称してくるので、だめですね。

ついでに、SPAMは大抵の場合、同じIPであることが多いですね。
安くなったBB接続のおかげで、頻繁に切断・接続をする人が少ないみたいですし。
#もしかしたらうちに来たコメント&TBSPAMのみの話かもしれないけど。

投稿者 匿名希望改め宣dうわなにをするやm(ry : 2005年12月07日 09:28

Refererチェックはいいですねえ。…と思ったら今はダメですか。(笑)

スパムは同一IPからも大量に来ますが、ブロックしてもIPを変えてくるのでキリがないのです。このブログだけでも、既にブロックしてるIPアドレス数は100に達していますし…。(笑)

IPではなくホスト名の一部でブロックしようとしても、OCNとかBIGLOBEとか有名なプロバイダを使ってると、対象範囲が広くなりすぎてブロックしにくいですしね。(善良な投稿者の投稿はブロックしたくないわけですから。)

投稿本文の単語でチェックする方法なら、もし善良な投稿者がチェックにかかっても、文面を変えれば投稿できるわけで、問答無用で拒否することにはならないかなと。

投稿者 にしし : 2005年12月07日 12:23

> Refererチェックはいいですねえ。…と思ったら今はダメですか。(笑)
もしかしたら、有効かもしれません。
確証無いですけど。

となると、やっぱり単語チェックですかね・・・
カテゴリわけしたデータベース作って、一日一回ぐらいで同期処理してもらってダウンロードするようにしてもらえば、いろんな人が利用できそうですね。
(ダウンロードも、新規と差分と二つ用意できれば・・・)

投稿者 宣dうわなにをするやm(ry : 2005年12月07日 13:26

禁止ワードのデータベースには誰でも新しく禁止ワードを追加できる方がいいと思うのですが、そうすると、禁止ワードのデータベースに対するスパム対策が必要になりそうな気もしたりして。(笑)

まあでも、とりあえずこんなのができたらおもしろそうです。

投稿者 にしし : 2005年12月08日 12:15

> 禁止ワードのデータベースには誰でも新しく禁止ワードを追加できる方がいいと思うのですが

一つとしては、にししさんだけが書き換えられるようにしておくという形にしておくという方法ですかね。
もう一つは、信頼できる人のみ更新という形ですかね。
スパムデータベースが信頼できない人から更新されるのが問題であれば、更新者を一部の人に限定すれば、いいかもしれません。

「こういうワードならスパムとして認識してください」という内容の投稿は誰でもできるようにしておくというのもいいかもしれません。
ただし、SPAM業者対策として「どのワード」かわからないように、データベース管理者(と書かせていただきます)以外は投稿内容が見えないようにしておく必要はあるかもしれません。
そうすると、投稿者が不安でしょうから、投稿者の名前、投稿した日付ぐらいは残るようにして、「コメントはスパム対策用に管理者以外は見えません」と書いておけば、少しはスパム業者へ溜飲が下げられるかも・・・
って、なんか違う方向へ書き始めてしまった・・・

投稿者 宣伝中止! : 2005年12月08日 18:14

とりあえず、今後の開発スケジュールに組み入れようかなあ…。

検索してみると、需要はありそう。
ただ、供給もあるみたいだけど。^^; Movable Typeにも、最新版(3.2)には禁止ワード設定機能が付いたみたいですねえ。ここも3.2にアップグレードさせようとは思っているのですが…。

しかしまあ、とりあえず作る方向で考えよう。

投稿者 にしし : 2005年12月09日 14:44

UNIX系のサーバーならcgiを直接変更しないで禁止ワードを設定できますよ。
今までの掲示板のファイル名がbbs.cgiだったとします。
まずbbs.cgiのファイル名をold.cgiと変更して
bbs.cgiの中身を次のように書き換えれば
禁止ワードを含む投稿をはじいてくれますよ。

#!/bin/sh
cat > tmp
if [ -z "`grep -e 禁止ワード1 -e 禁止ワード2`" -f tmp ] ; then
 cat tmp | ./old.cgi
else
 echo 'Status:204 No Response'
 echo
fi

投稿者 美知太郎 : 2006年04月09日 23:26

美知太郎さん、どうもです。
シェルスクリプトを使えばこんなことも可能なのですねー。これは目から鱗でした!
情報どうもありがとうございますー。

投稿者 にしし : 2006年04月10日 02:37

コメント数: 8件

コメント投稿欄 この日記に対するコメント投稿を歓迎します。

保存しますか?



※本文中にURLは書けません。(書くと投稿が拒否されますのでご注意下さい。)

※投稿内容は、実際にページ上に掲載される前に、管理者によって確認される設定にしている場合があります。その場合は、投稿後にその旨が表示されます。たいてい1~2日以内には表示されるはずですので、気長にお待ち願います。m(_ _)m

トラックバック

このエントリーへのトラックバックURLを表示するにはここをクリック
※スパム防止のため、トラックバックURLは別ウインドウで表示します。(JavaScriptが有効でないと表示されません。)

--- 当サイト内を検索 ---