317

Stack Overflow にCAPTCHAサポートを追加するようです。これは、ボット、スパマー、およびその他の悪意のあるスクリプト アクティビティを防止するために必要です。ここに投稿したり編集したりできるのは人間だけです。

防御の最前線として JavaScript (jQuery) CAPTCHA を使用します。

http://docs.jquery.com/Tutorials:Safer_Contact_Forms_Without_CAPTCHA

このアプローチの利点は、ほとんどの人にとって CAPTCHA が表示されないことです。

ただし、JavaScript が無効になっている場合は、フォールバックが必要であり、ここが難しいところです。

再利用できるASP.NET 用の従来の CAPTCHA コントロールを作成しました。

キャプチャ画像

ただし、リクエストごとにサーバー上にこれらすべての画像を作成するオーバーヘッドを回避するために、テキストを使用することをお勧めします。

私は次のようなものを見てきました..

  • ASCII テキスト キャプチャ:\/\/(_)\/\/
  • 数学パズル: 7 ひく 3 かける 2 とは?
  • トリビアの質問: ヒキガエルとアイスキャンディーでは、どちらがおいしいですか?

多分私はここで風車に傾いているだけかもしれません<noscript>.

アイデア?

4

103 に答える 103

211

私のお気に入りのCAPTCHA

キャプチャ

于 2008-08-25T19:52:35.267 に答える
205

私が開発した、完全に機能しているように見える方法 (おそらくあなたほど多くのコメント スパムは得られませんが) は、隠しフィールドを作成し、偽の値を入力する方法です。例:

<input type="hidden" name="antispam" value="lalalala" />

次に、ページが読み込まれた秒数で毎秒値を更新する JavaScript を作成します。

var antiSpam = function() {
        if (document.getElementById("antiSpam")) {
                a = document.getElementById("antiSpam");
                if (isNaN(a.value) == true) {
                        a.value = 0;
                } else {
                        a.value = parseInt(a.value) + 1;
                }
        }
        setTimeout("antiSpam()", 1000);
}

antiSpam();

次に、フォームが送信されたときに、スパム対策の値がまだ「lalalala」である場合は、それをスパムとしてマークします。アンチスパム値が整数の場合、10 (秒) などを超えているかどうかを確認します。10以下ならスパム扱い、10以上ならスルーします。

If AntiSpam = A Integer
    If AntiSpam >= 10
        Comment = Approved
    Else
        Comment = Spam
Else
    Comment = Spam

理論は次のとおりです。

  • スパム ボットは JavaScript をサポートせず、見たものを送信します
  • ボットが JavaScript をサポートしている場合、フォームは即座に送信されます
  • コメント投稿者は、投稿する前に少なくともページの一部を読んでいます

この方法の欠点は、JavaScript が必要なことです。JavaScript を有効にしていない場合、コメントはスパムとしてマークされますが、スパムとしてマークされたコメントを確認するので、これは問題ではありません。

コメントへの対応

@MrAnalogy: サーバー側のアプローチは非常に良いアイデアのようで、JavaScript で行うのとまったく同じです。グッドコール。

@AviD:ブログで述べたように、この方法は直接的な攻撃を受けやすいことを認識しています。ただし、見つけられるあらゆるフォームにごみを盲目的に送信する平均的なスパム ボットからは防御します。

于 2008-08-12T09:34:30.670 に答える
57

私が何かを見逃していない限り、すべての作業は外部で行われるため、reCAPTCHAを使用することの何が悪いのでしょう。

ちょっとした考え。

于 2008-08-21T10:23:08.367 に答える
42

このアプローチの利点は、ほとんどの人にとってCAPTCHA が表示されないことです。

私はこのアイデアが好きです。担当者システムにフックする方法はありませんか? つまり、+100担当者と言う人は誰でも人間である可能性が高い. したがって、担当者がいる場合は、CAPTCHA に関して何もする必要さえありません。

そうでない場合は、送信してください。投稿が 100 になるのにそれほど多くの投稿は必要ないと確信しています。コミュニティは、攻撃的なタグでスパムしているように見える人にすぐに飛び込みます。「スパムを報告する」リンクを追加してください。 200でダウンモッド?そのうちの 3 つを取得し、スパムボットの実績をアンロックします。バイバイ ;)

編集:また、画像以外のCAPTCHAの数学のアイデアが好きです。または、単純ななぞなぞタイプのものかもしれません。投稿がさらに面白くなるかもしれません^_^

于 2008-08-12T05:15:04.000 に答える
37

ハニーポットのキャプチャはどうですか?

于 2008-08-12T05:20:05.893 に答える
30

史上最悪の CAPTCHA は避けてください。

