web-dev-qa-db-ja.com

reCaptchaを使用するときにリモートIPを含める理由はありますか?

アプリにGoogleのreCaptchaを実装しています。 ドキュメント によると、私のAPI要求には私の秘密鍵と応答が含まれている必要があります、およびオプションでユーザーのリモートIP。

どのような理由でリモートIPを含めますか?

20
Mooseman

悪意のあるユーザーがキャプチャを別の方法で解析できるように、DNS /ホストの再ルーティングが設定されている可能性があるため

考えられるシナリオの1つは、安価な労働力を蓄えて手動でキャプチャを解決し、フォームを使用して提出することです。 recaptchaがイメージを提供するのは、これが一度これを実行するのが面倒な方法だからです。 (要求された画像を他の場所にリダイレクトします)。

画像を要求するIPアドレスがページを要求するIPアドレスと異なる場合、これはこのスタイルの攻撃を示します。

12
Damian Nikodem

場合によっては、過去のGoogleがリモートIPなしのリクエストを拒否したことがあります。その後、空白文字列を含むany文字列を取ります。今ではオプションのようです。私は彼らがあなたの両方の目的でセキュリティを助け、APIの乱用を防ぐのを助けるためにi.pを求めていると想像します。現在のドキュメントではそれをオプションとしてマークしているので、必要に応じて省略してもかまいません。

https://developers.google.com/recaptcha/docs/verify

2010年のGoogleグループの投稿は次のとおりです。Recaptchaのサポートにより、remoteipがいつか必須になる可能性があります。

https://groups.google.com/forum/#!topic/recaptcha/Q83LJKz4biA

それが起こったようではないようです。しかし、彼らはそれを一度に必須にすることを考えていたようで、それを通り抜けませんでした。それは私の側の純粋な推測です。

3
baordog

WiFiホットスポットなど、内部ネットワークの多くがrecaptchaを使用するという別の理由もあります。

このような状況では、GoogleはユーザーとサーバーのIPの両方を同じ接続を共有しているため、同じものとして認識します。 GoogleにユーザーのローカルIPを与えると、リスク評価マシンは、画像選択をブルートフォースする個人を追跡するというより良い仕事をすることができます。

<tinfoil>また、Googleはデータを求めていますが、常に理由を正当化できるわけではありません</ tinfoil>

3
J.J

「スコア」を別のシナリオと比較すると、次のようになります。

  1. remoteipなし:0.7と0.9の間の変数スコア
  2. 「良い」remoteipの場合:ほとんどの場合0.9。
  3. "間違った" remoteipの場合:ほとんどの場合0.7。

このテストで常に同じ結果が得られるかどうかはわかりませんが、それは今日何度かテストした結果です。

したがって、IPを提供するとスコアが向上します。クライアント側とサーバー側からのダブルチェックにより、不正なアクティビティを検出できます。

2
foxontherock