CAPTCHA 以外によく使われているスパム防止方法は何ですか?
27 に答える
フィールドを配置してCSSで非表示にする「ハニーポット」を試してみましたが(スタイルシートが無効になっている場合は「空白のままにする」とマークします)、多くのボットが非常に迅速に通過できることがわかりました。フィールドを特定の値に設定して JS で変更する、ロード時間と送信時間の間の時間を計算する、リファラー URL をチェックする、などの手法もあります。それらにはすべて落とし穴があり、期待できるのは、ユーザーのためにここにいる人を疎外せずに、できる限りフィルタリングすることだけです.
ただし、結局のところ、ボットがフォームを介して何かを送信することを本当に、本当に望んでいない場合は、CAPTCHA を付けたいと思うでしょう。ほとんどすべてがreCAPTCHAですが、インドの CAPTCHA 解決市場と世界中のスパマーの創意工夫のおかげで、常に成功しているわけではありません。通常のCAPTCHAに少なくともある程度慣れているユーザーにとっては、「独創的」であるが「そこにある」ようなものを使用することに注意してください。
衝撃的ですが、ここでのほとんどすべての応答には何らかの形式の CAPTCHA が含まれていました。OPは何か違うものを望んでいました.おそらく彼は実際に機能するものを望んでいたと思います.おそらく実際の問題を解決することさえあります.
CAPTCHAは機能しません。たとえ機能したとしても (これは間違った問題です)、人間は依然としてシステムをフラッディングする可能性があり、定義上、CAPTCHA はそれを停止しません (なぜなら、あなたが人間であるかどうかを判断するためだけに設計されているためです。よくやる…)
では、他にどのような解決策がありますか? まあ、それは...あなたのシステムとあなたのニーズに依存します。たとえば、ユーザーが「お問い合わせ」フォームに入力できる回数を制限するだけの場合は、各ユーザーが 1 時間/1 日あたりに送信できる要求の数を制限するだけで済みます。ユーザーが匿名の場合は、IP アドレスに応じて調整し、場合によっては IP をブラックリストに登録する必要があります (ただし、これも回避でき、他の問題を引き起こす可能性があります)。
フォーラムやブログのコメント (このようなもの) を参照している場合は、それを使用すればするほど、ソリューションが好きになります。認証されたユーザー、承認 (レピュテーションに基づいており、フラッディングによって蓄積される可能性は低い)、スロットリング (1 日にできることの数)、時折の CAPTCHA、そして最後に通過した少数のユーザーをクリーンアップするためのコミュニティ モデレーション - すべてが組み合わされます。適切なソリューションを提供します。(Jeff は、スパムやその他の悪意のある投稿が実際にどれくらい通過するかについての情報を提供できるのだろうか...?)
考慮すべきもう 1 つのコントロール (ここにあるのかどうかはわかりません) は、何らかの形式の IDS/IPS です。スパムを検出して認識できる場合は、そのパターンをブロックできます。モデレートは手動で入力する必要があります。ここ...
これらのいずれもスパムを防止するものではありませんが、確率が徐々に低下し、収益性が低下することに注意してください。これは経済的均衡を変え、CAPTCHA が実際に価値のある十分な価値を提供するようにします - スパマーがそれを壊したり回避したりするのはもはや価値がないからです (他のコントロールのおかげで)。
ユーザーが計算できるようにします。
3と8の和は?
ところで、Microsoft Research の興味深いアプローチである Asirra をサーフィンしました。
http://research.microsoft.com/asirra/
いくつかの写真が表示され、特定のモチーフを持つ写真を特定する必要があります。
ユーザーに負荷をかけない非常に簡単な方法は、ページが読み込まれた後、送信ボタンを1秒間無効にすることです。スパムの投稿が続いている公開フォーラムで使用しましたが、それ以降は停止しました。
Ned Batchelder は、非常に効果的なボット防止のために、ハッシュとハニーポットを組み合わせる手法を作成しました。キャプチャなし、コードのみ。
ボットを阻止するには、人々に自分自身を特定させるのではなく、投稿を成功させにくくしたり、うっかりボットとして認識させたりすることで、ボットを阻止することができます。これにより、ユーザーの負担が軽減され、コメント フォームに目に見えるスパム対策が不要になります。
このテクニックは、私がこのサイトでスパムボットを防ぐ方法です。できます。ここで説明する方法は、コンテンツをまったく見ていません。Akismet などのコンテンツベースの防止機能を追加することもできますが、それだけでも非常にうまく機能することがわかりました。
http://chongqed.org/は、アクティブなスパム ソースのブラックリストと、スパムで宣伝されている URL を維持しています。後者の投稿をフィルタリングすると、フォーラムで非常に効果的であることがわかりました。
私が観察した中で最も一般的なものは、単純なパズルを解くためにユーザー入力の方向を向いているものです。たとえば、次のようなものは猫の写真です。(猫を囲む犬のサムネイルの写真を表示しています)。もしくは簡単な算数の問題。
興味深いことですが、軍拡競争もこれらのシステムを圧倒するでしょう。
人間のモデレーターにとっては、ボットが登録済みのアカウントを使用するのに十分賢い場合は、IPからのすべての投稿、またはユーザーからのすべての投稿を簡単に見つけて削除できるようにすることは確かに役立ちます。同様に、IPアドレスまたはアカウントをしばらくの間簡単にブロックするオプションは、それ以上の管理なしで、人間のモデレーターの管理上の負担を軽減します。
クッキーを使用してボットや人間のスパマーに自分の投稿が実際に表示されていると信じさせる(自分だけが表示している)ため、ボット(またはトロール)がテクニックを変更することはできません。スパマーとトロールに他のスパムとトロールメッセージを見せましょう。
以下は、今日の技術では実現不可能ですが、それほど遠くはないと思います。フォーラムのスパムを処理するのもおそらくやり過ぎですが、アカウントのサインアップや、人間を処理していることを本当に確認したい状況で、人間が処理を完了するのに数分かかる準備ができている場合に役立ちます。処理する。
人間であることを証明しようとしている2人のユーザーに、ウェブカメラを介して互いに接続し、たとえば、お互いの動きをミラーリングすることで、見ている人が人間であり、生きているかどうか(つまり、録音ではないか)を尋ねます。または一枚の紙に何かを書きます。全員にさまざまなユーザーでこれを数回行わせ、いくつかの録音をミックスに投入します。これらの録音も、そのように正しく識別しなければなりません。
フォーラムで一般的な方法は、投稿が 10 件未満のメンバーのスレッドを単にモデレーション キューに入れることです。もちろん、モデレーターがいない場合やフォーラムではない場合、これは役に立ちません。より一般的な方法は、ハイパーリンクとテキストの比率を計算することです。多くの場合、スパム投稿には大量のハイパーリンクが含まれており、この方法で多くをキャッチできます. 同じように、連続した投稿の内容を比較しています。非常に類似した連続した投稿を許可しないでください。
もちろん、あなたが取った対策を知っている人なら誰でもそれらを回避することができます. 正直なところ、特定の攻撃の対象になった場合にできることはほとんどありません。むしろ、より一般的で未熟な攻撃を防ぐことに集中する必要があります。
従来のブラウザを使用していないユーザーがソリューションにアクセスできるようにすることを忘れないでください。iPhoneの群衆は無視されるべきではなく、視覚や認知の問題を抱えている人々も除外されるべきではありません。
アニメーション キャプチャ - スクロール テキスト - は人間が簡単に認識できますが、どのフレームも完全に認識できるものではないことを確認する必要があります。
多肢選択問題 - 必要なのは ______ と笑顔だけです。ここでのアイデアは、ユーザーが選択/理解する必要があるということです。
セッション変数 - セッションに入れた変数がリクエストの一部であることを確認します。単にリクエストを生成するだけの愚かなボットを阻止しますが、ブラウザのようにモデル化されたボットは阻止できません。
数学の質問 - 2 + 5 = - これもまた、簡単に解決できる質問をすることですが、ボットが応答を生成する能力を妨げます。
画像グリッド - 画像のグリッドを作成します - 動物の 3x3 グリッド画像などの特定のタイプの 1 つまたは 2 つを選択し、グリッド上のすべての鳥を選択する必要があります。
これにより、新しいソリューションのアイデアが得られることを願っています。
友人が最も簡単なスパム対策方法を持っていて、それがうまくいきました。
彼には、「数字の 4 を入力してください」というカスタム テキスト ボックスがあります。
彼のブログはかなり人気がありますが、まだボットが理解できるほどの人気はありません (まだ)。
このInvisible Captchaシステムのような Javascript 評価手法では、ページの送信が受け入れられる前に、ブラウザーが Javascript を評価する必要があります。ユーザーが Javascript を有効にしていない場合、従来の CAPTCHA テストを表示するだけでうまくフォールバックします。
ハニーポットは有効な手段の 1 つです。Phil Haack は、原則としてあらゆるフォーラム/ブログ/その他で使用できる1 つの優れたハニーポット メソッドを提供しています。
また、スパム リンクをたどり、そのページを分析して本物のリンクかどうかを確認するクローラーを作成することもできます。最も明白なのは、コンテンツの正確なコピーを含むページですが、他の指標を選択することもできます.
モデレーションとブラックリストへの登録は、特にWordPress 用のこれらのようなプラグイン(または、ほとんどのプラットフォームで同様のソフトウェアを使用できます) を使用すると、ボリュームの少ない環境で機能します。あなたの環境がボリュームの少ないものである場合、これがもたらす利点を過小評価しないでください。時間があれば、妥当なコンテンツと妥当でないコンテンツを個人的に判断することで、スパム制御の究極の柔軟性が得られます。
他の人が指摘しているように、CAPTCHA は画像からのテキスト認識に限定されないことを忘れないでください。視覚的な連想、数学の問題、および画像を介して伝えられるその他の非主観的な質問も対象となります。
Sblamは興味深いプロジェクトです。
Google画像ラベラーのようなものを適切に選択された画像で使用して、コンピューターが人間が認識できる主要な機能を認識できないようにします。
ユーザーには画像が表示され、それに関連付けられた単語を入力する必要があります。以前のユーザーが同じ画像に対して入力した内容と一致する十分な単語を入力するまで、画像が表示され続けます。一部の画像は、テストされていない新しい画像ですが、それらに関連付けられている単語を記録するために含まれています。視聴者によっては、視聴者だけが認識できる画像を選択することもできます。
Asiraの方針に沿って、どの写真が猫であるかを特定するように求めるいくつかの巧妙なアイデアを見てきました。このアイデアは、少し前にKittenAuthから生まれたと思います。
何人かがASIRRAに言及していることは知っていますが、画像のすべての養子縁組リンクにアクセスすると、そのリンク先のページに猫か犬かが表示されます. したがって、ボットがすべてのadaptmeリンクにアクセスするのは比較的簡単です。そのため、そのプロジェクトは時間の問題です。
メールアドレスを確認するだけで、Google / Yahooなどに心配させてください
非表示のフォーム フィールド。ユーザーには画面に表示されないフォーム フィールドを作成します。display: none を css スタイルとして使用して、表示されないようにします。アクセシビリティのために、隠しテキストを入れて、スクリーン リーダーを使用している人が入力しないようにすることもできます。ほとんどの場合、ボットはすべてのフィールドに入力するため、非表示のフィールドに入力した投稿をブロックできます。
スパマーの IP アドレスのブラックリストに基づいてアクセスをブロックします。
ハニーポット技術は、ページの上部に目に見えないおとりフォームを配置します。ユーザーはそれを見ずに正しいフォームを送信しますが、ボットは何もしないか IP を禁止する間違ったフォームを送信します。
Mollomは、スパムの阻止に優れていると思われます。個人用 (無料) 版とプロフェッショナル版の両方が利用可能です。
デバイス ID ソフトウェアを入手できます。the41 には、サイトへのアクセスに使用されているハードウェアを検出できる不正防止ソフトウェアがあります。彼らは詐欺師を捕まえるためにそれを使用していると思いますが、ボットを止めるために使用できる可能性があります. ボットが使用しているデバイスを特定したら、そのデバイスをブロックできます。前回チェックしたときは、電話ネットワーク(Geo-IPではありません!!)を介してルートを追跡することもできるため、必要に応じて郵便番号をブロックすることもできます.
とても高価です。兄弟よりも少し劣る、より安価なソリューションです。