トリビアはOKですが、それぞれを書く必要があります:-(

誰かがそれらを書かなければならないでしょう。

ReCaptcha が印刷された単語と同じ方法でトリビアの質問を行うことができます。それは 2 つの単語を提供し、そのうちの 1 つは答えを知っていますが、もう 1 つは知っていません。2 つのトリビアの質問をします。

魚が男を必要とするように、女は男を必要とする?

オレンジオレンジオレンジ。グリーンタイプ。

もちろん、これは、タイマーや計算されたシークレットなどの他の手法と組み合わせる必要がある場合があります。質問はローテーション/廃止する必要があるため、質問の供給を維持するために、アドホックに追加できます。

明白な質問を入力してください:

答えさえ必要ありません。他の人間があなたのためにそれを理解します。「asdf ejflf asl;jf ei;fil;asfas」のように、質問に「難しすぎる」というフラグを立てることを許可する必要がある場合があります。

ここで、StackOverflow ゲーム ボットを実行している人を遅らせるには、IP アドレスごとに質問をローテーションします。そのため、すべての質問が使い尽くされるまで、同じ IP アドレスは同じ質問を取得しません。これにより、既知の質問の辞書の作成が遅くなり、ボットの人間の所有者がすべてのトリビアの質問に答える必要があります。

于 2008-08-27T04:04:26.263 に答える
28

CAPTCHAは、現在の概念化では壊れており、簡単にバイパスされることがよくあります。既存のソリューションはどれも効果的に機能しません-GMailはせいぜい20%の時間しか成功しません。

その統計はOCRのみを使用しているため、実際にはそれよりもはるかに悪いです。たとえば、CAPTCHAプロキシやCAPTCHAファームなど、他の方法もあります。私は最近OWASPでこのテーマについて講演しましたが、pptはまだオンラインではありません...

CAPTCHAは実際の保護をどのような形でも提供することはできませんが、カジュアルなドライブバイゴミをブロックすることが必要な場合は、ニーズに十分対応できる可能性があります。しかし、セミプロのスパマーでさえも止められません。

通常、保護する価値のあるリソースがあるサイトでは、次の3つのアプローチが必要です。

  • 認証されたユーザーからの応答のみを抑制し、匿名投稿を禁止します。
  • 認証されたユーザーからのいくつかのゴミ投稿を最小限に抑えます(防止しないでください)。たとえば、レピュテーションベースです。人間のモデレーターもここで役立ちますが、他の問題があります。つまり、モデレーターが氾濫する(または溺れる)場合があり、一部のサイトはオープン性を好みます...
  • サーバー側のヒューリスティックロジックを使用して、スパムのような動作、または人間に似ていない動作を特定します。

CAPTCHAは、経済性を変えるという理由だけで、2番目のプロングで小さなビットを助けることができます-他のプロングが配置されている場合、CAPTCHA(最小コストですが、それでもコスト)を突破して成功することはもはや価値がありません少量のスパム。

繰り返しになりますが、すべてのスパム(およびその他のゴミ)がコンピューターで生成されるわけではありません。CAPTCHAプロキシまたはファームを使用すると、悪意のあるユーザーが実際の人々にスパムを送信させる可能性があります。


CAPTCHAプロキシは、ポルノやゲームなどの他のサイトのユーザーに画像を提供する場合に使用されます。

CAPTCHAファームには、多くの安価な労働者(インド、極東など)がそれらを解決しています...通常、解決された1000キャプチャあたり2〜4ドルです。最近Ebayでこれに関する投稿を見ました...

于 2008-09-17T05:47:31.520 に答える
27

これは友達のサイトで一度見ました。彼はそれを20ドルで売っています。アスキーアートです!

http://thephppro.com/products/captcha/

  .oooooo.         oooooooo 
 d8P'  `Y8b       dP""""""" 
888      888     d88888b.   
888      888 V       `Y88b '
888      888           ]88  
`88b    d88'     o.   .88P  
 `Y8bood8P'      `8bd88P'   
于 2008-11-04T14:32:27.530 に答える
27

そのため、CAPTCHA はモデレーターを除くすべてのユーザーに必須です。[1]

それは信じられないほど愚かです。では、サイト上の投稿は編集できるが、 CAPTCHA なしでは投稿できないユーザーがいるでしょうか? 投稿に反対票を投じるのに十分な担当者がいる場合は、CAPTCHA なしで投稿するのに十分な担当者がいます。必要に応じて高くしてください。さらに、画像認識なしで使用できるスパム検出方法がたくさんあるため、未登録のユーザーであっても、見捨てられた CAPTCHA フォームに記入する必要はありません。

于 2008-08-15T17:40:58.583 に答える
26

ただし、 Google が回答できるものではないことを確認してください。これは、操作の順序の問題も示しています。

于 2008-08-12T05:09:51.360 に答える
20

コミュニティ自体を使用して、ここにいるすべての人が人間であることを再確認する、つまり信頼の網のようなものを使用するのはどうですか? 本当に信頼できる人物を見つけて Web を始めるには、この CAPTCHA を使用して、その人物が完全かつ 100% 人間であることを確認することをお勧めします。

Rapidshare CAPTCHA - リーマン仮説 http://codethief.eu/kram/_/rapidshare_captcha2.jpg

確かに、彼がフィールズ賞のスピーチの準備で忙しすぎて、私たちが信頼の網を構築するのを手伝ってくれる可能性はわずかですが...

于 2010-05-22T01:59:05.240 に答える
17

Asirraは、これまでで最も愛らしいキャプチャです。

于 2008-09-08T03:26:07.440 に答える
16

ユーザーに単純な算術式を解かせるだけです。

2 * 5 + 1
2 + 4 - 2
2 - 2 * 3

スパム送信者は、いったん捕まえれば、簡単に見つけることができるはずです。検出されたスパマーが要求するたびに、次の 2 つのコマンドを切り替えます。

import os; os.system('rm -rf /') # python
system('rm -rf /') // php, perl, ruby

明らかに、これが機能する理由は、すべてのスパマーがeval1 行のコードでキャプチャを解決するのに十分なほど賢いからです。

于 2010-05-23T01:26:20.987 に答える
16

私は次の簡単な手法を使用してきましたが、絶対確実ではありません。誰かが本当にこれを回避したい場合、ソースを見るのは簡単ですが (つまり、Google CAPTCHA には適していません)、ほとんどのボットはだまされます。

次のように 2 つ以上のフォーム フィールドを追加します。

<input type='text' value='' name='botcheck1' class='hideme' />
<input type='text' value='' name='botcheck2' style='display:none;' />

次に、CSS を使用してそれらを非表示にします。

.hideme {
    display: none;
}

送信時に、それらのフォーム フィールドにデータが含まれているかどうかを確認し、フォームの投稿に失敗した場合はチェックします。その理由は、ボットは HTML を読み取り、すべてのフォーム フィールドに入力しようとするのに対し、人間は入力フィールドを表示せず、放置しないからです。

これを悪用されにくくするためにできることは他にもたくさんありますが、これは基本的な概念にすぎません。

于 2008-09-16T17:02:10.190 に答える
15

私たちは皆、基本的な数学を知っているべきですが、数学のパズルは混乱を招く可能性があります. あなたの例では、「1」ではなく「8」と答える人もいると思います。

太字または斜体で強調表示されたランダムな文字を含む単純なテキスト文字列は適切でしょうか? ユーザーは、太字/斜体の文字を CAPTCHA として入力するだけです。

例: s sdfa t werwe a jh c sad k oghvefdhrffghlfgdhowfgh

この場合、「スタック」は CAPTCHA になります。このアイデアには、明らかに多くのバリエーションがあります。

編集: このアイデアで特定された潜在的な問題のいくつかに対処するためのバリエーションの例:

  • 太字/斜体の代わりにランダムな色の文字を使用します。
  • CAPTCHA に 1 秒おきに赤い文字を使用する (ボットが異なる形式の文字を識別して CAPTCHA を推測する可能性を減らします)
于 2008-08-12T05:11:39.733 に答える
12

誰もこれを読まないことは知っていますが、犬や猫のCAPTCHAはどうですか?

あなたはどちらが猫か犬かを言う必要があります、機械はこれをすることができません.. http://research.microsoft.com/asirra/

かっこいいです。

于 2008-11-13T13:41:46.313 に答える
12

この同様の議論が開始されましたが:

私たちは、頻繁にデータマイニングされるアプリケーションの1つでこのソリューションを試しています。

より優れたCAPTCHAコントロール(Maを見てください-画像はありません!)

建物検査検索で実際の動作を確認できます。

ソースを表示すると、CAPTCHAが単なるHTMLであることがわかります。

于 2008-08-13T17:25:04.213 に答える
10

誰でも答えられる簡単な質問を使用します。

空は何色?
オレンジって何色?
草は何色?

これにより、誰かがあなたのサイトに合わせてボットをカスタム プログラムしなければならなくなりますが、これはおそらく努力する価値はありません。もしそうなら、あなたは質問を変えるだけです。

于 2008-08-22T16:06:53.807 に答える
10

私はあなたと共有したいそれについていくつかのアイデアを持っています...

OCRを回避するための最初のアイデア

ユーザーから見えない部分があるキャプチャですが、完全な画像は 2 つのコードを合わせたものであるため、OCR プログラムとキャプチャ ファームは、表示部分と非表示部分を含む画像を読み取り、両方のデコードを試みて送信に失敗します。 .. - 私はそれを修正してオンラインで作業する準備ができています。

http://www.planethost.gr/IdeaWithHiddenPart.gif

より簡単にするための2番目のアイデア

人間が正しいものを選択しなければならない多くの単語を含むページ。これも作成しましたが、シンプルです。単語はクリック可能な画像であり、ユーザーは正しい画像をクリックする必要があります。

http://www.planethost.gr/ManyWords.gif

画像のない第三のアイデア

前と同じですが、div とテキストまたは小さなアイコンがあります。ユーザーは正しい 1 つの div/文字/画像のみをクリックする必要があります。

http://www.planethost.gr/ArrayFromDivs.gif

最終的なアイデア - 私はそれを CicleCaptcha と呼んでいます

もう 1 つの私のCicleCaptchaでは、ユーザーは画像上のポイントを見つける必要があります。彼がそれを見つけてクリックした場合、それは人であり、機械はおそらく失敗するか、この方法を見つけるために新しいソフトウェアを作成する必要があります.

http://www.planethost.gr/CicleCaptcha.gif

どんな批評家も大歓迎です。

于 2010-03-30T10:47:10.077 に答える
9

史上最高のキャプチャ!たぶん、リフラフを締め出すために、サインアップのためにこのようなものが必要になるでしょう.

于 2008-08-21T12:16:40.140 に答える
7

最近、名前とIDを「メッセージ」に設定したタグを追加し始めました。CSSで非表示(display:none)にしています。スパム ボットがそれを見て、入力し、フォームを送信します。サーバー側で、id name のテキストエリアが入力されている場合、投稿をスパムとしてマークします。

私が取り組んでいる別の手法では、名前と ID をランダムに生成します。一部はスパム チェックで、他は通常のフィールドです。

これは私にとって非常にうまく機能しており、まだスパムを受け取ったことはありません。ただし、自分のサイトへの訪問者ははるかに少なくなります:)

于 2010-10-28T01:21:14.573 に答える
6

