1read 100read
2012年08月WebProg25: 【仕様】荒らし対策掲示板【実装】 (773)
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▼
tDiaryスレッド その1 (432)
=== IIS === (289)
【PHP】PEAR Part3 (678)
【PHP】Lvうpしたいので宿題ください (262)
【RoR】Ruby on Rails Part15 (656)
【MT】犬でも使えるBLOGスレ【逝吉】 (677)
【仕様】荒らし対策掲示板【実装】
- 1 :03/08/22 〜 最終レス :2012/12/03
- 考えないか?
- 2 :
- 基本
タグ・スタイルシート・JavaScriptのイベントハンドラは文字参照に置換する。
メソッドはPOST以外受けつけない。
イメダグ・自動投稿フォーム・類似フォーム等は
リファラーチェックしてはじく(不完全)
- 3 :
- 会員制にすればOK
- 4 :
- 文中の改行・空白を勝手に削除したりするのは
正規の投稿者の文面も崩れかね無いのであまり(・A・)イクナイ!!と思う。
改行数やバイト数制限は必要だけど
限られた条件の中で表現の自由は保守したい。AAとかね。
連続投稿の禁止も、レスの早い掲示板ではストレスがたまるので極力避けたい。
単純にIpではじくのもきりが無いし、ドメインではじくのも
巻き添え食らう人が出て来るだろうし。
カル板系の画像チェックコードは、いちいち入力するのが('A`)マンドクセ。
かといって、2chみたいにクッキーでチェックコード発行してる場合
普段クッキー切ってる人は、ON・OFFが('A`)マンドクセ。
JavaScriptでいろいろやるのも、切ってる人には(ry
- 5 :
- >>3
オープンな場所で、多くの人が快適に利用できるような掲示板を目指します。
言い忘れた…スマソ(´Д`;)
- 6 :
- ちなみに
>>2
>>4
>>5
は俺です。誰かщ(゚Д゚щ)カモーン。話し合おうZE!
- 7 :
- 誰も来ない…
時間が時間だからかなぁ…
もう寝るぽ(´・ω・`)
- 8 :
- >>1
プロキシ制限すればある程度は大丈夫だと思うが?
- 9 :
- --------------------------end-----------------------------
- 10 :
- >>8
だから、串制限したら
荒らしてる当人以外も弾かれる人がでてくるではないか(´Д`;)
串制限しなくてもいい方法考えようZE!
- 11 :
- >>10
荒らすつもりもないやつがなぜ串を使う?
- 12 :
- それに正直、串制限やIP記録されてる掲示板は精神衛生上よろしくない。
せめてスクリプト上では廃止したいね。
本当に硬い掲示板ならそんなものは必要無いはずだ…と俺は思う。
- 13 :
- >>11
串の本来の目的を忘れてないか?(´∀`;)
- 14 :
- 俺の場合、proxy介さないと外部につなげないんだけど(´∀`;)
- 15 :
- 最近考えてる
究極の連続書き込み対策だけど
チェックコード系でもなんでも、突破されたらログ流されちゃうから
被害を最小限に食い止めるためにプロテクトモードを作るのはどうかと。
書き込み手順・投稿間隔・内容を比較して
黒かったらカウントする。
一定時間でカウントが一定数まで達したら、攻撃を受けたと認識し
強制的にログファイルのパーミッションを変更して書き込めなくする。
一定時間たって、攻撃がやんだと認識したらログファイルのパーミッションを元に戻す。
カウント数も初期化。
とかかなり荒業。
復帰時のついでに、攻撃を受ける前のログ(バックアップ用)に巻き戻したりするのもいいかもしれない。
でも、これは判断基準が難しいよな。
しかもプロテクトモード時は一般の利用客に迷惑かかるし。
う〜ん…。
- 16 :
- >>4
あれもダメ、これもダメって制限多すぎ。
あとは、荒らされないような雰囲気の掲示板にするぐらいしか対策ねーんじゃね?
- 17 :
- >>14
あぁ、そういう人もいるね。
全員分セーフリスト作るのにも限界あるし、串制限はやっぱりダメぽ。
>>16
>あれもダメ、これもダメって制限多すぎ。
既出の方法に頼れば、そこそこ硬い掲示板作れるけど
いろいろ制限出てくるから、何か画期的な方法は無いかと。
>あとは、荒らされないような雰囲気の掲示板にするぐらいしか対策ねーんじゃね?
それ言っちゃお終いだ(´Д⊂、
とりあえず、精神論は置いといて、技術的な対策考えたい(´∀`;)
- 18 :
- 夢を追うのも悪くなかろう。まあがんばれや。
- 19 :
- >>18
行っちゃやだ。協力してよ(´・ω・`)
- 20 :
- ポートスキャンまでして串規制するとはすごい根性だと思った。あ、2chのことね。
- 21 :
- >>20
80番や8080番開いてたら、串とみなすってやつ?
- 22 :
- >>1
掲示板なければ荒らされない
- 23 :
- >>22
「荒らされない」っていう発想はどーでもいいんだよ。
攻撃される。
防御する。
知恵比べさ。
掲示板無かったら何も始まらんよ。
- 24 :
- 連投されたら掲示板が書き込めなくなるなんてのは論外
解除した時にまた連投されたら誰も利用できない板の出来上がり
- 25 :
- 既に荒らしシカト機能付き掲示板があったと思ったが
どこにあったか失念。
- 26 :
- >>24
もちろん敵をかく乱する為
復帰時間はランダムで生成。なんにつけてもパターン化は避けたい。
荒らしつづけたくても、掲示板に貼りついて無いと
連続して荒らしつづけるのは難しい。
荒らしにくい掲示板なら諦めると思うのだが。どうだろう?
>>25
シカトって
ダミーログに飛ばして
気の済むまで書き込んでもらうとか?
- 27 :
- サーバー側のデータ置き場は、今では、十分な量が確保できるんだから、
無駄な上限を外して、データを流れないようにすればいいのでは?
- 28 :
- いやだから連投スクリプト動かして放置しときゃいいじゃない
ずっと復帰できない状態になるでしょ?
- 29 :
- AAを送信したら、恐喝メッセージを投稿者に返す罠
- 30 :
- >>27
いくら大容量化が進んでも、HDDは有限だよ(´∀`;)
>>28
永遠とスクリプトぶん回しとくの?(゚Д゚)
そんな事したら鯖が落ちて
荒らしてる香具師は鯖缶に訴えられてあぼーん。
>>29
AAだと判断する基準が難しいよね。
- 31 :
- ローカルから撃つならサバ問題ないだろ
サーバーに置くにしても定期的にスクリプト起動する方法なんていくらでもある
- 32 :
- >>31
ローカルから撃っても、大量のリクエストが常に放たれてるんだから
被害元のスクリプトは常にerror吐き出して負荷がものすごい事になるよ。
定期的にどっかから来るんだったら、アク禁にすれば解決すると思われ。
- 33 :
- 入力の必要無いスクリプト側だけで対応できる画像チェックコード思い付いた。
生成したランダムな数値を元に画像を連結するとこまでは従来の物と一緒。
ただ、記録する発行済みチェックコードリストには、
生成された連結画像のpack値をこれまたランダムに生成した種を元にcryptした値と、種を記録。
投稿時には、表示されてる画像のpack値を、記録されてる種でcryptして、記録されてる値と比較。
一致したら、投稿許可。
criptした値の桁数も、これまたランダムで生成した値を元に調整するとさらに頑丈かも。
どうだろう?
- 34 :
- 被害元のほうかよ
間隔あけてりゃ問題ない
もっといえばレスポンス見て間隔変えればいい
アク禁なんて串でどうにでもなる
串制限しないんだろ?
- 35 :
- で、どうやって画像のpack値送るんだ?
いってみれ
- 36 :
- >>34
そう言われてみると、粘着にやられたらおしまいなような気がしてきた(´Д⊂、
>>35
ぇ?普通に送れない?(´∀`;)
- 37 :
- hiddenフィールドで送るなら一緒だぞ
それ以外に方法あるならいってみれ
- 38 :
- >>37
あらかじめ、hiddenに入れとくわけじゃないよ?
投稿時にリアルタイムで、表示されてる画像をpackして送るんだ。
- 39 :
- へーどうやって送るの?
- 40 :
- あー、なんか間違ってる。俺(´Д`;)
- 41 :
- 本体側で全部処理しなきゃいいんでない?
- 42 :
- とりあえずもっとわかるように書け
誰がどのようにして送るか
それをどうチェックするのか
- 43 :
- ちょっとテスト。
これ、俺、ちゃんと書きこめてるよね?
見えてるしょ?
返事してください!
- 44 :
- >>42
了解。自分でもわけわかんなくなってきたからまとめてみる。
>>43
見えてるぽ
- 45 :
- bbs.cgi(掲示板本体)アクセス時
↓
code.cgi(チェック用)をreadモードで起動
↓
ランダム値(1)を生成
↓
ランダム値(1)を元に用意しておいた画像を連結して、連結画像を生成
↓
連結画像を元にpack値を生成
↓
ランダム値(2)を生成
↓
ランダム値(2)を種として、pack値をcrypt
↓
ランダム値(3)を生成
↓
ランダム値(3)を元にして、crypt値の桁数を調整し、コード(1)を生成
↓
コード(1)、ランダム値(2)、ランダム値(3)を記録。
↓
掲示板には連結画像を表示
- 46 :
- bbs.cgi(掲示板本体)書き込み時
↓
code.cgi(チェック用)をwriteモードで起動
↓
掲示板の連結画像を元にpack値を生成
↓
記録されてるランダム値(2)を種として、crypt
↓
記録されてるランダム値(3)を元にして、crypt値の桁数を調整し、コード(2)を生成
↓
記録されてるコード(1)とコード(2)を比較
↓
一致したら、書き込み許可。一致しなかったらはじく。
- 47 :
- あいかわらずpack値をどうやって投稿者が送るのかちっともわかりませんですよ・・・
- 48 :
- >>47
書き込み時に、code.cgiが起動するので
そっちで送ります。
例え、画像を読みこんでpackするスクリプト書かれても
記録されてる、ランダム値(2)と(3)がわからないので
コード(1)と同じコード(2)を生成するのは不可能かと。
- 49 :
- 見た感じcode.cgiはbbs.cgiと別個であるようだが
そうだとするとcode.cgiに投稿者がアクセスするのはbbs.cgiの処理がおわった後になるわけだが・・・
- 50 :
- >>49
code.cgiをライブラリみたいな感じでbbs.cgiから使えばいいんじゃないの?
- 51 :
- 連続投稿は文字数や行数を数えて±3ぐらいまでで一致したらはじいて
IP規制して数時間後に規制したIPを開放ってのはどうですか?
- 52 :
- >>51
その場合、串規制も付けないと
いくらでも突破してくるかも〜。
- 53 :
- 荒らしを晒しあげて懲らしめた実績を、架空でもいいから公開しておけば
プログラムレスで簡単な抑止力になるかとふと思った。
- 54 :
- >>53
ハッタリは、本物の荒らしを食いとめられるかなぁ…
- 55 :
- >>53
余計燃えるやつが居ると思われ
- 56 :
- >>55
だよね。
下手な煽り入れて、神のような人が来ちゃったら
笑いながらボコボコにされると思われ。
- 57 :
- 2chのIDの仕組みってどんなの?
IP変わってもIDが変わらないんだったら
IP規制じゃなくてID規制にするとか
- 58 :
- >>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";}
}
こんな感じ?
- 59 :
- >>58
そんな感じ。
日付が変わってもID変わるね。
- 60 :
- 日付、リモートアドレス、板ID
- 61 :
- レベル低い…
- 62 :
- >>50
とりあえず色々とわからん
組めるなら組んでみろ
そのほうがはやそうだ
・掲示板の連結画像を元に
連結画像はcode.cgiが作るのではないのか?
code.cgiが毎回ランダムな数字をだなら連結画像を元にすることはできないのではないか
・code.cgiをライブラリ
はじめからbbs.cgiにそのルーチンだけ組み込めばいいのではないか
・書き込み時にcode.cgiが起動するのでそっちで送る
どうやってcode.cgiにpack値を送らすのか?QUERYか?
ライブラリで読み出すならそれも不可能だろう
この部分がスッポリ抜けているのではないか
- 63 :
- なぁ、画像をどうこうするのが荒らし対策なのか?
もっと他に荒らしと言える行為があるんじゃないか?
- 64 :
- レベル高いのはなんだ
とうとう最後までXSS放置されてたカル板か?
- 65 :
- >>64
>>27に書いたぞ。
- 66 :
- >>62
>組めるなら組んでみろ
現時点で実現可能か不明なので(´∀`;)
>連結画像はcode.cgiが作るのではないのか?
code.cgiが生成した連結画像を掲示板が表示するって事です。
>はじめからbbs.cgiにそのルーチンだけ組み込めばいいのではないか
これは途中から、移植を考えたら別ファイルの方がいい気がしてきたから;
>どうやってcode.cgiにpack値を送らすのか?QUERYか?
普通に処理したら値を返せばいいんじゃないの??
>>63
具体的に言うと?
>>64
XSSって聞いた事なかったから調べたけどスタイルシート?
CSS荒らし?
- 67 :
- つまりcode.cgiはどっかのディレクトリに画像を作るてことでいいのか?
code.cgi自体はContent-type:image・・・で表示しないんだな?
- 68 :
- >>67
(・∀・)ソレダ!!
説明下手でスマソ(´Д`;)
- 69 :
- それならbbs.cgiで全部やらせとけていうか分ける意味ねー
ついでにpack値送る手段未だわかんねー
FORMの値以外送る手段ないだろ
それとも送るのは投稿者じゃないとかいうのか
- 70 :
- >>69
じゃあ、分けない方向で。
よくよく考えたら
やっぱり、生成され、セットされたファイル名hiddenで送らないと
どの画像をpackするか判断できないんじゃ…?(・∀・;)
- 71 :
- つーか、なんか根本的に間違ってる気がしてきた(´Д`)
入力する必要ない数字画像が掲示板に表示されてても激しく謎だし……。
- 72 :
- それにはやく気付けよ
複数の人間がアクセスしたら画像が複数できることなんて予想できたことだろ
XSSはttp://lovemorgue.org/xss.htmlでもみとけ
- 73 :
- >>72
記録するコード数を増やせばいいんじゃないの?
投稿時にどれかとマッチすればOk、みたいな感じで。
正規の投稿者は、今見えてる画像付きの投稿フォームで書き込むんだし。
XSSありがd
読んで来る(´∀`)
- 74 :
- ・・・まずは自分でいってる通り入力する必要ない画像が表示される意味を考えて教えてくれ
- 75 :
- >>74
とりあえず、数字画像以外のものを連結して貼り付けると見栄えはグッドかもしれないと思った。
いっその事、背景画像に指定しちゃうとか?毎回背景画像が謎の連結画像…嫌過ぎるな…
誰かもっと自然で効率いい荒らし対策キボンヌヽ(`Д´)ノ
- 76 :
- あー、でもhiddenで送るんだったら
別に律儀に画像を表示しなくてもいいな。
- 77 :
- hiddenで送るんだったら結局意味ないのでしゅーりょー
- 78 :
- >>77
なんで?生のデータ送るわけじゃないし
読み取られてもOkじゃん?
送った後に、対象データをcryptするし。その種も記録されたランダム値だし。
- 79 :
- 連投スクリプトとブラウザは同じデータを送れます
連投スクリプトで読みとられて平気つーことは
ブラウザに読みとられても平気=書けないてことです
- 80 :
- >>79
あー、わかった!
俺、アフォだ(´Д`)
とりあえず画像チェックコードの改良は諦めるとして、
他の手を考えないとな(´・ω・`)
- 81 :
- 長々とやったが結局よーくわからんかったよ・・・
連投防ぎたかったら画像使え(ものによっては破られるしめんどいがナー)
それがイヤなら串禁しとけ(関係ない人間も多少は巻き込まれるかもナー)
- 82 :
- まあツール厨くらいなら板をアプロダにかえれば回避できるぞ
マルチパートには対応してないからな
- 83 :
- >>82
なるほど。その手があったか!(゚∀゚)
- 84 :
- もうネタぎれかよっ
- 85 :
- >>84
悪いな。どうしても独りだとネタが尽きるしな。
考えてはいるんだが。
- 86 :
- とりあえず、姉妹スレ?
http://pc2.2ch.net/test/read.cgi/php/991274614/l50
- 87 :
- つかこの板人少ないのな・・・
- 88 :
- よくぞ気付いた。
荒らし甲斐のないほど人の少ない掲示板。
それこそが究極の荒らし対策掲示板だ。
- 89 :
- 確かに人は多くないけど、このスレ自体が相手にされていないってのも
- 90 :
- 一部のスレ以外に人がいないのでは
半日以上放置して10くらいしか下がってないし
- 91 :
- 人が少ないのは俺も思った。
はじめは、みんなsage進行なのかと思った。
- 92 :
- ところで、姉妹スレの
掲示板にアクセス時に
何らかの手段でコネクション張らせて、生IP抜いておいて
投稿時にそれと一致しなかったらはじく
って考えは究極の串制限だと思った。
- 93 :
- コネクションはる方法が限られてるがナー
- 94 :
- >>93
抜けなかったら抜けなかったで不許可の方向で
- 95 :
- いや・・・だからJAVAアプレットやら使わないとムリだから
それは>>4で否定したんじゃないのか?
つーか姉妹スレのもたぶん撃てるよ
- 96 :
- >>95
>いや・・・だからJAVAアプレットやら使わないとムリだから
JAVAアプレット以外にも
おなじみのtelnetでもいいし、メディアプレイヤーでもOEでも
ユーザーが持ってそうなアプリ起動しまくってGO!
>それは>>4で否定したんじゃないのか?
そもそも串制限自体否定してるからね
もしも串制限するんだったらって話。
>つーか姉妹スレのもたぶん撃てるよ
同意。あれだけじゃいくらでも穴あると思われ。
- 97 :
- telnetて書き込む度にサーバーたてるんか・・・
しかもクライアントは書き込む度にtelnet起動させられるのか・・・
そんな鬱な板いるかっ
しかも串にアクセスさせるだけでいくらでも捏造可能・・・ナムー
- 98 :
- >>97
だめか〜
なんだか、下手に小細工すると
どんどんヘンテコな使いにくい掲示板になっていく(´Д`)
シンプルでいい方法は無いものか・・・…。
- 99 :
- 姉妹スレのちょっとやってみたら串使って書けたし
つか2月かよ・・・時が止まってるな
- 100read 1read
- 1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▲
WebProg板の名無しさんを決めよう (444)
JSP/Servletで構築されたサイト (222)
おいおまら誰か教えてくださいHTML・・・ (256)
一番汚いコードでHello Worldを書いたやつが勝ち (217)
【PHP】PEAR Part3 (678)
【PHP】PEAR Part3 (678)
--log9.info------------------
【明示安田生命】小田和正【第一生命】 (427)
ストライド (613)
ベッキーのUSJのCM (236)
ACの新しいCMもうざい (660)
【AKB48】うぜぇ!ハイチオールBのキモイCM【有害】 (438)
こんなACJAPANのCMは嫌だ!! (200)
【乙黒えりタン】イオン感謝&ワクワクデー【5%オフ♪】4 (763)
【ブレンディ】 原田知世 【カフェオレ】 (261)
アフラックのCM (320)
【世田谷ベース】所ジョージ総合 Part12【SEAF】 (953)
【反原発】竹島あげちゃえの山本太郎を応援☆1 (284)
【Ami奇跡の逆転劇】Dream236【EXILE系EーGirls】LDH (323)
★☆★☆レースクイーン総合スレッド151★☆★☆ (554)
★☆★☆レースクイーン総合スレッド152★☆★☆ (713)
人間のクズである有名人といえば? (615)
【何もかも5流】つるの剛士アンチ42【あの人は今】 (757)
--log55.com------------------
福田監督の引退会見はまだですか?
次のガンダム作品を妄想するスレ
【鉄血のオルフェンズ】三日月・オーガス part6
機動戦士ガンダムSEED DESTINY PHASE-299
【鉄血】クーデリア・藍那・バーンスタインちゃん 9
機動戦士ガンダム鉄血のオルフェンズ アンチスレ131
【鉄血のオルフェンズ】ガエリオ・ボードウィン18
機動戦士ガンダム 鉄血のオルフェンズ37