【仕様】荒らし対策掲示板【実装】 [sc](★0)
-
- 33
- 1
- 2003/08/22 18:38
-
入力の必要無いスクリプト側だけで対応できる画像チェックコード思い付いた。
生成したランダムな数値を元に画像を連結するとこまでは従来の物と一緒。
ただ、記録する発行済みチェックコードリストには、
生成された連結画像のpack値をこれまたランダムに生成した種を元にcryptした値と、種を記録。
投稿時には、表示されてる画像のpack値を、記録されてる種でcryptして、記録されてる値と比較。
一致したら、投稿許可。
criptした値の桁数も、これまたランダムで生成した値を元に調整するとさらに頑丈かも。
どうだろう?
-
- 34
- 2003/08/22 18:39
-
被害元のほうかよ
間隔あけてりゃ問題ない
もっといえばレスポンス見て間隔変えればいい
アク禁なんて串でどうにでもなる
串制限しないんだろ?
-
- 35
- 2003/08/22 18:42
-
で、どうやって画像のpack値送るんだ?
いってみれ
-
- 37
- 2003/08/22 18:50
-
hiddenフィールドで送るなら一緒だぞ
それ以外に方法あるならいってみれ
-
- 39
- 2003/08/22 19:03
-
へーどうやって送るの?
-
- 40
- 1
- 2003/08/22 19:04
-
あー、なんか間違ってる。俺(´Д`;)
-
- 41
- 1
- 2003/08/22 19:08
-
本体側で全部処理しなきゃいいんでない?
-
- 42
- 2003/08/22 19:12
-
とりあえずもっとわかるように書け
誰がどのようにして送るか
それをどうチェックするのか
-
- 43
- 2003/08/22 19:13
-
ちょっとテスト。
これ、俺、ちゃんと書きこめてるよね?
見えてるしょ?
返事してください!
-
- 45
- 1
- 2003/08/22 19:30
-
bbs.cgi(掲示板本体)アクセス時
↓
code.cgi(チェック用)をreadモードで起動
↓
ランダム値(1)を生成
↓
ランダム値(1)を元に用意しておいた画像を連結して、連結画像を生成
↓
連結画像を元にpack値を生成
↓
ランダム値(2)を生成
↓
ランダム値(2)を種として、pack値をcrypt
↓
ランダム値(3)を生成
↓
ランダム値(3)を元にして、crypt値の桁数を調整し、コード(1)を生成
↓
コード(1)、ランダム値(2)、ランダム値(3)を記録。
↓
掲示板には連結画像を表示
-
- 46
- 1
- 2003/08/22 19:30
-
bbs.cgi(掲示板本体)書き込み時
↓
code.cgi(チェック用)をwriteモードで起動
↓
掲示板の連結画像を元にpack値を生成
↓
記録されてるランダム値(2)を種として、crypt
↓
記録されてるランダム値(3)を元にして、crypt値の桁数を調整し、コード(2)を生成
↓
記録されてるコード(1)とコード(2)を比較
↓
一致したら、書き込み許可。一致しなかったらはじく。
-
- 47
- 2003/08/22 19:34
-
あいかわらずpack値をどうやって投稿者が送るのかちっともわかりませんですよ・・・
-
- 49
- 2003/08/22 19:41
-
見た感じcode.cgiはbbs.cgiと別個であるようだが
そうだとするとcode.cgiに投稿者がアクセスするのはbbs.cgiの処理がおわった後になるわけだが・・・
-
- 51
- 2003/08/22 19:48
-
連続投稿は文字数や行数を数えて±3ぐらいまでで一致したらはじいて
IP規制して数時間後に規制したIPを開放ってのはどうですか?
-
- 53
- 2003/08/22 19:59
-
荒らしを晒しあげて懲らしめた実績を、架空でもいいから公開しておけば
プログラムレスで簡単な抑止力になるかとふと思った。
-
- 55
- 2003/08/22 20:08
-
>>53
余計燃えるやつが居ると思われ
-
- 57
- 2003/08/22 21:21
-
2chのIDの仕組みってどんなの?
IP変わってもIDが変わらないんだったら
IP規制じゃなくてID規制にするとか
-
- 58
- 2003/08/22 21:29
-
>>57
IP変わればID変わる
IDは・・・
$idnum = $ENV{'REMOTE_ADDR'};
$idnum =~ s/\./0/g;
$idcrypt = substr(crypt(substr($idnum,0,8),$mday), -8);
if ($iddagora > 0){
if ($iddagora == 1){
if ($in{'email'} eq ""){ $date = "$date ID:$idcrypt"; }
else { $date = "$date ID:???"; }
}
if ($iddagora == 2){$date = "$date ID:$idcrypt";}
}
こんな感じ?
-
- 60
- 2003/08/22 21:48
-
日付、リモートアドレス、板ID
-
- 61
- 2003/08/23 01:29
-
レベル低い…
-
- 62
- 2003/08/23 01:36
-
>>50
とりあえず色々とわからん
組めるなら組んでみろ
そのほうがはやそうだ
・掲示板の連結画像を元に
連結画像はcode.cgiが作るのではないのか?
code.cgiが毎回ランダムな数字をだなら連結画像を元にすることはできないのではないか
・code.cgiをライブラリ
はじめからbbs.cgiにそのルーチンだけ組み込めばいいのではないか
・書き込み時にcode.cgiが起動するのでそっちで送る
どうやってcode.cgiにpack値を送らすのか?QUERYか?
ライブラリで読み出すならそれも不可能だろう
この部分がスッポリ抜けているのではないか
-
- 63
- 2003/08/23 01:42
-
なぁ、画像をどうこうするのが荒らし対策なのか?
もっと他に荒らしと言える行為があるんじゃないか?
-
- 64
- 2003/08/23 01:43
-
レベル高いのはなんだ
とうとう最後までXSS放置されてたカル板か?
-
- 66
- 1
- 2003/08/23 02:34
-
>>62
>組めるなら組んでみろ
現時点で実現可能か不明なので(´∀`;)
>連結画像はcode.cgiが作るのではないのか?
code.cgiが生成した連結画像を掲示板が表示するって事です。
>はじめからbbs.cgiにそのルーチンだけ組み込めばいいのではないか
これは途中から、移植を考えたら別ファイルの方がいい気がしてきたから;
>どうやってcode.cgiにpack値を送らすのか?QUERYか?
普通に処理したら値を返せばいいんじゃないの??
>>63
具体的に言うと?
>>64
XSSって聞いた事なかったから調べたけどスタイルシート?
CSS荒らし?
-
- 67
- 2003/08/23 02:39
-
つまりcode.cgiはどっかのディレクトリに画像を作るてことでいいのか?
code.cgi自体はContent-type:image・・・で表示しないんだな?
-
- 69
- 2003/08/23 02:45
-
それならbbs.cgiで全部やらせとけていうか分ける意味ねー
ついでにpack値送る手段未だわかんねー
FORMの値以外送る手段ないだろ
それとも送るのは投稿者じゃないとかいうのか
-
- 71
- 1
- 2003/08/23 02:53
-
つーか、なんか根本的に間違ってる気がしてきた(´Д`)
入力する必要ない数字画像が掲示板に表示されてても激しく謎だし……。
-
- 72
- 2003/08/23 02:54
-
それにはやく気付けよ
複数の人間がアクセスしたら画像が複数できることなんて予想できたことだろ
XSSttp://lovemorgue.org/xss.htmlでもみとけ
-
- 74
- 2003/08/23 03:01
-
・・・まずは自分でいってる通り入力する必要ない画像が表示される意味を考えて教えてくれ
-
- 76
- 1
- 2003/08/23 03:12
-
あー、でもhiddenで送るんだったら
別に律儀に画像を表示しなくてもいいな。
-
- 77
- 2003/08/23 03:14
-
hiddenで送るんだったら結局意味ないのでしゅーりょー
-
- 79
- 2003/08/23 03:19
-
連投スクリプトとブラウザは同じデータを送れます
連投スクリプトで読みとられて平気つーことは
ブラウザに読みとられても平気=書けないてことです
-
- 81
- 2003/08/23 03:35
-
長々とやったが結局よーくわからんかったよ・・・
連投防ぎたかったら画像使え(ものによっては破られるしめんどいがナー)
それがイヤなら串禁しとけ(関係ない人間も多少は巻き込まれるかもナー)
このページを共有する
おすすめワード