2006/06/23(金) 14:14
なるほどそういうことだったのか>BBSスパム問題
by がけつ(画力欠乏症)
書き込みフォームでいくら制約をかけても、SPAM書き込みがとまらないBBS。CGIの入力フォームでいろいろとチェックをかけているのになぜ書き込みできるんだろうと思ってました。
なんらかの方法で、書き込みデータに直接アクセスしているのか?とか、クラッキングに近い可能性まで考えてガクブルしていたわけですが、わかってみれば実に簡単。あちらで用意した入力フォームで、入力データだけをCGIに投げてるんですね。
入力フォームが違うんじゃ、そりゃいくら制約かけても効かないわけだ…
#以前誰かに言われたんだけど、その時は意味が理解できなかった俺。orz
というわけで、当面の策として、CGIのファイル名を変更しました。
「アクセスできなくなったぞ?」という方は、お手数ですがトップページから入りなおすようお願いします。m(_ _;)m
COMMENT
名前:Xenon
2006/6/23(金) 21:08
- - - - - -
トップページから入ったがアクセスできんのはなじぇだ
= = = = = =
名前:レビア
2006/6/23(金) 23:46
- - - - - -
他所のBBSで見かけたスパム対策。
可能ならやってみそ、以下最後まで転載
横から失礼します。スパム対策についてですが、
ご使用のPHPファイルを改造することはできるでしょうか。
PHPファイル内で次の文字列
if(strlen($com)
を検索し、
最初にヒットした行(本文の最大文字数をチェックしている行)の次に改行を入れ、
if(ereg("http", $com)) error("httpを含む記事は投稿できません。");
の1行を追加すれば、httpを含む書き込みを阻止し、スパム記事をほぼ100%
撃退することができるように思えます。
‥‥すみません。恥ずかしながらPHPの知識はあまりないので大した
アドバイスはできないのですが‥ではでは失礼します。
= = = = = =
名前:がけつ
2006/6/24(土) 09:52
- - - - - -
>きせやん
うそ!?どこから入ってダメだった?
リンクは一通り修正したはず(テスト済み)なんだがなあ・・・
プロキシ使ってたら、外してみてほしす。
>れびあん
や、それはすでにやってあるのよ>「http」殺し
うちのBBSはCGIなんで、CGIいじって入力チェックしてる。
ただ、相手はこちらのCGIの入力チェックを使ってないのよね・・・
= = = = = =
名前:Xenon
2006/6/24(土) 22:28
- - - - - -
俺はいつもStudio GK2のトップからフレーム無しを選択して、
下のBBSアイコンからBBSへ。キャッシュをクリアしても
Not Foundになるねぇ・・・
= = = = = =
名前:がけつ
2006/6/25(日) 00:15
- - - - - -
うう〜む、同じルートでいってみたんだけど、ちゃんと入れますだorz
キャッシュじゃなくて、プロキシはどーなってますかの。
= = = = = =
名前:Xenon
2006/6/25(日) 12:21
- - - - - -
プロキシとかはいっさい名にもしてねーでげすよ。
ノートン先生入ってるけど。
= = = = = =
名前:Xenon
2006/6/25(日) 21:29
- - - - - -
お、なんか入れるなぁ・・・なんかいじりました?
復活しております
= = = = = =
名前:がけつ
2006/6/26(月) 00:11
- - - - - -
む?なにもいじっておりませんですよ。
まあ結果オーライってことで。
= = = = = =
名前:かみら
2006/6/27(火) 11:38
- - - - - -
>入力フォームが違うんじゃ、そりゃいくら制約かけても効かないわけだ…
がけちは物凄い勘違いをしている。
つーか、POSTでやるとこをGETで送りつけて投げてきてるだけでそ。
入力フォームが違っても、入力文字のチェック機能は動く。
だって、LOGファイルに書き込むのは、サーバに置かれているCGIが
担当しているわけで。
外部CGIからLOGファイルに直接書き込めたら、それこそスーパーハカーだな。
多分、改造した部分が腐ってるだけだと思う。
BBSの改造やるなら、まずPOSTのみ受付してGET受付はしないように改造してみ。
ついでに、2byte文字を含まない投稿はすべて殺す事。
メッセで話せば該当箇所のプログラムくらいはちょちょっとやるよん。
5分もあれば終わると思うしね。
= = = = = =
7.前
0.TOP
9.次