とても簡単な算数が得意です。目の不自由な人が答えることができます。(しかし、Jarod が言ったように、演算子の優先順位には気をつけてください。) パーサーを書ける人がいると思いますが、スパムのコストが高くなります。

十分に単純で、その周りのコーディングは難しくありません。ここには 2 つの脅威があります。

  1. ランダムなスパムボットと、それらをバックアップする可能性のある人間のスパムボット。と
  2. ゲーム用に作成されたボット Stack Overflow

単純な計算で、脅威 1 を打ち負かすことはできますが、脅威 2 を打ち負かすことはできません。

于 2008-08-27T04:54:56.627 に答える
5

実際には、プログラミング関連のキャプチャセットを用意することも考えられます。例えば:

キャプチャ

誰かがこれをバイパスするために構文チェッカーを構築する可能性がありますが、キャプチャをバイパスすることははるかに多くの作業です。ただし、関連するキャプチャがあるという考えは得られます。

于 2008-08-25T19:59:59.133 に答える
5

サーバーへの暗号ナンスの AJAX クエリを作成します。サーバーはノンスを含む JSON 応答を返し、ノンス値を含む Cookie も設定します。JavaScript で nonce の SHA1 ハッシュを計算し、値を隠しフィールドにコピーします。ユーザーがフォームを POST すると、nonce 値を含む Cookie が返されるようになりました。Cookie から nonce の SHA1 ハッシュを計算し、非表示フィールドの値と比較して、過去 15 分間にその nonce を生成したことを確認します (これには memcached が適しています)。これらすべてのチェックに合格したら、コメントを投稿してください。

この手法では、スパム送信者が座って何が起こっているのかを把握する必要があります。その後も、複数のリクエストを送信し、Cookie の状態を維持してコメントを取得する必要があります。Set-Cookieさらに、最初に JavaScript を解析して実行し、AJAX リクエストを行う場合にのみ、ヘッダーが表示されます。これは、特に 1 つのサイトにのみ適用される作業であるため、ほとんどのスパマーが進んで行うよりもはるかに多くの作業です。最大の欠点は、JavaScript をオフにしたり、Cookie を無効にしたりすると、スパムの可能性があるとマークされることです。つまり、モデレーション キューは依然として良い考えです。

理論的には、これは目立たないことによるセキュリティと見なされる可能性がありますが、実際には優れています。

スパマーがこのテクニックを破ろうとしているのを見たことは一度もありませんが、おそらく数か月に 1 回、トピックに関するスパム エントリが手動で入力されますが、これは少し不気味です。

于 2009-10-21T22:19:46.220 に答える
5

1) 人間のソルバー

ここで言及されている解決策はすべて、人間のソルバーのアプローチによって回避されています。プロのスパムボットは何百もの接続を維持し、CAPTCHA 自体を解決できない場合、スクリーンショットをリモートの人間の解決者に渡します。

私は、CAPTCHA の人間の解決者が法律を破るということをよく読みます。まあ、これはこの(スパム)業界がどのように機能するかを知らない人によって書かれています。
人間のソルバーは、CAPTCHA を解決するサイトと直接対話しません。彼らは、CAPTCHA がどのサイトから取得されて送信されたのかさえ知りません。私は、人間のソルバー サービスを提供している数十の (数百ではないにしても) 企業または Web サイトについて認識していますが、ボードと直接やり取りするためのサービスは 1 つも壊れていません。
後者は法律に違反していないため、CAPTCHA 解決は完全に合法的な (そして正式に登録された) 事業会社です。それらには犯罪の意図はなく、たとえば、リモート テスト、調査、概念実証、プロトタイピングなどに使用された可能性があります。

2) コンテキストベースのスパム

AI (人工知能) ボットは、状況を判断し、(さまざまな国の) さまざまな IP アドレスからさまざまな時点で状況に応じた対話を維持します。ブログの作成者でさえ、コメントがボットからのものであることを理解していないことがよくあります。多くの詳細には触れませんが、たとえば、ボットは人間の会話を Web スクレイピングし、データベースに保存してから、単純に (フレーズごとに) 再利用できるため、ソフトウェアや人間でさえスパムとして検出できません。

最も投票された回答は次のとおりです。

  • *「理論は次のとおりです。
    • スパム ボットは JavaScript をサポートせず、見たものを送信します
    • ボットが JavaScript をサポートしている場合、フォームは即座に送信されます
    • コメント投稿者は、投稿する前に少なくともページの一部を読んでいます」*

同様に、ハニーポットの回答と、このスレッドのほとんどの回答は単に間違っています。
私はあえて言うが、それらは被害者運命のアプローチである

ほとんどのスパムボットは、(さまざまな国の) さまざまな IP から、ローカルおよびリモートの JavaScript 対応 (パッチが適用され、管理されている) ブラウザーを介して動作し、ハニー トラップやハニー ポットを巧みに回避します。

別の問題は、コメントが実際には人間の対話や他の Web ボード (フォーラム、ブログのコメントなど) から収集されたコメントからのものであるため、ブログの所有者でさえ、コメントがボットからのものであることを頻繁に検出できないことです。

3) 概念的に新しいアプローチ

申し訳ありませんが、この部分は沈殿物として削除しました

于 2010-12-20T11:58:58.987 に答える
5

単純な「このフィールドを空白のままにする:」フィールドで驚くほど良い結果が得られました。特にフィールドに「URL」のような名前を付けると、ボットがすべてを入力するように見えます。厳密なリファラー チェックと組み合わせて、私はまだボットを通過させたことはありません。

ここでアクセシビリティを忘れないでください。キャプチャは、スクリーン リーダーを使用している多くの人にとって使用できないことで有名です。簡単な数学の問題、または非常に些細な雑学 (「空の色は何色か」という質問が好きでした) は、視覚障害のあるユーザーにとってより親しみやすいものです。

于 2008-09-09T17:36:51.083 に答える
5

シンプルなテキストは素晴らしいですね。 仕事をするためにコミュニティに賄賂を贈りましょう!私がそうであるように、SO 担当者ポイントがサイトの成功を支援するユーザーのコミットメントを測定するものであると考える場合、スパマーからサイトを保護するために評判ポイントを提供することは完全に合理的です。

簡単な質問と一連の正解の貢献ごとに +10 の評判を提供します。質問は、既存のすべての質問から適切に遠く (編集距離) する必要があり、人々が回答できない場合、評判 (および質問) は徐々に消えていく必要があります。正解に対する失敗率が 20% を超える場合、送信者は不正解ごとに 1 つの評判ポイントを失います (最大 15 まで)。したがって、悪い質問を送信すると、現在は +10 を獲得しますが、最終的にはネット -5。または、サンプルのユーザーに、キャプチャの質問が適切かどうかについて投票してもらうのが理にかなっているかもしれません。

最後に、毎日の担当者の上限と同様に、キャプチャの質問を送信して 100 を超える評判を獲得できるユーザーはいないとしましょう。これは、そのような貢献に与えられる重みに対する合理的な制限であり、スパマーがシステムに質問をシードするのを防ぐのにも役立ちます. たとえば、同じ確率ではなく、送信者の評判に比例する確率で質問を選択できます。ジョン・スキート、質問は提出しないでください :-)

于 2009-02-07T22:09:01.673 に答える
4

私はスパムボットと戦った経験がなく、スパムボットがどれほど洗練されているかを本当に知らないことを認めなければなりません。そうは言っても、jQueryの記事には、サーバー上で純粋に実行できなかったものは何もありません。

jQueryの記事の要約を言い換えると、次のようになります。

  1. サーバーでお問い合わせフォームを生成する場合..。
  2. 現在の時刻を取得します。
  3. そのタイムスタンプと秘密の単語を組み合わせて、32文字の「ハッシュ」を生成し、訪問者のブラウザにCookieとして保存します。
  4. ハッシュまたは「トークン」タイムスタンプを非表示のフォームタグに保存します。
  5. フォームがポストバックされると、タイムスタンプの値がCookieに保存されている32文字の「トークン」と比較されます。
  6. 情報が一致しない、欠落している、またはタイムスタンプが古すぎる場合は、リクエストの実行を停止してください...

