この投稿はGoogle ReCaptcha v2に関するものです(最新版ではありません)
最近グーグルはユーザーがそれをクリックするだけで "キャプチャ"に合格することを可能にする簡単な "キャプチャ"検証システム( video )を導入した。
しかし、クリックだけでボットと人を区別することができるのでしょうか。
この答え 、(同様の実装を仮定して)、最初に "recaptcha"は隠しキーを生成してそれを隠し入力要素に結びつけ、またチェックボックス(実際のチェックボックスinput
ではなくdiv
)を遅延レンダリングします。クリックされたとき、それを有効な確認キー(すなわち、フォームが提出されたときに確認されなければならないキー)としてそれをマークするためにグーグルバックエンドサーバーに非同期要求(XHR)を送ります)。
しかし、なぜボットがそのクリックを自動化できないのですか(少なくともブラウザベースのボット)。
これはどのように機能するのでしょうか。
これは憶測ですが、Googleが使用している「リスク分析エンジン」に対するGoogleの言及に基づいています( http://googleonlinesecurity.blogspot.com/2014/12/are-you-robot-introducing-no-captcha.html )
私はそれがあなたがクリックする前にどのように振る舞ったか、あなたのカーソルがどのようにチェックまで移動したか(有機的なパス/アクセラレーション)、チェックされました。指紋、GoogleのCookie、コンテンツ、指紋やアカウントに関連付けられたクリック位置の履歴が検出された場合など.
継続的に学習するパターン検出エンジンをだますような方法で「有機的」な振る舞いを偽造することはかなり困難です。よくわからない場合でも、実際のCAPTCHA文字列と一致するように要求されます。
ReCAPTCHAに対するいくつかのテストを含む新しい論文がリリースされました。
ハイライト:
グーグルはすでにクッキーの脆弱性を修正しており、おそらくIPに基づく行動を制限している。
もう1つの 興味深い発見 は、GoogleがJavaScriptでVMを実行しているため、reCAPTCHAのコードと動作の多くが難読化されていることを示しています。このVMはボットガードとして知られており、reCAPTCHA以外の他のサービスを保護するために使用されます。
https://github.com/neuroradiology/InsideReCaptcha
UPDATE 2017
最近の論文(8月から)がWOOT 2017に掲載され、noCAPTCHA reCAPTCHAオーディオの課題を85%の精度で解決しました。
http://uncaptcha.cs.umd.edu/papers/uncaptcha_woot17.pdf
UPDATE 2018
GoogleはreCAPTCHA v3を導入しています。これは、Webサイトごとに調整された「ヒューマンスコア予測エンジン」のようです。それはreCAPTCHAとウェブサイトの所有者がreCAPTCHAを埋める前に人間対ボットの行動を理解するのを助けるためにウェブサイトの異なるページ(Google Analyticsスクリプトのように働いている)にインストールすることができます。
私のボットはReCaptchaに対してうまく動いています。
これが私の解決策です。
あなたのボットにこのステップをやらせてください:
まず、マウスをBスプラインのように動かすHuman Mouse Move Functionを書いてください(ソースコードを要求)。これが最も重要なポイントです。
https://www.purevpn.com のようなより良い結果を得るためにもVPNを使用してください
すべてのRecpatchaに対して、次の手順を実行してください。
VPNスイッチIPを最初に使用する場合
ブラウザのCookieをすべて消去する
ブラウザキャッシュをすべてクリアする
これらのUseragentsのいずれかをランダムに設定します。
a。 Mozilla/5.0(互換; MSIE 9.0; Windows NT 6.1; Trident/5.0)
b。 Mozilla/5.0(Windows NT 6.1; WOW64; rv:44.0)Gecko/20100101 Firefox/44.0
5人間と一緒にあなたのマウスを動かす
その間にランダムな遅れでクリックしてください
WM_LBUTTONDOWN
そして
WM_LBUTTONUP
Image Captchaからスクリーンショットを撮る
スクリーンショットをに送る
または
そしてそれらを解決させてください。
Captchaソルバーからクリックcooridinatesを受信したら、Human Mouse move Funktionを使用して移動します。
あなたのHuman Mouse Move Funktionを使って移動し、Recaptcha Verifyボタンをクリックしてください。
75%の確率でRecaptchaは解決します
グーグル
トム
これはオープンテクノロジーではないので、私の推測を提示してください。
グーグルは、人間とロボットを区別するために、前、最中、後からの情報を組み合わせることについて述べている。しかし、私はチェックボックスの最後のクリックについてもっと興味があります。
たとえば、POSTデータ(解決されたCAPTCHA)には、Fingerprintというユーザーの行動から計算された文字列というフィールドがあります。そのチェックボックスの場所についてのフィールドがあるかもしれないと思います。このチェックボックスは、Googleバックエンドによってランダムに生成され、私のサイトの公開鍵によって暗号化された座標系になっていると思います。そのため、ロボットがこのボックスの位置を「推測/計算」する可能性がありますが、サイトの所有者が秘密キーを使用してGETクエリを実行してユーザーの身元を確認すると、Googleによって座標系が復号化されます。そのため、Googleとサイトの所有者だけが所有するこのランダムな座標系で、右クリック(オフセットはいくつかありますが、四角い箱)場所は1回だけです。