[戻る]
       Library の 掲示板
名前 ハンドル (省略時はunknown
削除用パスワード
(省略時削除不可)
本文  URLは自動リンク  行頭の空白は   に変換  行頭が>や>、@で始まる引用行は色が変わる
    投稿コード    入力欄の投稿コードを変えずに投稿して下さい

        


削除するメッセージをチェック   削除用パスワード
優美 [6tyiBmA4qdc]  11月14日(日) 12:33

(た)さん、mmさん、色々とありがとうございます。
参考にさせて頂きます。
お忙しい中、本当にありがとうございました。

mm [mpUX9FER55g]  11月11日(木) 03:07

(た)さん
確かに、1個ずつタイムアウトまで待ってると時間はかかるかも…
(スレッドで並行して検査できればいいんだけど…)
それと、検査ポート数が多いと、怪しげなポートスキャンと疑われる可能性はありますね(^^;
(セキュリティのためにポートスキャンをチェックしてるサイトもあるそうだし)
環境変数のチェックに付随させているのは、そういうことなのですね。

(た) [tlZgb1s8bEo]  11月10日(水) 20:49

リンクありがとうございます。
ポートの件ですが6個くらいに増やしてテストしたら、
掲示板が表示されるまでに凄い時間がかかります。
これって負荷は許される範囲でしょうか?

掲示板荒らし対策してサーバー荒らしてるような気がして???
なんか微妙な感じです。
アクセス制限はクッキーをうまく使うのが
やっぱり一番いいような気がします。

mm [mpUX9FER55g]  11月10日(水) 00:17

(た)さん
素早いですね!
さっそく拝見しました。
ただ、まだ試験運用でしょうか?
ポートが80と8080だけでは少なすぎる気がします。
「CyberSyndrome」のプロキシサーバーのポートを調べてみた結果、
以下のようになりました(かっこ内は出現回数)。
80(426)
81(2)
443(29)
1026(1)
1027(1)
1813(1)
2301(2)
3120(1)
3128(25)
3129(1)
3382(8)
6588(18)
8000(38)
8002(5)
8080(153)
8081(3)
8090(3)
8888(2)

それと、実運用では、環境変数のチェックとはかかわりなく検査ができるので、
この環境変数のチェックとは別に選択できるようにした方がよいように思います。

ところで、http://www2s.biglobe.ne.jp/~cru/library/lq/ の「履歴」の下に
(た)さんのサイトへのリンクを入れさせて頂きました。
このページへのリンクでよろしいでしょうか?

(以下、プロキシサーバーのリストから使用ポートを調べるperlスクリプト)
open(IN, "<in.txt");
open(OUT, ">out.txt");
while (<IN>) {
	chop;
	if ( m/:(\d+)$/ ) {
		$p = sprintf("%4s", $1);
		$port{$p}++;
	}
}
foreach $key (sort keys %port) {
	($p = $key) =~ s/ //g;
#	print OUT "$p\n";
	print OUT "$p($port{$key})\n";
}

(た) [tlZgb1s8bEo]  11月9日(火) 12:29

mmさんお邪魔します。
>優実さん
うちで再配布させていただいているLQアクセス制限にポートスキャンつけてみました。
http://apollorec.main.jp/dl.html
参考にしてください。
設定画面はこんなふうになってます。
http://apollorec.main.jp/LQsample.html

mm [mpUX9FER55g]  11月8日(月) 21:13

●優美さん
なるほど、分かりました。
通常のYahooBBの会員のアクセスと紛らわしいホスト名の公開プロキシサーバーがあり、
これがプロキシサーバー特有の環境変数を一切付加しない、いわゆる匿名串だ
ということですね。

このプロキシサーバーについて、ちょっと調べてみましたが、
YahooBBが提供している訳ではなさそうですね。
(そうであれば、外部に公開するな、とYahooBBに要請できますが)
となると、YahooBBの会員がプロキシサーバーを立ち上げてることになりますが、
意図的に立ち上げてるのか、踏み台にされているのはかちょっと分かりません。
(自分用に意図的に立ち上げたが、知らずに公開されてる、ってのもあるのかな?)
それと、これらはすべて固定IPアドレスなのか…?

>このプロクシのポートの「8080」や、「80」からの書き込みを
>拒否する方法はないのでしょうか。

残念ながら、LQアクセス制限ライブラリは、CGIの環境変数とIPアドレスなどからのみ
アクセスを制限するので、そのような機能はありません。

こういう拒否の仕方をしている掲示板もあるとのことですが、
それは、たぶん投稿時に投稿元のホストに対し、8080や80などにポートスキャンして
プロキシサーバーかどうかの確認をしてるということだと思います。
このような確認を行えば、環境変数を出してるかどうかにかかわりなく、
また、FWなどの非公開のプロキシサーバーを誤って排除することなく、
公開プロキシサーバーだけを排除することができます。

ただし、このような確認を行うには、掲示板のCGIなどから
直接ネットワーク接続を行う必要があり、会員が自分でCGIなどを設置できる
ような商用サーバーではほとんど無理ではないかと思われます。
(この掲示板を設置しているwww2s.biglobe.ne.jpのサーバーでも、
悪用防止のためにsocketが使えないので、そのような確認はできません。)

ですから、LQでYahooBBの公開プロキシサーバーを禁止するには、
総数がどれほどになるかは分かりませんが、個々に禁止する他ありません。
固定IPアドレスなら、例えば「yahoobb219030048169.bbtec.net」、
動的割り当てなら「yahoobb219030 .bbtec.net」みたいな規制か、
動的割り当てのIPアドレスの範囲がちゃんと分かれば、
「禁止IPアドレス範囲」で制限するしかないようです(^^ゞ

優美 [6tyiBmA4qdc]  11月7日(日) 20:31

すいません。環境変数の書き間違いでした。

Yahooの環境変数を出さないプロクシは、「CyberSyndrome」などで
よく見かけるのですが、例えば今ですと以下のものが、そのサイトに載っていました。

yahoobb219174040245.bbtec.net:8080
yahoobb219013200124.bbtec.net:8080
yahoobb219030048169.bbtec.net:8080
yahoobb219047060104.bbtec.net:8080
yahoobb219168010167.bbtec.net:8080

いくつもYahooの環境変数を出力しない串が存在しているので
何とかこれを防げないかと困っています…。

海外のものや、ホストを出さないものでしたら「?」で登録して
拒否する方法もあるのですが。。

このプロクシのポートの「8080」や、「80」からの書き込みを
拒否する方法はないのでしょうか。

お忙しいのに、色々と質問ばかりしてしまって申し訳ありません。
よろしくお願いします。
いつもありがとうございます。m(_ _)m

mm [mpUX9FER55g]  11月7日(日) 02:27

優美さん
すいません。また、アクセスができなくなってました(^^;
ところで、「変換係数」って何のことなのでしょうか?
それと、「Yahoo BB串」というのが分からないのですが、IPアドレスかホスト名を教えて頂けます?

優美 [6tyiBmA4qdc]  10月30日(土) 22:39

こんばんは。
いつもLQでお世話になっています。
Yahoo BB串の事なのですが、本当に対応に困っています…。
海外からのアクセスなら、日米以外を拒否して、変換係数を出さないものでも
根気よく登録すればなんとか対応できるのですが。
ホストに「?」を利用して、出来る限りの事はしてみました。

ただYahoo BBの様な大手で、変換係数を出さないプロクシは防ぎようがないのでしょうか?
ある無料レンタル掲示板で、ポート80や8080?
のようなものを拒否できるので、ほぼ全てのプロクシが撃退できるようです。

Yahoo BBなどの大手の変換係数なしの串で、ポート80を拒否したいのですが
そのような事はどうしたら良いのでしょうか?

試してみたのですが、このサイトなどで使われている、無料掲示板では
上のようなものまで拒否できる様です。

http://bbs2.ardor.jp/?0204/blue1

大変お忙しいと思いますが、何かアドバイスを頂けたら幸いです。
よろしくお願いします。

mm [mpUX9FER55g]  10月28日(木) 02:28

@YOSSHIーさん
ホスト名を調べて、そのホスト名を「禁止ホスト名」に設定したってことではないですよね。
「禁止ホスト名」ではなく「禁止範囲内のIPアドレス」を設定する必要があります。

YOSSHIー [K/R/fxrZFj.]  10月27日(水) 21:46

@(た)さん
一応もう一回確認しましたがホスト名を取得するになっていました。
@mmさん
その方法でホスト名を調べてアクセス制限しました。
サーバーはiswebです。

また別の方法で来たりしたら嫌だな…

mm [mpUX9FER55g]  10月26日(火) 23:28

@(た)さん
あっ、すいません(^^;
たぶんその通りだと思います。

@YOSSHIーさん
もしホスト名の取得ができないサーバーをお使いでしたら、
面倒ですが、下記や他サイトで逆引きして下さい。
http://www2s.biglobe.ne.jp/~cru/library/tools/nslookup.html

  (た)   10月25日(月) 19:45

設定で「ホスト名を取得する」というのがありますが、
それはどうなってますか?
設定ができているようなら、
サーバによっては負荷が大きいので
ホスト名の取得を禁止しているところもあるので
そっちの問題かもしれませんが。

YOSSHIー [K/R/fxrZFj.]  10月23日(土) 21:15

はじめまして。
LQアクセス制限ライブラリを設置したのですが、アクセスログのホスト名が?になって出ません。
もしよろしければアドバイスして欲しいのですが…
IPは出るのですが、ダイアルアップ接続のようで…

mm [mpUX9FER55g]  6月20日(日) 00:20

@(た)さん
リンクをどもです。
UA制限ができるってことは、kageさんの件も行けそうですね(^^)v

@kageさん
いや、User-Agentを利用したアクセス制限の要望は以前からあって、
特に携帯のようにIPアドレスやホスト名による制限が役に立たない場合に
使えるということは理解しているのですが、現実にはパワーも時間も取れないもので…(^^;

@Ranさん
このサイトは、対策のためのツールを提供するだけなので、
対策自体をテーマにしたサイトの方が適切だと思います。
ここからリンクしている「初心者のためのセキュリティ対策」
http://www60.tok2.com/home/september/index.shtml
や、検索サイトで「荒らし対策」などで検索すれば、いろいろ出てきますよ。

Ran [c8XHETetVJw]  6月19日(土) 15:11

はじめまして。
PC初心者で、何も判らずにHPを始めていますが、荒らしと取れる書き込みが余りに多過ぎて、アクセス禁止にしたいのですが、如何すればいいか全く判りません。
始めから教えるのが面倒だと言うのであれば諦めますんで、何か対策などおしえていただければとてもうれしいです。
どうぞよろしくお願いします。

HP;http://www.tosp.co.jp/i.asp?I=asllan479

kage [ppEFSMwIPDI]  6月18日(金) 22:30

@mm様
秀逸なる作品なのに注文ばかりしてました。
この場を借りてお詫び申し上げます。
私のような無礼者にも親切に対応して頂いてるmm様には感謝しきりです。
実際に利用してみて、改めて細かい設定が可能である事が分かりました。
提示して下さったコードも参考にさせて頂きます。<(_ _)>

@(た)様
ご紹介ありがとうございます。
早速訪問させて頂きます。

もっと勉強してもっと良く理解出来るようになりたいと思います。
また気付いた事があればカキコさせて頂きます。

(た) [tlZgb1s8bEo]  6月18日(金) 19:36

うちで改造してます、参考にしてください。
UAとリファの制限を追加してます。
http://apollorec.main.jp/dl.html

mm [mpUX9FER55g]  6月18日(金) 00:25

@kageさん
これはもうLQの改造とかいう問題ではないですね。
弾く手段としてLQを利用することはできますが…

方法としては、↓のようなコードをスクリプトのどこかに埋め込めばいいんじゃないかな(多少perlや正規表現の知識が必要になります)。
(弾くための処理) if $ENV{'HTTP_USER_AGENT'} =~ m|Mozilla/4\.0 \(compatible; MSIE 6\.0; Windows NT 5\.1; \.NET CLR 1\.1\.|;

kage [ppEFSMwIPDI]  6月16日(水) 22:17

@mm様
あれから数日経ちましたが安定した動作をしております。

もう一つ希望なのですが、特定のユーザーエージェントを弾きたい場合は
何か方法はありますでしょうか?
例えば「Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)」
の様な感じですが、
「Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.****)」 や
「Mozilla/4.0 (compatible; MSIE 5.5; Windows 98; T312461)」 など
括弧()内にある特定の文字列を指定して弾くようにしたいのですが。

付け焼き刃な対処方ですが組み合わせて制限したいと思いました。
質問ばかりで申し訳ありません。

kage [ppEFSMwIPDI]  6月14日(月) 02:56

@mm様
(***-***-***-***.jp.fiberbit.net)つまり間に「jp」があるHOSTも許可したいのです。
「jp」の前後は変化してもこの「jp」があれば日本として許可すると言う事です。
組み込んで見て様子を見てみたいと思います。 後日ご報告したいと思います。

度々ありがとうございます。

mm [mpUX9FER55g]  6月13日(日) 21:01

@kageさん
/*\.jp\.*/ ってのは、/.*\.jp\..*/ のつもりですよね?
で、ドメイン名は、. で始まったり終わったりしないから、この場合は、/\.jp\./ でもいいということです。

kage [ppEFSMwIPDI]  6月13日(日) 12:48

早速のご指摘ありがとうございます。

> ステートメント(行)を分けた方がいいと思います。
確かに分かりやすいですね。
プログラムを書く時は「誰が見ても分かりやすく」が理想ですね。

「*」を入れて無理矢理マッチングする事はないんですね。
基礎知識がないため無駄な解釈をしていました。(^^;
変更してみます。 ありがとうございました。

mm [mpUX9FER55g]  6月13日(日) 03:41

@kageさん
*\.jp\.* は少し変ですね。
それと、追加/変更のし易さやコードの分かり易さと、正規表現の | は効率が悪そうなので、下記のようにそれぞれステートメント(行)を分けた方がいいと思います。
    return $Report{'アクセス許可'} if $HostDN =~ m/$DomainCountry$/i;  # 日本
    return $Report{'アクセス許可'} if $HostDN =~ m/^YahooBB/i;         # Yahoo
    return $Report{'アクセス許可'} if $HostDN =~ m/\.jp\./i;           # .jp.
    return $Report{'日本以外'} if $HostDN =~ m/\.\w{3,}$/i || $HostDN =~ m/\.us$/i;  # 米国
それと、各正規表現の / の後に、上記のように i を付加して、大文字小文字を区別しないようにして下さい…これも、いずれ修正するつもりにしてたものですから…(^^;

kage [ppEFSMwIPDI]  6月13日(日) 03:06

mm様、↓のHOST(***-***-***-***.jp.fiberbit.net)を許可するために考えてみました。

return $Report{'アクセス許可'} if $HostDN =~ m/$DomainCountry$|^YahooBB|*\.jp\.*/; # 日本

(た)さんのYahooBBの後ろに付け加えて試しているところですが、何とか正常に認識して
いるみたいです。

実際のところ自信がありませんが、これで大丈夫ならあとはパターンを追加してあげれば良
いのですね。(たぶん)
間違っていましたら恥ずかしながらお詫びします。

改めてありがとうございました。

   26 番目以降のメッセージ →  

投稿コード掲示板