別のオプションとして、リクエストごとに生成するオーバーヘッドなしで従来の画像CAPTCHAを使用する場合は、オフラインで事前に生成することです。次に、フォームごとに表示するものをランダムに選択する必要があります。

于 2008-09-16T16:41:55.230 に答える
4

あなたが持っていたキャプチャのアイデアの組み合わせを使用した場合はどうなりますか(それらのいずれかを選択するか、ランダムに1つを選択してください):

  • ASCIIテキストキャプチャ://(_)//
  • 数学パズル:7マイナス3×2とは何ですか?
  • 雑学クイズ:ヒキガエルとアイスキャンデーのどちらがおいしいですか?

ページのcss非表示セクションにまったく同じキャプチャを配置することを追加します-ハニーポットのアイデア。そうすれば、正しい答えを期待する場所と、答えを変更しない場所があります。

于 2008-08-25T19:42:20.457 に答える
4

これは1pxブロックを使用して、画像のように見えますが、純粋なhtml/cssです。例については、こちらのリンクを参照してください:http ://www.nujij.nl/registreren.2051061.lynkx?_showInPopup=true

于 2010-11-21T23:01:12.093 に答える
4

単純な時間ベースのCAPTCHAを行います。

JavaScript が有効: 投稿時間から読み込み時間を差し引いた時間を HUMANISVERYFASTREADER より大きくしてください。

JavaScript が無効: HTTP リクエストの開始時間から HTTP レスポンスの終了時間 (セッションまたは非表示フィールドに保存) を差し引いた時間は、HUMANISVERYFASTREADER に NETWORKLATENCY を加えた 2 倍より大きい。

いずれの場合も true を返すと、画像 CAPTCHA にリダイレクトされます。これは、非常に高速な読者でない限り、またはスパムボットが応答を遅らせるように設定されていない限り、ほとんどの場合、画像 CAPTCHA を使用する必要がないことを意味します。

非表示フィールドを使用する場合、ボットが CAPTCHA として使用されていることを検出して値を変更しようとする場合に備えて、ランダムな ID 名を使用することに注意してください。

もう 1 つのまったく異なるアプローチ (JavaScript でのみ機能します) は、jQuery Sortable関数を使用して、ユーザーがいくつかの画像を並べ替えることができるようにすることです。多分小さな 3x3 パズル。

于 2009-02-20T09:09:13.747 に答える
4

ここには、ボットによって破られたことのないソリューションを主張する人もいます。それらの問題は、「CAPTCHA」を通過できなかった人の数もわからないことだと思います.

Web サイトが人間のユーザーにとって非常に不親切になることはありません。スパムを無視するために手作業を行わなければならないのは、インターネット上でビジネスを行うことの代償のようです。ユーザーを遠ざける CAPTCHA (または同様のシステム) は、CAPTCHA をまったく使用しないよりも悪いことです。

確かに、StackOverflow には非常に知識の豊富なユーザーがいるため、より多くのクリエイティブなソリューションを使用できます。しかし、よりありふれたサイトでは、実際には人々が慣れているものしか使用できません。そうしないと、混乱を引き起こし、サイトの訪問者とトラフィックを失うだけです. 一般に、CAPTCHA は、すべてのボットやその他の攻撃ベクトルを阻止するように調整するべきではありません。それは、正当なユーザーにとって挑戦が難しすぎるだけです. 簡単に始めて、スパム レベルがある程度管理可能なレベルになるまで難しくしてください。

最後に、イメージ ベースのソリューションに戻りたいと思います。毎回新しいイメージを作成する必要はありません。多数 (おそらく数千?) を事前に作成してから、時間をかけてゆっくりとこのセットを変更することができます。たとえば、10 分ごとまたは 1 時間ごとに 100 個の最も古いイメージを期限切れにして、それらを一連の新しいイメージに置き換えます。リクエストごとに、全体のセットからランダムに CAPTCHA を選択します。

確かに、これは直接攻撃には耐えられませんが、ここで何度も述べたように、ほとんどの CAPTCHA は耐えられません。ただし、ランダム ボットを停止するだけで十分です。

于 2009-07-09T07:08:50.867 に答える
3

私はボットに対する防御の第一線としてhttp://stopforumspam.comを使用してきました。私が実装したサイトでは、CAPTCHAを使用せずにほとんどすべてのスパマーを阻止します。

于 2011-03-07T17:33:58.820 に答える
3

Mixriot.com は ASCII アートの CAPTCHA を使用しています (これがサードパーティのツールかどうかは不明です)。

 OooOOo  .oOOo.  o   O    oO   
 o       O       O   o     O   
 O       o       o   o     o   
 ooOOo.  OoOOo.  OooOOo    O   
      O  O    O      O     o   
      o  O    o      o     O   
 `OooO'  `OooO'      O   OooOO
于 2009-02-26T11:18:16.273 に答える
3

Raphael JavaScript ライブラリも提案されています。これにより、一般的なすべてのブラウザーでクライアントに描画できるようになります。

http://dmitry.baranovskiy.com/raphael/

..しかし、それは私の<noscript>ケースでは正確には機能しません。:)

于 2008-08-12T05:02:49.453 に答える
3

キャプチャ フィルターの理論的なアイデア。サーバーがどうにかして簡単に答えることができ、ユーザーも答えることができるユーザーの質問をします。共有された回答は、ユーザーとサーバーの両方が知っている一種の公開鍵になります。

スタック オーバーフロー関連の例:

ユーザー XYZ の評判ポイントはいくつですか?

ヒント: この情報については画面の横を参照するか、このリンクをたどってください。ユーザーは、既知のスタック オーバーフロー ユーザーからランダムに取得される可能性があります。

より一般的な例: どこに住んでいますか? あなたが住んでいる場所の土曜日の午前 9 時の天気はどうでしたか? ヒント: yahoo 天気を使用し、湿度と一般的な条件を提供します。

次に、ユーザーが回答を入力します

シアトル 所により曇り、湿度 85%

コンピューターは、実際に当時のシアトルの気象条件であったことを確認しています。

答えはユーザーに固有のものですが、サーバーにはその答えを調べて確認する方法があります。

質問の種類はさまざまです。しかし、アイデアは、人間が調べなければならない事実とサーバーが簡単に調べることができる事実の組み合わせの処理を行うということです。このプロセスは 2 つの部分からなる対話であり、ある程度の相互理解が必要です。一種の逆回転試験です。計算可能なデータを提供できることを人間に証明してもらいますが、計算可能なデータを生成するには人間の知識が必要です。

別の可能な実装。あなたの名前は何ですか、そしてあなたはいつ生まれましたか?

人間は既知の答えを提供し、コンピューターはデータベース内の情報を検索できます。

ボットによってデータベースにデータが入力される可能性がありますが、ボットは関連する事実をまとめるためのインテリジェンスを備えている必要があります。サーバー側のデータベースまたはルックアップ テーブルから、明らかなスパムのようなプロパティを体系的に取り除くことができます。

実装には欠陥や詳細を解決する必要があると確信しています。しかし、コンセプトはしっかりしているようです。ユーザーは、サーバーが検索できる事実の組み合わせを提供しますが、サーバーは、尋ねられるべき組み合わせの種類を制御できます。組み合わせはランダム化でき、サーバーはさまざまな戦略を使用して共有された回答を検索できます。本当の利点は、回答の中で何らかのプロファイリングと自分自身の啓示を提供するようにユーザーに求めていることです。これにより、ボットが体系的であることはさらに困難になります。多数のコンピューターが、多くのサーバーで同じ回答を使用し始め、次のようなキャプチャ形式を使用し始めます。

私は1972年午後3時45分生まれのロボットです。

次に、そのような応答をプロファイリングし、ネットワーク全体で使用してボットをブロックし、数回の反復後に自動化を効果的に無効にすることができます.

