web-dev-qa-db-ja.com

正常に、ユーザーをWebサイトから永久に禁止しますか?

私はソーシャルネットワーキングウェブサイトを持っていて、そのウェブサイトからユーザーを禁止したいと思っています。私は彼のIPアドレスを.htacessファイルの禁止リストとそのユーザーを禁止するためのphpレベルに追加しましたが、彼は別のIPで戻ってきます。

ユーザーがウェブサイトに再入ろうとしても、どうすれば永久に禁止できますか?

6
user1179459

私はあなたが間違った角度からこれに来ていると思います。多くのサイト(これを含む)では、信頼できることを証明するにつれて、ゆっくりとより多くの能力を見ることができます。

最初の投稿をモデレートするか、何らかの投票システムを作成する必要があります。そうすると、彼の投稿が長く表示されないようになります。

これは実際には人間の問題であり、技術的な問題ではありません。

15
Sirex

Tor と他の無数のプロキシサービスのおかげで、ユーザーをブロックするためにIP禁止に依存することはできません。

他の何らかの障壁を実装する必要があります-サインアップ時の電子メール検証要件、または新しいアカウントの作成のためのモデレート承認が必要ですか?ユーザーのサインアッププロセスで血液サンプル、社会保障番号、母親の乙女の名前が必要な場合を除いて、不正なアカウントにひびが入る可能性があります。

ユーザビリティとセキュリティのスケールでどのような種類のバリアを設定するかを選択することは重要な決定です。トロール、悪意のあるユーザー、またはボットの小さなセグメントを阻止するために設定するすべてのものについて、正当なユーザーのはるかに多くのセットに迷惑をかけている。

10
Shane Madden

新しいユーザーがサインアップしたら、 Twilio のようなサービスを使用して、短いパスコードを含むテキストメッセージを電話に送信します。アカウントを確認するには、このコードを正しく入力する必要があります。これは、Craigslistがスパマーを締め出す(試みる)方法と似ており、貧乏人の2要素認証システムの一種としてオンラインバンキングでも頻繁に使用されています。

8
jamieb

私はあなたに「成功して、永久に」約束することはできませんが、彼の人生をより困難にするためにあなたができることは確かにたくさんあります。これらの十分と彼はあきらめるでしょう。

あなたはすでに彼のIPアドレスを識別に使用しようとしましたが、無料のプロキシサーバーを見つけるのは簡単です。無料および匿名のプロキシサーバーを見つけるのは少し難しいです。ほとんどのプロキシサーバーは、ユーザーのIPアドレスをX-Forwarded-For:ヘッダーで送信します。 mod_security を使用してこれらをブロックできます。

SecRule REQUEST_HEADERS:X-Forwarded-For "@Contains 192.168.0.1"

明らかに、192.168.0.1を彼の実際のIPアドレスに置き換える必要があります。最後のオクテットを削除することで、プロキシされたIPのより大きなセットをブロックできます。

これにより、彼は匿名プロキシとTorの使用に制限されます。すべてのリクエストは異なるIPアドレスから送信され、これらはすべてTor出口ノードリストに含まれている可能性があるため、彼がTorを使用している時期を特定できます。これが twoexamples のリストです。利用可能なプロキシリストもあります。

FlashまたはJavascriptのいずれか、あるいは画像リンクを使用することで、1つのサブリクエストのプロキシをバイパスするように強制できます。これは、彼のコンピューターでプロキシがどのように設定されているかによって異なります(ブラウザーまたはOSに配置するか、ネットワーク上の透過プロキシとして使用できます)が、タイプが何であれ、おそらくポート80と443のプロキシのみです。あなたのウェブサイトに彼にポート8080やポート25などで接続させ、リクエストに一意の識別子をエンコードさせます。これはPHPでトリックを行います:

echo("<img src=\"http://example.com:25/".session_id().".jpg\" />");

次のステップは EverCookies を使用することです。彼がさまざまな保管方法をすべて削除するのがどれだけ上手かによっては、それだけで彼を確実に識別するのに十分かもしれません。彼は、ブラウザをVMで実行し、再び禁止されるたびに既知の状態に戻すか、JavaScriptを実行しないことでこれを回避できますが、彼の生活を少し難しくすることに成功します。 。彼がjavascriptを実行していないという事実を利用して、彼を特定できる可能性があります。

また、Google Analyticsは、__utma Cookieの2番目の「フィールド」(ドットで区切られている)に一意の識別子を割り当てることにも注意してください。あなたがグーグルアナリティクスを持っていて、彼がこのクッキーを削除しないなら、あなたはすでに彼を追跡するのに十分であるかもしれません。

Cookie(およびすべてのHTTPヘッダー)をログに記録するには、 フォレンジックログ を使用できます。

その後、 ブラウザのフィンガープリント は少し難しく、誤検知(少しあいまいにした場合)と誤検知(完全一致のみを行う場合)の両方が発生しやすくなりますが、実行できます。 VM)を既知の状態に戻し続けると、実際にはmore効果的です。これは、指紋がないことを意味するためです。変更。禁止されるたびに、VMの画面解像度とタイムゾーン、およびインストールされているプラ​​グインを変更する必要があります。

