ReCaptcha3

Добавлено в ZennoPoster 5.25.0.0 и CapMonster 2.10.8.6.

В мае 2018 года, компания Google представила новую версию ReCaptcha. Теперь система работает в «фоне» и не требует никаких действий от пользователя.

ReCaptcha v3 анализирует поведение посетителей сайта и другие параметры, оценивая их по шкале от 0 до 1, где единица - это хорошо.

На основе этой оценки владелец сайта решает, что делать с пользователем: пропустить, заблокировать, ограничить функционал, отказать в действии, устроить дополнительную проверку и т.п.

Когда на сайте используется ReCaptcha v3, внизу страницы появляется такая иконка:

Более подробная информация здесь.

Как это работает

Владелец сайта встраивает специальный код на страницу, который обрабатывает данные о пользователе и возвращает токен. Далее, с помощью переданного токена, происходит верификация пользователя.

Пример использования ReCaptcha v3 на странице:

<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) { //верификация пользователя }); }); </script>

Для отправки ReCaptcha v3 на распознавание в CapMonster2, Вам необходимо сформировать запрос, который будет включать URL и sitekey страницы, а также action. В примере, в качестве параметра action, указан 'homepage'.

CapMonster2 присылает в ответ токен, который можно использовать для верификации.

Использование в ZennoPoster

Для отправки каптч ReCaptcha v3 из ZennoPoster Вы можете использовать специальный кубик Распознать ReCaptcha:

Также, в кубике можно изменять параметры каптчи: action и min score. Пока min score в CapMonster2 не поддерживается.

Если ZennoPoster автоматически не может определить нужный sitekey, то вместо “Во вкладке” выберите “Через SiteKey”. При этом необходимо будет указать ключ sitekey, с целевого сайта, где находится каптча, а также URL адрес самого сайта.

Поддерживаемые модули

Разгадывание ReCaptcha v3 поддерживается через следующие модули:

Работа с токеном

После получения токена необходимо передать его в функцию верификации. Так как верификация может произойти в любой момент времени, нужно перехватить запрос на получение токена и в ответе подменить его на полученный токен из CapMonster2.

Для подмены токена Вы можете использовать подготовленный нами сниппет:

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);

Примечание

Использование SiteKey в сниппете не является обязательным. Но нужно учитывать, что без использования SiteKey будут перехватываться запросы ото всех каптч, включая ReCaptcha2.

Если это не является проблемой, Вы можете использовать такую версию сниппета:

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);