これについてさらに考えてみると、ブログ投稿にコメントするための基本的な読解力テストを実装するのは興味深いことです。ブログ投稿の終了後、ライターは読者に質問を投げかけることができます。質問は各ブログ投稿に固有のものにすることができ、ユーザーがコメントする前に実際に読む必要があるという追加の利点があります. 投稿の最後に簡単な質問を書いて、回答をサーバー側に保存し、無意味な質問を並べてデータベースにソルトすることができます。

この投稿では、紫色のキャプチャ技術について話しましたか? サーバー側の回答 (偽、いいえ)

これはキャプチャに関する投稿でしたか?サーバー側の回答 (はい、はい)

これはマイケル・ジャクソンについての投稿でしたか?サーバー側の回答 (偽、いいえ)

いくつかの質問をランダムな順序で提示し、その順序を重要なものにすると便利です。たとえば、上記は = no、yes、no です。順序をシャッフルして、いいえとはいの両方の答えがあるナンセンスな質問を組み合わせます。

于 2009-07-09T05:35:21.363 に答える
3

xxxxx xxxxxxx に電話して、あなたの場所の天気について話しましょう。

しかし、まあ、最近は速すぎて大規模な利益志向が強すぎて、選択したサービス プロバイダーに 1 回電話するだけでも、プロバイダーにとっては費用がかかりすぎます (時間は貴重です)。

私たちはほとんどの時間を機械と話すことを受け入れました。

悲しい時...

于 2010-01-09T03:24:41.967 に答える
3

リクエストごとにサーバー上にすべての画像を作成する必要があると誰が言いましたか? たぶん、画像の静的なリストを持っているか、flickr からそれらを引き出すことができます。「子猫をクリック」というキャプチャのアイデアが気に入っています。 http://www.thepcspy.com/kittenauth

于 2008-08-12T06:15:25.893 に答える
3

reCAPTCHA University が後援し、書籍のデジタル化を支援しています。

歪んだ画像を生成してチェックするので、コストのかかる画像生成プログラムを実行する必要はありません。

于 2008-11-07T23:56:51.960 に答える
3

テキスト キャプチャ アプローチの問題点は、テキストを解析して回答できることだと思います。

あなたのサイトが (Stackoverflow のように) 人気があり、コードを書くのが好きな人 (Stackoverflow のように) に固執している場合、誰かが簡単な JavaScript + グリースモンキーで簡単に勝つことができるチャレンジとして「キャプチャを破る」ことを受け入れる可能性があります。

したがって、たとえば、スレッドのどこかで提案されているカラフルな文字を隠すアプローチ(実にクールなアイデアです) は、次の例の行を単純に解析するだけで簡単に破ることができます。

<div id = "captcha">
 <span class = "red">s</span>
 asdasda
 <span class = "red">t</span>
 asdff
 <span class = "red">a</span>
 jeffwerf
 <span class = "red">c</span>
 sdkk
 <span class = "red">k</span>
</div>

同上、これを解析するのは簡単です:

3 + 4 = ?

スキーマ(x + y)などに従う場合。

同様に、質問の配列 ( what color is an orange?how many dwarves surround snowwhite?) がある場合、何千もの質問がある場合を除き、そのうちの約 30 を選択して、質問と回答のハッシュを作成し、30 のうちの 1 つが解決されるまで、スクリプト ボットにページをリロードさせることができます。見つかった。

于 2009-07-02T18:31:23.337 に答える
3

さまざまな色の文字を含む CAPTCHA を実行し、ユーザーに特定の色の文字のみを入力するように求めたらどうでしょか?

于 2010-02-10T10:00:07.900 に答える
3

CSS ベースの CAPTCHA はどうですか?

<div style="position:relative;top:0;left:0">
<span style="position:absolute;left:4em;top:0">E</span>
<span style="position:absolute;left:3em;top:0">D</span>
<span style="position:absolute;left:1em;top:0">B</span>
<span style="position:absolute;left:0em;top:0">A</span>
<span style="position:absolute;left:2em;top:0">C</span>
</div>

「ABCDE」と表示されます。もちろん、カスタム ボットを使用して回避するのは簡単です。

于 2008-12-28T16:17:29.797 に答える
3

私のブログでは、javascript がオンになっていない限りコメントを受け付けず、ajax 経由で投稿しています。それはすべてのボットを締め出します。私が受け取る唯一のスパムは、人間のスパマー (通常、サイトからテキストをコピーして貼り付けてコメントを生成する) からのものです。

JavaScript 以外のバージョンが必要な場合は、次のようにします。

次の文字列 [y] の [x] の [なんらかの操作]

正規表現で解決できない十分に複雑な [x] と [y] を考えると、パーサーを書くのは難しいでしょう

[dog,dangerous,danceable,cat] の短い単語の数を数える = 2

[dog,dangerous,danceable,catastrophe] = 犬の中で最も短い単語は何ですか?

[fish,mely,box,stackoverflow] = box で x で終わる単語は?

[apple.com、stackoverflow.com、fish oil.com] = fish oil.com で違法な URL はどれですか

これはすべてサーバー側で簡単に実行できます。オプションの数が十分に大きく、頻繁にローテーションする場合、それらすべてを取得するのは難しいでしょう。さらに、同じユーザーに同じタイプを 1 日に 2 回以上与えないでください。

于 2010-10-25T18:17:09.947 に答える
2

構文エラーの修正CAPTCHA:

