(2975)
2975:
スパム対策が〜
投稿者:
konno
2008/03/20(木) 23:10
コメント数 2
このところ直書きスパムがうっとうしいのでCGIで対策しましたが、文法ミスで
書き込めなくなっていました。ご迷惑をおかけしてすみませんでした。
めざらさんがメールで教えてくれました。ありがとうございます。
直書きスパム対策のために、IPアドレスで書き込み制限をかけています。
書き込みが出来ない方はメールでお知らせください。
また、書き込みが保留されて表示されない場合もあります。その場合は内容
確認後に表示できるようにしますので、表示されるまでお待ちください。
ご迷惑をおかけしますがよろしくお願いします。
- No.2975 -
このTreeへ
[リストへもどる]
soft
(2975)
2981:
Re: スパム対策が〜
投稿者:
としき
2008/03/21(金) 20:17
参照先:http://toshiki.la.coocan.jp/
2975 番 konno さんへのコメント コメント数 1
> このところ直書きスパムがうっとうしいのでCGIで対策しましたが、
掲示板スパム対策でも使われる技術の一つに、「キャプチャ」とかいうものがあ
ります。例の、平均より大きく逸脱した視力の持ち主に多大な迷惑を及ぼす図形
のことね。
ところが、噂によると、アカウント取得時にこれを使うことによってスパマーに
よる機械的なアドレス取得を防止していたはずのGmailのキャプチャが破られて、
スパマーに大量のアドレス取得を許してしまったとか。本当かどうかは知りませ
んが、最近のOCR技術の進歩をかんがえると、あながちウソとも思えません。
それはさておき、うちの板塀の罠認証欄は、思ったより長持ちしています。
あとどのくらい頑張ってくれるかなぁ。
> また、書き込みが保留されて表示されない場合もあります。その場合は内容
> 確認後に表示できるようにしますので、表示されるまでお待ちください。
すごいですねぇ。
これっていったいどうやっているんですか?
どこか、参考になるサイトとかコードってありますか?
- No.2981 -
このTreeへ
コメント元:2975 へ
[リストへもどる]
pre
(2975)
2984:
Re^2: スパム対策が〜
投稿者:
konno
2008/03/22(土) 00:27
2981 番 としき さんへのコメント コメント数 1
> ところが、噂によると、アカウント取得時にこれを使うことによってスパマーに
> よる機械的なアドレス取得を防止していたはずのGmailのキャプチャが破られて、
> スパマーに大量のアドレス取得を許してしまったとか。
これはすさまじいですねぇ。パスワードを破るような技法が使われたのかと思った
んですが、OCR技術が使われるんですか。
> それはさておき、うちの板塀の罠認証欄は、思ったより長持ちしています。
> あとどのくらい頑張ってくれるかなぁ。
確か、いくつかの手法を組み合わせていたんですよね。スパムのために閉じてしまった
掲示板も多い中、今継続できているところはみな何らかの対策が施されていると思われ
ますが、完全な排除は難しいですよね。
> すごいですねぇ。
> これっていったいどうやっているんですか?
> どこか、参考になるサイトとかコードってありますか?
参考にしたコードはwforum.cgiです。(^^; いやまじで。
新規の書き込みにフラグをつけて、表示するときに削除記事と同じ扱いにするように
したつもりですが、テストすらしてないという。(^^;; というか、すでに間違いが
あるような気がしてきました。(++; ・・・後でこっそり直しておこう。
- No.2984 -
このTreeへ
コメント元:2981 へ
[リストへもどる]
pre
(2975)
2985:
Re^3: スパム対策が〜
投稿者:
としき
2008/03/22(土) 10:30
参照先:http://toshiki.la.coocan.jp/
2984 番 konno さんへのコメント コメント数 1
> 確か、いくつかの手法を組み合わせていたんですよね。
そんなにたくさんの手法を組み合わせている訳ではありません。
純粋に追加されたものは罠認証欄のみ。
だけど、これだけでは、新規のアタックはある程度防げますが、オリジナルに書
き込み可能な直書きアタックが素通しなので、最低限、もう一つの何かが必要。
なので、項目名変更を2ヶ所とプレビュー反転を行っています。
他にも、細かいチェックが2つか3つありますが、多分、あまり効果はないはず。
一般的な、無漢字チェックだのURLチェックだのというのは行っておりません
ので、手作業であれば、多量のURLの羅列のみ、という書き込みは通してしま
います。
> 新規の書き込みにフラグをつけて、表示するときに削除記事と同じ扱いにするように
なるほど、フラグをつけるか否かの判断のさじ加減というかアルゴリズムが重要
なところですね。これはどうなっているのか開示できますか?
一番重要なところなので、もしかしたら開示しない方がいいかな。
- No.2985 -
このTreeへ
コメント元:2984 へ
[リストへもどる]
pre
(2975)
2987:
Re^4: スパム対策が〜
投稿者:
konno
2008/03/24(月) 01:32
2985 番 としき さんへのコメント コメント数 1
> 純粋に追加されたものは罠認証欄のみ。
> だけど、これだけでは、新規のアタックはある程度防げますが、オリジナルに書
> き込み可能な直書きアタックが素通しなので、最低限、もう一つの何かが必要。
> なので、項目名変更を2ヶ所とプレビュー反転を行っています。
なるほど、罠認証欄は新規書き込みの対策でしたか。今になってみると、
項目名変更やプレビュー反転は直書き対策にかなり有効みたいですね。
プレビュー無しにして書き込んだつもりが、いつまでたっても書き込まれない
ですからねぇ。
> 一般的な、無漢字チェックだのURLチェックだのというのは行っておりません
> ので、手作業であれば、多量のURLの羅列のみ、という書き込みは通してしま
> います。
う〜む、無漢字チェックやURLチェック無しでほぼ完璧にスパムを防げている
というのはすごいですねぇ。
> なるほど、フラグをつけるか否かの判断のさじ加減というかアルゴリズムが重要
> なところですね。これはどうなっているのか開示できますか?
うう、さじ加減とかアルゴリズムなど何も無いんですよ。仕様としては単に新規
書き込みにフラグを付けるだけだし、それも現状ではキチンと実装できてない
状態です。あえて言えば、生ログ中にフラグを追加するのはためらわれたので、
既存の変数を流用しているところでしょうか。修正用のパスワードとか、表示
モードなどを流用してもあまり影響が無いとおもわれますが、名前とかに特定の
文字列を追加するのでも良いかなと今思いつきました。
- No.2987 -
このTreeへ
コメント元:2985 へ
[リストへもどる]
pre
(2975)
2988:
Re^5: スパム対策が〜
投稿者:
としき
2008/03/24(月) 10:35
参照先:http://toshiki.la.coocan.jp/
2987 番 konno さんへのコメント コメント数 1
世の中には、機械書き込みかどうかを判断するもっとすごい方法もあります。
どんなものかというと、直書きの場合、元のフォームを経由せずに投稿CGI、
WebForumならwf_regi.cgiにアクセスするので、投稿前にきちんとwforum.cgiへの
アクセスがあったかどうかという事をチェックする。同一のアクセス元かという
事も、IPアドレスやUserAgentの一致まで見て検証する。
ところがこういうサーバが増えてしまったら、いたちごっこで今度はスパマーの
側も進化して、きちんと元のフォームにも偽装アクセスするようになりました。
これに対して、元フォームへのアクセスから投稿までの時間間隔がどのくらい離
れているかをチェックすることで防御する、という機能を実装しているところが
あります。機械書き込みの場合、元フォームへのアクセスから投稿まではほんの
数秒ですが、人間なら、読んで書いてで絶対にある程度の時間は必要。なので、
例えば、元フォームへのアクセスから30秒以内の投稿は遮断、というのはそれ
なりに有効です。
> う〜む、無漢字チェックやURLチェック無しでほぼ完璧にスパムを防げている
> というのはすごいですねぇ。
実は、罠認証欄設置後に1回か2回、スパムを書き込まれたことがあります。
即刻削除しましたけれどね。
これは手動書き込みでした。
サーバログでの、元フォームへのアクセスから投稿までの動きからわかります。
ほんと、最近はすごいですよ。
昔は直書き投稿が多かったのに、最近では、元フォームどころか、CSSファイ
ルまできちんと読み取ってからスパムを投稿してくるのまである。多分、そうい
うファイルの事前アクセスで投稿可否をチェックするサーバというのがあるので
しょうね。そして、わずか3秒ほどの間に、それら複数のファイルの読み込みか
ら投稿までを行うというのですから、これが人間であるわけがない。
> うう、さじ加減とかアルゴリズムなど何も無いんですよ。仕様としては単に新規
> 書き込みにフラグを付けるだけだし、それも現状ではキチンと実装できてない
えと、ちょっと理解できていません。
konnoさんの考える、きちんと実装できた状況でどうなのか、という質問ですが。
有効なのは新規書き込みだけで、レスの形でのスパムには効果のない方法を導入
しようとしている、ということでいいのですか?
で、それはどういうしくみかというと、新規投稿は保留発言のような形にして、
管理人が許可を出した場合だけ表示するようにする、と、まぁ、こういうものに
なっているという事ですかね。
いやね、私、スパムかどうかの判定まで行って、特定の条件を満たした時は保留
発言になる、そしてそれはレスの場合にも同じ事を行っている、というように考
えたのですよ。って、まだ誤解しているかも。
- No.2988 -
このTreeへ
コメント元:2987 へ
[リストへもどる]
pre
(2975)
2993:
Re^6: スパム対策が〜
投稿者:
konno
2008/03/27(木) 01:09
2988 番 としき さんへのコメント コメント数 1
> WebForumならwf_regi.cgiにアクセスするので、投稿前にきちんとwforum.cgiへの
> アクセスがあったかどうかという事をチェックする。同一のアクセス元かという
> 事も、IPアドレスやUserAgentの一致まで見て検証する。
げげ、そこまでやるんですかぁ。もっともうちも一時期直書きスパムを別ログに
するなどしてましたが、なんかいつも、対策後少ししてからその網をかいくぐる
スパム書き込みが一回だけあるんですよね。もしかしてうちの掲示板を見ている
スパマーが居て、まさにリアルいたちごっこをしていたんじゃないかという気が
しました。そう考えると、直書き対策後しばらくはスパムが無かったのに、最近
は定期的に書き込まれているし。
> ところがこういうサーバが増えてしまったら、いたちごっこで今度はスパマーの
> 側も進化して、きちんと元のフォームにも偽装アクセスするようになりました。
う〜む、これはINCM(でしたっけ)のような自動書き込みできるソフトを使えば
出来そうな気がしますね。これならどんな掲示板にでも対応できそうですし。
> 例えば、元フォームへのアクセスから30秒以内の投稿は遮断、というのはそれ
> なりに有効です。
ここまでやってもそれなりですかぁ。もう、どんだけぇ〜って感じですね。(++;
> konnoさんの考える、きちんと実装できた状況でどうなのか、という質問ですが。
> 有効なのは新規書き込みだけで、レスの形でのスパムには効果のない方法を導入
> しようとしている、ということでいいのですか?
いや、しようとしているのは、レスも含めた新規の人の書き込みですね。
現状はそうなってない可能性が高いのですが。
> で、それはどういうしくみかというと、新規投稿は保留発言のような形にして、
> 管理人が許可を出した場合だけ表示するようにする、と、まぁ、こういうものに
> なっているという事ですかね。
まあそういう仕様ですね。目標としては。(^^;
> いやね、私、スパムかどうかの判定まで行って、特定の条件を満たした時は保留
> 発言になる、そしてそれはレスの場合にも同じ事を行っている、というように考
> えたのですよ。って、まだ誤解しているかも。
そこまで出来ればいいんですが、いまはとりあえずまともに動くように検証
しないといけない状態なもので。そのうちやりたいですね。
- No.2993 -
このTreeへ
コメント元:2988 へ
[リストへもどる]
pre
(2975)
3032:
Re^7: スパム対策が〜
投稿者:
としき
2008/04/16(水) 21:32
参照先:http://toshiki.la.coocan.jp/
2993 番 konno さんへのコメント コメント数 1
> > で、それはどういうしくみかというと、新規投稿は保留発言のような形にして、
> > 管理人が許可を出した場合だけ表示するようにする、と、まぁ、こういうものに
> > なっているという事ですかね。
>
> まあそういう仕様ですね。目標としては。(^^;
もしかして、#3029は、保留されているのでしょうか。
であるのなら、もう一押しというか、自動で「保留発言」なり「管理人預かり」
といった表示が出る方がいいと思います。
ところで、公開処理なり削除処理なりしてやらなくて大丈夫なんですか?
- No.3032 -
このTreeへ
コメント元:2993 へ
[リストへもどる]
pre
(2975)
3034:
やっと保留発言
投稿者:
konno
2008/04/17(木) 00:41
3032 番 としき さんへのコメント コメント数 1
> もしかして、#3029は、保留されているのでしょうか。
はい、やっとスパムが保留発言に引っかかりました。今回はカウンターに記録が
無いので直書きと思われます。ということは、今のところ一部の直書きの場合しか
網にかからないようですね。
前回の書き込みはカウンターログに残っていて、掲示板ログとの時間差は0〜2秒
でした。時間の記録に間違いが無いとすればやはり自動書き込みなんでしょうね。
> であるのなら、もう一押しというか、自動で「保留発言」なり「管理人預かり」
> といった表示が出る方がいいと思います。
そうですね、保留発言とか表示するようにしたほうがよさそうですね。
> ところで、公開処理なり削除処理なりしてやらなくて大丈夫なんですか?
内容がスパムだというのが分かったので、CGIの修正するのにちょうどいいと
思ってそのままになってました。現在返信ボタンの記事閲覧表示の返信フォーム
に表示されてしまってますので、そのへんのCGIの修正が出来たら削除します。
やはり迷惑な内容の表示が無いと気分的にも楽ですね。(^^;
- No.3034 -
このTreeへ
コメント元:3032 へ
[リストへもどる]
pre
(2975)
3036:
Re: やっと保留発言
投稿者:
としき
2008/04/17(木) 21:50
参照先:http://toshiki.la.coocan.jp/
3034 番 konno さんへのコメント コメント数 1
徐々に形が整ってきたようですね。
ところで、再確認というか、差し支えなければ教えて下さい。
保留発言と認定する基準はなんですか?
IPアドレスなのか名前なのか、それとも内容なのか。
例えば、旅先のネットカフェから「としき@旅行中」というハンドルで書き込ん
だら保留発言になるのかしら。
#この辺、公開しない方がいいかも
#良く考えてから公開して下さい
- No.3036 -
このTreeへ
コメント元:3034 へ
[リストへもどる]
pre
(2975)
3042:
Re^2: やっと保留発言
投稿者:
konno
2008/04/20(日) 23:12
3036 番 としき さんへのコメント
としきさん、こんにちは。
このところ体調不良でレスが遅れてます。
> ところで、再確認というか、差し支えなければ教えて下さい。
> 保留発言と認定する基準はなんですか?
> IPアドレスなのか名前なのか、それとも内容なのか。
今のところは直書きだけになっているようです。IPアドレスや内容での
チェックでは不正な書き込みとして撥ねているんですが、未だに書き込まれる
のはURL1つだけなら許しているからなのかも。
ということで、URLが1つでもあったら保留にするように変更しました。
ところが、あきろさんの発言が保留されてしまい、設定ミスが発覚。実は
常連登録から漏れていたという。すみませんでした、あきろさん。m(__)m
> 例えば、旅先のネットカフェから「としき@旅行中」というハンドルで書き込ん
> だら保留発言になるのかしら。
> #この辺、公開しない方がいいかも
> #良く考えてから公開して下さい
そうですね。この辺は最高機密なので、公開しないほうがいいかもしれません。
でも多分大丈夫じゃないでしょうか、内容で判断すれば。(^_^;
- No.3042 -
このTreeへ
コメント元:3036 へ
[リストへもどる]
pre
(2975)
3004:
Re: スパム対策が〜
投稿者:
konno
2008/04/03(木) 00:38
2975 番 konno さんへのコメント コメント数 1
> 直書きスパム対策のために、IPアドレスで書き込み制限をかけています。
この対策後も何回かスパムが来ましたが、今度のは直書きではないようです。
カウンターのログに残っていたのでたぶん間違いないでしょう。
しかも同じ内容なのにプロバイダが違うようなので、やっかいですねぇ。
IPアドレス制限ではいたちごっこになりそうなので、そろそろ未検証の
保留方式をなんとかしないとなぁ。
- No.3004 -
このTreeへ
コメント元:2975 へ
[リストへもどる]
pre
(2975)
3005:
Re^2: スパム対策が〜
投稿者:
としき
2008/04/04(金) 00:56
参照先:http://toshiki.la.coocan.jp/
3004 番 konno さんへのコメント コメント数 1
> この対策後も何回かスパムが来ましたが、今度のは直書きではないようです。
> カウンターのログに残っていたのでたぶん間違いないでしょう。
私が#2988に書いたようなスパム書き込みツールなら、カウンターのログに足跡を
残しつつ、足跡を残してから5秒ぐらいでスパム投稿を行います。
カウンターログのタイムスタンプと掲示板ログのタイムスタンプはどのくらいの
間隔がありましたか?
> 保留方式をなんとかしないとなぁ。
konnoさんの考えておられるのは初めてのお客様のみ保留する方式のようですから
あまり影響はないと思いますが、よく言われているのが、完全保留方式というか
全発言を保留する方式にすると、発言数が落ちる、ということです。
やっぱり、人間、面倒な方式は嫌なんですよ。
あと、最近見かけたスパム撃退法。
最初の画面では書込み欄を全く設けない、投稿ボタンを押すと書き込み用のペー
ジになる、というものです。スパマーがなぜそこが掲示板の書込み欄とわかるか
というと、そこに入力欄が表示されているからです。ならば、最初は書込み欄を
全く表示しないようにすれば、スパマーにも書込み欄の所在がわからない、とい
うことだそうです。
う〜ん、なかなかすごいなぁ。
- No.3005 -
このTreeへ
コメント元:3004 へ
[リストへもどる]
pre
(2975)
3006:
Re^3: スパム対策が〜
投稿者:
konno
2008/04/05(土) 00:04
3005 番 としき さんへのコメント コメント数 1
> カウンターログのタイムスタンプと掲示板ログのタイムスタンプはどのくらいの
> 間隔がありましたか?
それが、うちのカウンターは分までしか記録してないので分からなかったんですよ。
なので、count.cgi に秒を追加してみました。
# 日時の取得
$TT = time;
# $Time = jscm::makeDate("hh:nn", $TT);
$Time = jscm::makeDate("hh:nn:ss", $TT);
そして、ここで呼ばれている jscm.pl の中の
sub makeDate の中に
$sec = sprintf("%02d", $sec);
$fmt =~ s/ss/$sec/;
を追加して時分秒に対応できました。が、掲示板のログも分までなんですねぇ。
う〜ん、こちらはログのフォーマットが変わるので、ちと保留にしとくかなぁ。
> 全発言を保留する方式にすると、発言数が落ちる、ということです。
> やっぱり、人間、面倒な方式は嫌なんですよ。
面倒な方式というのは私の最も嫌うところなので、出来れば避けたいんですが、
現状スパム発言のチェックと削除がもっとも面倒に感じるので、次善の策として
の保留方式です。とりあえず人目に触れなければ少しはサボれるかなと。(^^;
そういう意味では罠認証方式は手間がかからないのでよさそうですね。
> あと、最近見かけたスパム撃退法。
> 最初の画面では書込み欄を全く設けない、投稿ボタンを押すと書き込み用のペー
> ジになる、というものです。スパマーがなぜそこが掲示板の書込み欄とわかるか
> というと、そこに入力欄が表示されているからです。ならば、最初は書込み欄を
> 全く表示しないようにすれば、スパマーにも書込み欄の所在がわからない、とい
> うことだそうです。
おお、これは効果がありそうですね。ただ、同様の方式が増えるとスパマーも
対応策を出してきそうな気がするので、他と微妙に形式を変えた複合組み合わせ
方式が効果ありそうですね。
- No.3006 -
このTreeへ
コメント元:3005 へ
[リストへもどる]
pre
(2975)
3009:
Re^4: スパム対策が〜
投稿者:
としき
2008/04/05(土) 23:12
参照先:http://toshiki.la.coocan.jp/
3006 番 konno さんへのコメント コメント数 1
> それが、うちのカウンターは分までしか記録してないので分からなかったんですよ。
とりあえず、間隔が1分未満か否かはわかるじゃないですか。
で、投稿されたテキストの量にもよりますが、1分未満であれば機械書き込みで
ある可能性が非常に高い、ということで。
> おお、これは効果がありそうですね。ただ、同様の方式が増えるとスパマーも
> 対応策を出してきそうな気がするので、他と微妙に形式を変えた複合組み合わせ
> 方式が効果ありそうですね。
何をやろうと、手動書き込みのスパマーは絶対に阻止できない訳ですからね。
書き込みを遮断することに血道を上げるのではなく、書き込まれたら可及的速やか
に削除する、と言う方を検討した方がいいのかもしれません。
例えば、konnoさん、携帯端末をお持ちなのですから、起床したらチェック、出勤
して会社に着いたらチェック、昼休みにも1回チェック、会社から帰る直前にチェ
ック、というような感じにしてみるとか。
- No.3009 -
このTreeへ
コメント元:3006 へ
[リストへもどる]
pre
(2975)
3010:
掲示板ログも秒追加
投稿者:
konno
2008/04/07(月) 00:59
3009 番 としき さんへのコメント コメント数 1
> とりあえず、間隔が1分未満か否かはわかるじゃないですか。
> で、投稿されたテキストの量にもよりますが、1分未満であれば機械書き込みで
> ある可能性が非常に高い、ということで。
確かに1分未満ではありましたが、手動でもコピペだけなら10秒以内に書き込む
事も可能な気がするのでやはり秒単位の記録がほしいですねぇ。
ということで、掲示板のログのほうも秒を追加しました。wf_init.cgiの
sub get_time { を
# local($min,$hour,$day,$mon,$year,$wday) = (localtime($time))[1..6];
local($min,$hour,$day,$mon,$year,$wday,$sec) = (localtime($time))[1..7];
if ($sec > 60 ) { $sec = 61; } #追加
if ($log eq "log") {
# $date = sprintf("%02d/%02d/%02d-%02d:%02d",
# $year-100,$mon+1,$day,$hour,$min);
$date = sprintf("%02d/%02d/%02d-%02d:%02d:%02d",
$year-100,$mon+1,$day,$hour,$min,$sec);
のように追加、修正で秒まで表示できます。古いログはゴミを表示するので、
61秒になるようにしてます。記事閲覧表示のときだけ秒表示させます。
> 何をやろうと、手動書き込みのスパマーは絶対に阻止できない訳ですからね。
> 書き込みを遮断することに血道を上げるのではなく、書き込まれたら可及的速やか
> に削除する、と言う方を検討した方がいいのかもしれません。
もちろん削除はしますが、できるだけ削除の手間を省きたいのです。
そのためのCGI弄りはたいした手間に感じないので。(^^;
> 例えば、konnoさん、携帯端末をお持ちなのですから、起床したらチェック、出勤
> して会社に着いたらチェック、昼休みにも1回チェック、会社から帰る直前にチェ
> ック、というような感じにしてみるとか。
う〜ん、今ZERO3はほとんどNETに繋いでないんですよね。なんか面倒だし
使いづらいので。アドエスに変えようかなぁ。
- No.3010 -
このTreeへ
コメント元:3009 へ
[リストへもどる]
pre
(2975)
3017:
Re: 掲示板ログも秒追加
投稿者:
konno
2008/04/10(木) 00:08
3010 番 konno さんへのコメント
事故レスです。(++;
秒の取得がバグバグでした。(++;
> local($min,$hour,$day,$mon,$year,$wday,$sec) = (localtime($time))[1..7];
local($sec,$min,$hour,$day,$mon,$year,$wday) = (localtime($time))[0..6];
こうかな? この書き込みで試してみます。(^^;;
- No.3017 -
このTreeへ
コメント元:3010 へ
[リストへもどる]
pre