web-dev-qa-db-ja.com

reCAPTCHA画像チャレンジをスキップする方法

ウェブサイトの1つにreCAPTCHAを実装していますが、正常に実装できました。正常に動作しています。 「ロボットではない」をクリックするだけでreCAPTCHAが完了しますが、画像グリッドを表示して正しい画像を選択し、キャプチャを完了します。

私はこれが可能かどうか疑問に思っていました。画像選択チャレンジを無効にして、reCAPTCHAを完了するには、「I'm not a Robot」をクリックします。画像グリッドを表示するためのGoogleの理論は何ですか?

私はすでにこれを読んでいます: reCaptchaの複数の画像選択を防ぐ しかし、そこには十分な情報がありません。

ありがとう!

以下にrecaptcha/api.jsを含めました。

<script src="https://www.google.com/recaptcha/api.js?onload=onloadCallbackAuto&render=explicit&hl=<?php echo $lang;?>" async defer >

私のreCAPTCHAコードは次のとおりです。

    var onloadCallbackAuto = function() {
         /// do something....
    }
    var verifyCallback = function() {
         /// do something....
    }
    grecaptcha.render('gReCaptchaDiv', {
     'sitekey' : '<?php echo $siteKey;?>',
     'callback' : verifyCallback,
     'theme' : 'light'
    });
23
elegant-user

新しいGoogle reCaptchaは、実際のユーザーがいるかどうかを判断するための高度なアルゴリズムを実装しています。使用されるいくつかの方法は、リクエストの繰り返しの検出(特定のソースからの短い期間に何度もリクエストが繰り返される場合)、時間のカウント(スクリプトが初期化されてから経過した時間)、カーソルイベント(移動やクリック)、スクロールイベント、javascript共通イベントトリガー、XHR呼び出し。

これらすべてのメソッドおよびその他の多くのメソッドは、非表示のreCaptchaを組み合わせており、Checkbox reCaptchaの場合、これらの検出メソッドの一部もトリガーされます。アルゴリズムが人間のユーザーにとって異常な何かを検出した場合、たとえばmousemoveイベントなしでreCaptchaチェックボックスをクリックしてトリガーされると、それは人間の結果に評価されないため、reCaptchaは他の何かに依存して、スクリプトボットではなく、人間がやっていることです。

答えは、それを避けることはできないということです。基本的なreCaptchaメソッドが失敗した場合、保護を提供するために何かをする必要があります。

アプリケーションのユーザーは、あなたのように頻繁に画像メソッドを見ることがないことに注意してください。あなたはいくつかのテストを行っており、コードの更新を行った後に同じことを何度も繰り返していると思います。したがって、同じソースからの繰り返しのためにreCaptchaがより頻繁に失敗します。

37
Christos Lytras

いいえ、スキップすることはできません。

なぜ私たちがそれらを手に入れたのか誰も指摘していないことに驚いています。画像の再キャプチャは、ユーザーがボットではないことを検出するだけではありません。気づいた場合、それらは常に交通、橋、標識、店頭などに関連しています。 Googleはこのツールを使用して、主に自動運転車向けの人工ニューラルネットワークをトレーニングします。この方法は、教師ありトレーニングと呼ばれます。

ニューラルネットワークには、教師ありトレーニングと教師なしトレーニングの2種類のトレーニングがあります。教師ありトレーニングは、ネットワークのパフォーマンスを手動でグレーディングするメカニズムを提供する場合です。したがって、これらのすべての車の写真を選択すると、ネットワークも同じことを試みます。基本的に、ネットワークのパフォーマンスを評価します。入力が多いほど、ネットワーク内の各ニューロンの重みを調整することによりインテリジェントになります。

教師なしトレーニングでは、ネットワークは外部からの支援なしで教えようとしていることを理解する必要があります。あまり効率的ではありませんが、それでも実行できます。

5
ColdTuna