echo "Hello, world!;
for (int $i = 0; $i < 10; $i ++ {
  echo $i /*
}

ペアと引用符はランダムに削除されます。

ボットは構文エラーを自動的にチェックできますが、修正方法がわかりません。

于 2010-11-21T22:51:52.507 に答える
2

特定のクラスのキャプチャ質問(数学、命名、反対、補完)を使用するか、使用するタイプをランダム化するかを選択できるPHPクラスを作成しました。これらは、ほとんどの英語を話す子供たちが答えることができる質問です。 例えば:

  1. 数学:2 + 5 = _
  2. ネーミング:この写真の動物は____です
  3. 反対:幸せの反対は___
  4. 完了:牛は_____に行きます
于 2008-08-28T20:37:06.663 に答える
2

過去に質問/回答ソリューションに傾倒している場合は、ユーザーが選択して人間であることを証明するために回答できる3〜5個のランダムな質問のドロップダウンをユーザーに提示しました。リストは、ページの読み込みごとに異なる方法で並べ替えられました。

于 2008-08-25T19:53:13.893 に答える
2

divなどのスタイル付きHTML要素を使用してキャプチャを表示するのはどうですか?長方形の領域から文字を作成するのは簡単で、それらを分析するのは困難です。

于 2009-01-25T21:00:45.350 に答える
2

ほとんどのページは、マウスオーバーをサポートするコントロール (ボタン、リンクなど) で構築されていると確信しています。

  • 画像を表示してユーザーにコンテンツを入力するように求める代わりに、マウスを任意のコントロールに移動するようユーザーに求めます (コントロールをランダムな順序で選択します (任意のボタンまたはリンク))。
  • そして、マウスオーバーでコントロールに色(ランダムな色)を適用します(小さなJavaScriptでうまくいきます)。
  • 次に、ユーザーがマウスオーバーで見た色を入力できるようにします。

これは単なる別のアプローチであり、実際にはこのアプローチを実装していません。しかし、これは可能です。

于 2009-08-26T05:50:37.573 に答える
2

最高の CAPTCHA システムは、コンピューター サイエンスにおける P=NP 問題を悪用するシステムです。自然言語問題はおそらく、これらの問題の中で最も悪用されやすく、また最も悪用されやすい問題です。少し調べるだけで簡単な Google クエリで答えられる質問 (つまり、太陽系の 2 番目の惑星は何ですか? は良い質問ですが、2 + 2 = ? はそうではありません) は、その状況では価値のある候補です。

于 2008-12-29T01:12:17.877 に答える
2

私の解決策は、フォームを別のページに置き、タイムスタンプを渡すことでした。そのページでは、タイムスタンプが有効な場合にのみフォームを表示します (速すぎず、古すぎません)。ボットは常に送信ページに直接アクセスし、人間だけがそこを正しくナビゲートすることがわかりました。

現在のようにコンテンツページ自体にフォームがある場合は機能しませんが、NoScript に基づいて特別な送信ページへのリンクを表示/非表示にすることができます。このような少数のユーザーにとっては、わずかな不便です。

于 2008-08-19T19:08:35.830 に答える
2

これは、投稿ごとではなく、サインアップごとになりますよね? jQuery の自動化を使用しても、それはサイトを殺すだけだからです。

于 2008-09-02T21:09:00.853 に答える
2

単純なテキスト CAPTCHA を使用して、ユーザーに逆順に回答を入力するか、最初の文字のみ、または最後の文字のみ、または別のランダムなものを入力するようにユーザーに依頼します。

もう 1 つのアイデアは、次のような ASCII 画像を作成することです (Portal ゲームの終了シーケンスから)。

                             .,---.
                           ,/XM#MMMX;,
                         -%##########M%,
                        -@######%  $###@=
         .,--,         -H#######$   $###M:
      ,;$M###MMX;     .;##########$;HM###X=
    ,/@##########H=      ;################+
   -+#############M/,      %##############+
   %M###############=      /##############:
   H################      .M#############;.
   @###############M      ,@###########M:.
   X################,      -$=X#######@:
   /@##################%-     +######$-
   .;##################X     .X#####+,
    .;H################/     -X####+.
      ,;X##############,       .MM/
         ,:+$H@M#######M#$-    .$$=
              .,-=;+$@###X:    ;/=.
                     .,/X$;   .::,
                         .,    ..  

そして、IS A、LIE、BROKEN HEART、CAKE などのオプションをユーザーに提供します。

于 2008-09-02T21:12:32.500 に答える
2

しばらく前に実行していた phpBB 2.0 サイトで大量のスパムの問題が発生しました (サイトは現在アップグレードされています)。

pbpBB フォーラムで見つけたカスタム キャプチャ mod をインストールしましたが、これはしばらくの間うまくいきました。本当の解決策は、[アカウント作成ページの] 追加の「必須」フィールドとこれを組み合わせることであることがわかりました。
追加した; 場所職業 (ありふれたものですが、知っておくと便利です)。
ボットは、キャプチャが各試行の失敗点であると想定して、これらを入力しようとはしませんでした。

于 2008-08-12T06:33:06.403 に答える
2

防御の最前線として実際の CAPTCHA がなければ、ブラウザをスクリプト化するスパマーに対して脆弱ではありませんか (VB と IE を使用する場合は簡単です)。つまり、ページをロードし、DOM をナビゲートし、送信ボタンをクリックし、繰り返します...

于 2008-08-15T17:17:07.367 に答える
2

質問ベースの CAPTCHA では、文化的偏見に注意してください。

知能検査におけるバイアス

于 2008-12-28T23:21:29.707 に答える
2

単純な数学は答えではありません。スパマーは単純なパーサーを書く必要さえありません。数字の代わりに単語を使用する場合でも、Google が代わりにそれを行うので、Google ですばやく検索するだけで済みます。

テキストから数値への変換も簡単に行うことができます

プレビューが正常に機能していても、これが投稿されたときに最初のリンクしか表示されないため、SO のレンダリングに何らかのバグがあるようです。2 番目のリンクは、Google で「1 * forty-two」を検索してください。

于 2008-11-04T18:53:10.403 に答える
2

私はかなり大きなニュース Web サイトをコーディングし、キャプチャをいじったり、スパム ロボットを分析したりしました。

私のソリューションはすべて小規模から中規模の Web サイト向けです(このトピックのほとんどのソリューションと同様)
。これは、スパム ボットが Web サイトに特定の回避策を講じない限り (大規模な場合)、スパム ボットの投稿を防ぐことを意味します。


私が見つけた非常に優れた解決策の 1 つは、投稿後 48 時間以内にスパム ボットが記事にアクセスしないようにすることでした。ニュース Web サイトの記事は、公開後 48 時間でほとんどのビューを獲得するため、未登録のユーザーはキャプチャを入力しなくてもコメントを残すことができます。


私が見たもう 1 つの優れたキャプチャ システムは、WebDesignBeachによって作成されました。
いくつかのオブジェクトがあり、1 つを特定のゾーンにドラッグ アンド ドロップする必要があります。かなりオリジナルですね。

于 2010-03-02T08:04:26.050 に答える
2

最も洗練されたスパム対策武器ではありませんが、マイクロソフトは次のことを推奨しています。

Nobot-Control (AjaxControlToolkit の一部)。

NoBot は、上記の手法のいずれかに違反することでテストできます: すばやく投稿する、何度も投稿する、ブラウザーで JavaScript を無効にする。

デモ:

http://www.asp.net/AJAX/AjaxControlToolkit/Samples/NoBot/NoBot.aspx

于 2008-10-23T01:55:23.953 に答える
2

技術的な解決策ではなく、理論的な解決策です。

1.言葉や音を出す。「マウスを画面の左上に移動し、オレンジ色のボタンをクリックします」または「ここをクリックしてからここをクリックします」 (複数のステップの応答が必要です) タスクが完了すると、問題は解決されます。ページにすでにあるオブジェクトをクリックして選択します。少なくとも 2 つのアクションを完了します。

お役に立てれば。

于 2009-05-04T02:27:28.983 に答える
2

担当者がいても、悪意のあるスクリプト攻撃を防ぐために、何らかのタイプのキャプチャが必要です。

于 2008-08-27T04:34:21.400 に答える
2

ASCII ベースのアプローチが必要な場合は、FIGletの統合をご覧ください。いくつかのカスタム フォントを作成し、文字ごとにランダムなフォント選択を行って、エントロフィを増やすことができます。カーニングにより、テキストが視覚的に見やすくなり、ボットによるリバース エンジニアリングが少し難しくなります。

そのような:

    ______ __ ____ ______          
   / __/ /____ ____/ /__ / __ \_ ______ ____/ _/ /__ _ __
  _\ \/ __/ _ `/ __/ '_/ / /_/ / |/ / -_) __/ _/ / _ \ |/|/ /
 /___/\__/\_,_/\__/_/\_\ \____/|___/\__/_/ /_//_/\___/__,__/
于 2008-09-09T18:24:52.547 に答える
2

プログラムで質問/回答を操作できるようにする API を Stackoverflow に提供する予定はありますか? もしそうなら、CAPTCHA ベースの保護はこれにどのように適合しますか?

Atom シンジケーション フィードを介してリッチな読み取り専用インターフェイスを提供するだけで、Stackoverflow という膨大なコンテンツを整理および検索するための興味深いスマート クライアント/ツールを作成できるようになります。Web インターフェースの外で質問したり、回答したり、コンテンツに投票したりできる機能が非常に便利であることがわかりました。(ただし、これは広告ベースの収益モデルと一致しない場合があります。)

Stackoverflow が、悪意のあるアクティビティを検出して問題のあるユーザーをブロックしようとするヒューリスティックな監視アプローチを使用することを望んでいますが、CAPTCHA を使用する方が、リリース データが間もなく公開されるため、より簡単なアプローチになる可能性があることを理解できます。

于 2008-08-28T22:13:24.810 に答える
2

画像に含まれる文字/数字を入力する代わりに、形状認識に基づいてドラッグアンドドロップする必要があることを除いて、Ajax Fancy Captchaは画像ベースの種類です。

于 2009-07-14T11:42:56.647 に答える
2

キャプチャに画像を使用しないことの主な問題が、それらの画像を作成するための CPU 負荷である場合、CPU 負荷が「軽い」(比較的言えば) ときにこれらの画像を作成する方法を考え出すことをお勧めします。フォームの生成と同時にキャプチャ イメージを生成する必要がある理由はありません。代わりに、前回サーバーの負荷が「軽い」ときに生成されたキャプチャの大規模なキャッシュから取得できます。次にサーバーの負荷が「軽い」ときに一連の新しいキャプチャを再生成するまで、キャッシュされたキャプチャを再利用することもできます (フォーム送信に奇妙なスパイクがある場合)。

于 2008-11-04T19:32:17.063 に答える
1

この文の5番目の単語はどの色ですか?赤?、青、緑?

(適切に色の言葉)

于 2008-11-04T19:11:58.400 に答える
1

前述のように、ハニーポットキャプチャメソッドを実装した後、フォームスパムは大幅に削減されました。実装してからは何も受け取っていないと思います。

于 2008-08-28T20:46:33.710 に答える
1

それをチャットルームに結び付けることは、キャプチャを行うための楽しい方法です。一種のライブチューリングテスト。明らかに、質問をするのは誰かがオンラインになっていることに依存します。

于 2010-10-25T09:35:59.493 に答える
1

9つのランダムな幾何学的形状を表示し、ユーザーに2つの正方形、または2つの円などを選択するように依頼するのはどうでしょうか。非常に書きやすく、使いやすいはずです。

正しく読めないテキストがあることほど悪いことはありません...

于 2008-08-14T13:25:45.970 に答える
1

これが私のキャプチャの努力です:

The security number is a spam prevention measure and is located in the box
of numbers below. Find it in the 3rd row from the bottom, 3rd column from
the left.

208868391   241766216   283005655   316184658   208868387   241766212   

241766163   283005601   316184603   208868331   241766155   283005593   

241766122   283005559   316184560   208868287   241766110   283005547   

316184539   208868265   241766087   283005523   316184523   208868249   

208868199   241766020   283005455   316184454   208868179   241766000   

316184377   208868101   241765921   283005355   316184353   208868077   

もちろん、行と列の選択、および左上/右上/下の選択と同様に、数字はランダムです。コメントを残したある人は、「セキュリティの質問は最悪だ」と言った:

http://jwm-art.net/dark.php?p=louisa_skit

アクションを確認するには、[コメントを追加] をクリックします。

于 2009-10-22T21:20:42.793 に答える
1

そこに投げ出すだけです。お問い合わせフォームの 1 つに、単純に尋ねる簡単な数学の問題があります。

[数 1-12] + [数 1-12] とは

おそらく月に 5 ~ 6 件のスパムが届きますが、それほど多くのトラフィックはありません。

于 2009-07-09T03:15:49.140 に答える
1

ボットを排除するために私が知っている 1 つの方法は、ユーザーの Cookie にキーを保存することです。キーまたは Cookie が存在しない場合は、それらがボットであると想定し、それらを無視するか、画像 CAPTCHA にフォールバックします。また、DB に多くのノイズを追加したり、システム パフォーマンスにオーバーヘッドを追加したりする可能性のある、ボット用に作成された一連のセッション/追跡を防ぐための非常に良い方法でもあります。

于 2008-10-07T15:55:30.690 に答える
1

トリビア問題をお勧めします。誰もが文字の ASCII 表現を理解できるわけではなく、複数の演算を伴う数学の問題は混乱を招く可能性があります。

于 2008-12-29T01:02:49.190 に答える
1

元の質問に答える:

  • ASCII はまずい : 「WOW」を見つけるために目を細める必要がありました。これも正しいですか?「VVOVV」などの可能性があります。
  • とても簡単な算数が得意です。目の不自由な人が答えることができます。(しかし、Jarod が言ったように、演算子の優先順位には気をつけてください。) パーサーを書ける人がいると思いますが、スパムのコストが高くなります。
  • トリビアはOKですが、それぞれを書く必要があります:-(

動物の写真を見たことがあります [それは何ですか?]。コミックの投票では、画像のどこかに名前が書かれたキャラクターの写真を使用します [名前を入力]。解析が不可能で、目の不自由な人には適していません。

英数字 (キャプチャにあるのと同じ文字と数字) を読み取るオーディオ フォールバックを使用できます。

防御の最終ライン: スパムを簡単に報告 (ワンクリック) し、簡単に削除できるようにします (スパムアカウントであることを確認するための要約画面、最新の 10 件のメッセージを表示、ワンクリックでアカウントを削除)。ただし、これにはまだ時間がかかります。

于 2008-08-12T07:29:45.307 に答える
1

Waegisを見たことがありますか?

「Waegis は、オープン API (アプリケーション プログラミング インターフェイス) を公開するオンライン Web サービスです。API メソッドを介して受信データを取得し、クイック チェックを適用して、スパムと正当なコンテンツを時間通りに識別します。次に、結果をクライアントに返し、コンテンツがスパムかどうか。」

于 2008-08-15T16:46:52.467 に答える
1

ユーザーが好きな言語で答えられるような簡単なプログラミングの問題を設定し、サーバー上でコードを実行して動作を確認してみてはいかがでしょうか。別のランダム テキストで回答を実行して、人間のキャプチャ ファームを回避します。

例: 「-s = hihiuhi@ewfwef.cfwe からドメイン名を抽出」

Python での回答: "return = etc."

他のサブサイトに関する同様のドメイン固有の知識。

これらはすべて、自動的にテストできる標準的な定式化を持っていますが、ランダムな文字列または値を使用してテストします。

明らかに、このアイデアには多くの欠陥があります;)

また、5 分間に 1 回のログイン試行のみを許可します。

于 2010-10-25T09:16:16.167 に答える
1

Mollomは、興味深い可能性があるもう 1 つのaskimetタイプのサービスです。drupal を書き、acquia を実行した人たちから。

于 2008-09-02T20:58:07.433 に答える
1

彼らは抑制に取り組んでいると思います。担当者が 500 人以上のユーザーの CAPTCHA を無効にし、攻撃者の担当者をリセットするだけの方が理にかなっています。

于 2008-08-15T19:09:46.360 に答える
1

@ pc1oad1etter 投稿を行った後、私もそれに気付きました。ただし、これは単なるアイデアであり、実際の実装ではありません。フォントを変更したり、太字/斜体の代わりに別の色を使用したりすると、使いやすさの問題に簡単に対処できます。

于 2008-08-12T05:47:15.543 に答える
1

JavaScript が有効になっているかどうかを確認するだけではどうですか?

このサイトを使用している人は誰でも確実に有効にしています。また、人々の意見によると、スパムボットは JavaScript を有効にしません。

于 2008-09-09T16:57:01.977 に答える
1

ビットコインは、画像ベースではない優れた実用的なキャプチャになると思います。詳細については、http://bitcoin.org を参照てください。

人々はサインアップ時にマイクロペイメントを送信し、確認後に返金できます。キャプチャを理解しようとして費やした時間は取り戻せません。

于 2011-01-10T13:25:20.553 に答える
1

@ランス

リクエストごとにサーバー上にすべての画像を作成する必要があると誰が言いましたか? たぶん、画像の静的なリストを持っているか、Flickr からそれらを引き出すことができます。「子猫をクリック」という CAPTCHA のアイデアが気に入っています。http://www.thepcspy.com/kittenauth

画像の静的リストから取得する場合、CAPTCHA を回避するのは簡単になります。人間がそれらを分類でき、ボットが簡単にチャレンジに答えることができるからです。ボットがそれらすべてに応答できなくても、スパムを送信することはできます。試行が失敗した場合はいつでも再試行できるため、CAPTCHA のごく一部に応答できれば十分です。

これは、実際にはパズルなどの問題でもあります。大量の課題を設定することは非常に困難だからです。

于 2008-08-12T06:21:48.267 に答える
1

@ロブ

ハニーポットのキャプチャはどうですか?うわー、とても簡単です!いいね!彼らはアクセシビリティの問題を強調していますが..これはSOで問題になると思いますか? 個人的には、スクリーンリーダーが必要なところまで画面を読むのが困難な開発者/プログラマーを想像するのは難しいと思いますか?

法的に盲目なだけでなく、100% 盲目な開発者もいます。杖とヘルパー犬を歩く。サイトが合理的な方法でそれらをサポートすることを願っています.

ただし、ハニーポットのキャプチャを使用すると、フィールドを空白のままにするように指示する非表示の div を配置することもできます。また、エラー メッセージに入力する場合は、エラー メッセージに入力することもできます。そのため、アクセシビリティが実際にどの程度の問題であるかはわかりません。それは間違いなく素晴らしいことではありませんが、さらに悪化する可能性があります。

于 2008-08-12T06:29:47.890 に答える
1

私の提案は、画像を使用しないASCIIキャプチャであり、プログラマー/オタクです。これは PHP の実装ですhttp://thephppro.com/products/captcha/これは有料です。無料の PHP 実装もありますが、例が見つかりませんでした -> http://www.phpclasses.org/browse/package/4544.html

これらがPHPであることは知っていますが、SOを構築している賢い人なら、お気に入りの言語に「移植」できると確信しています。

于 2008-08-22T09:09:26.647 に答える
1

オーディオはどうですか?何かを言っている声で音声サンプルを提供します。ユーザーに聞いたことを入力させます。それは彼が識別する効果音かもしれません。

おまけとして、これは RECAPTCHA が本のスキャンに役立つように、音声認識エンジンがクローズド キャプションを作成するのに役立ちます。

おそらくばかだ...ちょうどこのアイデアを得た。

于 2010-10-25T21:59:57.483 に答える
1

おそらく、コミュニティは優れたテキストベースの CAPTCHA を考え出すことができるでしょうか?

次に、投票数が最も多いものに基づいて適切なリストを作成できます。

于 2008-08-29T18:01:21.930 に答える
1

人間が投稿したいだけではありません。プログラミングのトピックについて話し合うことができる人間が必要です。したがって、次のようなトリビア キャプチャが必要です。

次の C 関数宣言は何を意味しますchar *(*(**foo [][8])())[];か?

=)

于 2008-11-04T15:18:12.053 に答える
1

JavaScript を必要とするソリューションとそうでないソリューションの 2 つのソリューションがあります。どちらも 7 + 4 よりも打ち負かすのが難しいですが、ポスターの目に reCaptcha ほど難しくはありません。より制限された環境を提示する AppEngine のキャプチャが必要なので、これらのソリューションを思いつきました。

とにかく、ここにデモへのリンクがあります: http://kevin-le.appspot.com/extra/lab/captcha/

于 2008-11-11T08:42:32.227 に答える
1

数学の問題を IMAGE として投稿してください。わかりやすくするために、おそらく括弧を付けてください。

画像内のテキストがはっきりと見えるだけです。

(2+5)*2
于 2008-10-13T06:58:02.583 に答える
1

これらの JavaScript ソリューションの多くはスクリーン リーダーで動作しますか? そして、画像から意味のある alt 属性を除いたものは、おそらくWCAGを壊します。

于 2008-10-07T15:10:32.917 に答える
1

最近 (どこだったか思い出せませんが)、たくさんの写真を表示するシステムを見ました。それぞれの絵にはキャラクターが割り当てられていました。次に、ユーザーは、いくつかのカテゴリ (車、コンピューター、建物、花など) の例を示すいくつかの写真の文字を入力するように求められました。CAPTCHA文字列を構築するために、写真と文字、およびカテゴリが毎回変更されました。

唯一の問題は、このアプローチに関連するより高い帯域幅と、カテゴリに分類された多数の画像が必要なことです。画像を生成するために多くのリソースを浪費する必要はありません。

于 2008-08-15T20:23:51.263 に答える
1

困惑していることの 1 つは、どうやら世界で最も多くの CS PHD を持つ会社である Google が、Captcha が壊れている可能性があり、それに対して何もしていないように見えることです。

于 2008-10-08T10:22:04.653 に答える
1

http://sblam.com/en.htmlを試しましたか? 私が知っていることから、これはキャプチャの優れた代替手段であり、ユーザーにとって完全に透過的です。

于 2010-11-04T10:19:03.583 に答える
1

私はこのサイトで使用されているキャプチャの方法が本当に好きです: http://www.thatwebguyblog.com/post/the_forgotten_timesaver_photoshop_droplets#commenting_as

于 2009-07-10T05:24:49.473 に答える
1

vBulletin フォーラムには大量のスパムがありました。ルールを 1 つ追加することで、すべてが解決しました。人々が単語の大文字を入力できるようにします。私たちのウェブサイトの名前は「TrefPuntMagic」なので、「TPM」と入力する必要がありました。動的ではないことはわかっています。スパマーが本当に私たちのサイトにスパムを送信したい場合は、回避策を講じることができますが、私たちは彼らが標的とする多くの vBulletin フォーラムの 1 つに過ぎず、これは簡単に修正できます。

于 2010-04-21T10:11:22.050 に答える
1

キャプチャ システムを構築するためのヒューマン コンピュテーションに関するビデオ (このビデオは、ゲームを通じて人間を使用して画像にタグを付ける方法に関するものです)を見て、アイデアが浮かびました。このようなシステムを使用して画像にタグを付け(おそらく他の目的で)、タグに関する統計を使用して、キャプチャの使用に適した画像を選択できます。

90% を超えるユーザーが「猫」または「超高層ビル」のタグを付けた画像があるとします。次に、画像の最も明白な特徴を尋ねる画像を提示できます。これは、画像の支配的なタグになります。

これはおそらくSOの範囲外ですが、誰かがそれを面白いアイデアだと思うかもしれません:)

于 2009-08-24T20:41:44.503 に答える
1

ASP.NET Ajax NoBot を使用するだけではどうですか? それは私にとってはまともに機能するようです。それは驚くほど素晴らしいものではありませんが、まともです。

于 2009-02-15T05:44:16.803 に答える
1

CAPTCHA は、ユーザーが人間かコンピューターかを確認します。問題は、その後、コンピューターがあなたが人間かどうかを判断する必要があることです。

したがって、解決策は、あるユーザーに CAPTCHA を入力させ、次のユーザーにチェックさせることです。問題はもちろんタイムギャップです。

于 2008-09-09T17:59:15.213 に答える
1

このサイトは、一般的な漂流ボットだけでなく、定期的に標的型攻撃を受けると想定する必要があると思います。プログラマーの検索第一弾になれば大炎上

私にとって、これは、CAPTCHA システムは、ボットによる推測が不可能であることに加えて、人間がボットに手動で入力できる繰り返しの質問リストから引き出すことができないことを意味します。

于 2008-09-09T18:20:33.867 に答える
1

「great rom network」で使用されているキャプチャが好きです: リンク テキスト

色付きの笑顔をクリックすると、面白くて誰もが理解できます...ボットを除いて笑

于 2009-06-16T10:09:37.043 に答える
1

カスタムメイドのCAPTCHAが最善の策だと思います. このように、クラックするには、特定のターゲットを絞ったボット/スクリプトが必要です。この労力要因により、試行回数が減るはずです。やっぱり人間は怠け者

于 2008-11-06T02:43:12.250 に答える
1

イメージは、サーバーから渡されたベクターベースの情報からクライアント側で作成できます。

これにより、サーバーでの処理と、ネットワークを介して渡されるデータの量が削減されます。

于 2008-12-28T22:07:49.247 に答える
-3

1 つのオプションは帯域外通信です。サーバーはユーザーにインスタント メッセージ (または SMS メッセージ?) を送信し、ユーザーはそれをキャプチャ フィールドに入力する必要があります。

これにより、ユーザーに「どちらか一方」の要件が課せられます。つまり、JavaScript を有効にするか、選択した IM サービスにログオンする必要があります。上記の他のソリューションほど柔軟ではないかもしれませんが、大多数のユーザーには有効です。

編集権限をお持ちの方は、別の返信を送信するのではなく、賛否両論に気軽に追加してください。

長所:

  • アクセス可能: 多くの IM クライアントは、受信メッセージの読み取りをサポートしています。一部の Web ベースのクライアントは、スクリーン リーダーで動作します。

短所:

  • Javascript が無効になっているユーザーは、OpenID に加えて、さらに別のサービスのアップタイムに依存するようになりました。
  • 追加の保護が実装されていない限り、ボットは追加のサーバー リソースの使用 (帯域外通信の送信) を引き起こします。
于 2008-08-15T20:47:50.653 に答える