もう1つの方法:彼が投稿したcontentを特定します。彼を通常のスパマーのように扱ってください。ベイジアン学習エンジンを介して彼のデータをフィードし、彼を認識するように教えます...そして彼が投稿したものを認識するのに十分になったら、その種のコンテンツを投稿する人を禁止します。これには、誤検知は、同じ人でなくても、とにかく禁止したい人であるという素晴らしい利点があります。

4
Ladadadada

これは別の方法で処理します。一時的なIP禁止(簡単に回避できます)に加えて、彼を禁止として識別するCookieがあります。そして、彼が戻ってきた場合でも、私たちは彼に割り当てる特別なユーザーグループを持っています。彼は、すべてが彼の側で期待どおりに見え、機能するという異常なことに気付くことはできません。しかし、彼の行動、投稿、PMなどはすべて他の人には見えません。

誰も彼に反応していないので、最終的に彼は退屈するでしょう(彼以外に投稿が表示されていない場合はどうすればよいですか)

4
genuineparts

彼がどれだけ知っているかに応じて、「死のトークン」をクッキーとして保存してみることができます。そのCookieが見つかった場合は、禁止されたページを提供します。彼はそのようなものをチェックしようとは思わないかもしれません、特にあなたが何か卑劣な名前を選んだ場合(多分何かセッション関連ですか?)

2
Salis

彼をISPに報告してください。詳細なログ(IP、アクション、タイムゾーン付きのタイムスタンプ)、サイトの管理ポリシーのコピーなどを含めます。彼のISPが協力的でない場合は、彼のISP全体を禁止します。ユーザーから不満がある場合は、ごめんなさいと伝えてください。ただし、ISPには不正使用への対処を拒否しています。

驚いたことに、これを正しく責任を持って行うと、ほとんどのISPが協力してくれます。彼らはあなたにユーザーを識別しませんが、彼らはユーザーに対処します。

彼がプロキシを介して接続する場合は、プロキシを禁止します。

これはうまくいくかもしれないし、うまくいかないかもしれませんが、それはあなたが持っているすべてについてです。

2
David Schwartz

本当にできません。

私の最初の提案は、彼の元のIPをログに記録しているかどうか、悪用のために彼をISPに報告し、彼のサービスをヤンクまたは一時停止させようとすることです。これはISPによって異なりますが、非常に役立つ場合があります。それが失敗すると...

Cookie、Flash Cookie、または ブラウザのフィンガープリント を使用して、IPに関係なく彼の記憶を試みることができますが、これらは簡単に回避できます。より高度ですが、禁止を回避するのも同様に簡単です(彼が何を探すべきかを知っている場合)は、MACアドレスを取得して禁止することです。

また、無料で公開されているプロキシサーバーのIPの禁止を検討し、既知の無料のWebメールプロバイダーのリストにサインアップしてオプションを削減することを禁止することもできますが、それでも、VPNプロバイダーやVPNプロバイダーの安価なアカウント、あるいはその両方です。あいまいなウェブメールプロバイダーはそれらをバイパスすることができます。

上記のすべてを行うことはある程度効果的ですが、決心したトロールはそれらのブロックを通り抜けます、そして私の経験では、実際に機能する唯一のことは新しいユーザーのサインアップをモデレートすることであり、それは正当な新しいユーザーを追い払うことに問題を引き起こします。彼が疲れて、彼の興味を引く何か(光沢のある物体など)を見つけるまで、彼を禁止し続けることができます。

彼が本当に大きな問題である場合は、Cookieやブラウザのフィンガープリントを使用して彼を識別し、彼だけが表示できるサイトのコピーにリダイレクトしたり、投稿やアクティビティを読み取り可能にすることができます彼に-彼は禁止を回避していると思って退屈するまでトロールすることができますが、実際には、あなたは彼のためだけにプライベートな小さなサンドボックスを作成しました、そして他の誰も彼のがらくたの影響を受けています。私は過去にいくつかの厄介なフォーラムトロールでそれを行いましたが、それらが本当に、本当に永続的で、本当に、本当に下品でない限り、それは価値があるよりも多くの努力です、私見。

1
HopelessN00b

読む http://www.codinghorror.com/blog/2011/06/suspension-ban-or-hellban.html

あなたはIPによってユーザーを地獄禁止することを試みることができます。

地獄で禁止されたユーザーは、他のすべてのユーザーには見えませんが、決定的には、自分自身ではありません。彼らの観点からは、彼らは通常コミュニティに参加していますが、誰も彼らに反応しません。彼らは事実上幽霊であるため、彼らはもはやコミュニティを混乱させることはできません。これは、コミュニティで「トロールに餌を与えない」ルールを適用する賢い方法です。彼らが投稿したものが何も応答を受け取らないとき、地獄の禁止されたユーザーは退屈したり欲求不満を感じて去る可能性があります。私もそれを信じています。子供の頃にグレートブレインを読んで何かを学んだとしたら、それは静かな扱いが彼ら全員の最も残酷な罰であるということです。

アイデアは、彼が実際に禁止されていることを知らず、IPを再び変更することを気にしないということです。

フラッシュベースの「クッキー」の実装を試みることもできます。これらは通常のHTTPCookieとは異なり、一部のブラウザはブラウザのCookieが削除されても削除されません。 (詳細: http://en.wikipedia.org/wiki/Local_shared_object

1
David Murdoch