2006年05月21日

【開発室】嫌な予感がする・・・

久しぶりに開発室からの投稿です。

サイトのトップページとかから見て違うブログに飛ぶと驚かれそうなのでタイトルに開発室と明記しておきました。

しかし、最近色々不可解なことが起こってるんですよね・・・
いや、怪奇現象とかじゃないよ

うちの掲示板、なんかspam系な書き込みですぐいっぱいになります。
まあ、これは以前から続いていたことです。

ところが・・・今度はなんと、作品の感想にspam書き込みが来るんですよ!
そんなバカな・・・
何故これがバカな、と驚くことになるのか説明しよう。これまで私は以下のような推測で掲示板にspam書き込みが届くものだと思っていた。

1.spam書き込みは自動化されたプログラムによって行われているはず。

2.自動化できるのは、うちの掲示板プログラムがネット上で沢山使われているフリーウェアで、仕様が広く知れ渡っており、この掲示板に対応するだけでネット上の多くの掲示板に対応できる。つまり、対応するコストに結果が見合うからである。

3.そして掲示板spamプログラムはネット上を同じプログラムの掲示板を求めてさまよい歩き、見つけたものに対して書き込みを自動的に行う。

ところが今回、Jack's Roomの感想にspam書き込みが入ったのだ。

うちの感想のプログラムは私がうちのサイトのためだけに書いた「一品モノ」である。

一品モノのプログラムに対して、個別に書き込み機能を実装していては手間がかかりすぎるので、まずそんなことはしないだろう。

一品モノに対応する簡単な方法として、人力で書き込むことが考えられる。ふつうに人力でうちのサイトにたどり着いて書き込む限りは未知のプログラムであろうと関係ない、ただ入力項目を手で埋めて書き込むだけだ。

ただし、人力はコストがかさむし、書き込まれた結果がうまく表示できていないことからも人力による書き込みではないと思われる。

すると、考えられる方法がもうひとつ。

htmlを読み込んで、内容を解析してあてずっぽうにデータを送信しているのではないか?

プログラムがhtmlを解析したところで、それが掲示板のようなプログラムの入力画面なのか、なにかのメール送信フォームなのか、検索条件の入力なのか、完全には解らない。でも、なんとなくで判断して当てずっぽうに書き込んでしまうのなら、ある程度まで推測できるだろう。

フォーム中にテキストエリアが存在するなら、多分そこが本文であり、そこに宣伝文を書き込めば画面にもっとも効率的に表示されることが推測される。

その他の入力項目は必須チェックにひっかかる場合があるのでとにかく何かを入力してやれば、大抵は突破できるだろう。

さらに、フォームのソースからhiddenで送信されている値を読み出して同じように送信してやれば、大抵のcgiプログラムは正常動作するだろう。ただし、正常動作したところで、意図した宣伝効果が得られる確証はない。確証がなくても、1%でも意図した結果が得られれば、広大なネットの全体に放たれたspam書き込みプログラムは膨大な数の宣伝を実現することができるはずだ。

こんなやり方が広まってしまうと、ネット上のcgiなんてもうほとんど使いものにならない気がする。

ネット上で、自由に書き込めるプログラムがあればなんでも勝手に書き込まれてしまうし、掲示板のようなものではなくて、何かの処理を行うようなプログラムがあれば、それらは意図しないタイミングで起動される恐れがある(そんなケースがあればセキュリティ的によろしくないけれども)。

ユーザー認証とか、画面上に画像で文字を表示して「この内容を入力してね」なんて操作をユーザーにさせることによって、この手の書き込みを防ぐ技術があるが、それはユーザーに負担を強いることであり、ある意味spamに敗北していると言えなくもない。

今来ているようなものであれば、どうにかユーザーに負担をかけずに対策できなくもない。しかし、段々エスカレートするにつれて、私は暗澹たる気分になってくる。

ネットワークの未来は一体どうなるんだろう。
誰にでも開放されていて、誰でも発信できる時代は一時的なもので、もしかしてもうそろそろ終わってしまうのだろうか。そこまで考えるのは考えすぎだろうか?でも私は考えてしまう・・・
posted by Jack at 18:06| Comment(2) | TrackBack(0) | Web系 | 更新情報をチェックする
この記事へのコメント
ん~、『完全に他人事』でどうやって考えれば、
spamを効率良くとかって考えるのは、実行しない限り
プラス(勉強?)になりそうな気もするんだけどねぇ(苦笑)
もちろん、他人には友人、知人を含まずって意味ね。
何処まで行っても、化かし合いになっちゃうのかね?

とりあえず、被害が少ないことを願います。
Posted by ありす at 2006年05月22日 00:04
効率が良い必要ってあんまりないよ。

1.フォームを見つける。
2.フィールドの名前から推測して適当に値埋める。推測できなきゃ適当に半角英数入れときゃ大抵のチェックは突破する。フィールドがテキストエリアなら本文の可能性大。
3.とにかくsubmitする。

これだけ、後はgoogleあたりからそれっぽいURLを沢山引っ張ってくればいい。2の推測部分の精度って、名前と出現順で推測するとかだけで充分だと思う。

それよりも対策側の方が面白いんじゃないかなぁ。掲示板にベイズフィルタを組み込むhackなんていいかなーと最近思っている。というか、汎用ベイズフィルタコンポーネント、みたいなのがあったら素敵なんじゃないかなーと。

結局私自身spamと呼んでいるように、メール上のspamフィルタと同じようにベイズフィルタとかでフィルタするしかないのかなと思います。
Posted by Jack at 2006年05月24日 00:59
コメントを書く
コチラをクリックしてください

この記事へのトラックバック
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。