ReCaptcha3

Table of contents


Added in ZennoPoster 5.25.0.0 and CapMonster 2.10.8.6.

In May 2018, Google introduced a new version of ReCaptcha. Now the system works in the "background" and does not require any action from the user.

ReCaptcha v3 analyzes the behavior of site visitors and other parameters, evaluating them on a scale from 0 to 1, where one is good.

Based on this assessment, the site owner decides what to do with the user: skip, block, limit functionality, deny action, arrange an additional check, etc.

When the site uses ReCaptcha v3, the following icon appears at the bottom of the page:

More information here.

How it works

The site owner embeds a special code into the page that processes user data and returns a token. Further, using the transferred token, the user is verified.

An example of using ReCaptcha v3 on a page:

<script src = "https://www.google.com/recaptcha/api.js?render=reCAPTCHA_site_key"> </script> <script> grecaptcha.ready (function () { grecaptcha.execute ('reCAPTCHA_site_key', {action: 'homepage'}). then (function (token) { // user verification }); }); </script>

To send ReCaptcha v3 for recognition in CapMonster2, you need to create a request that will include the URL and sitekey of the page, as well as the action. In the example, 'homepage' is specified as the action parameter.

CapMonster2 responds with a token that can be used for verification.

Usage in ZennoPoster

To send ReCaptcha v3 captchas from ZennoPoster, you can use the special Recognize ReCaptcha cube:

Also, in the cube you can change the captcha parameters: action and min score. The min score is not yet supported in CapMonster2.

If ZennoPoster cannot automatically determine the required sitekey, then instead of “In tab” select “Via SiteKey”. In this case, you will need to specify the sitekey key from the target site where the captcha is located, as well as the URL address of the site itself.

Supported modules

Recognizing ReCaptcha v3 is supported through the following modules:

Working with a token

After receiving the token, you need to pass it to the verification function. Since verification can occur at any time, you need to intercept the request for a token and, in response, replace it with the received token from CapMonster2.

To replace the token, you can use the snippet we have prepared:

var sitekey = // SiteKey string newToken = // New Token string replaceRegex = @ "(? <= \ [" "rresp" "," "). *? (? =" ")"; instance.ChangeResponse ("https://www.google.com/recaptcha/api2/reload\\?k=" + sitekey, new List <string> {replaceRegex}, new List <string> {newToken}, false);

Note

The use of SiteKey in the snippet is optional. But keep in mind that without using SiteKey, requests from all captchas, including ReCaptcha2, will be intercepted.

If this is not a problem, you can use this version of the snippet:

string newToken = //New Token string replaceRegex = @"(?<=\[""rresp"","").*?(?="")"; instance.ChangeResponse("https://www.google.com/recaptcha/api2/reload", new List<string> {replaceRegex}, new List<string> {newToken}, false);