Google не принимает часть ответов на ReCaptcha

2018-08-13 18:47:25

Описание проблемы

  В начале июля несколько клиентов, независимо друг от друга, пожаловалась нам о том что часть токенов для прохождения ReCaptcha, которые они получают от нас, не принимается сайтами, где проходится капча. Мы провели ряд экспериментов и выявили, что при верификации ответа на ReCaptcha, Google.com может вернуть вот такую ошибку:

{"success":false,"error-codes":["incorrect-captcha-sol"]}

 

  Этой проблеме подвержен не только наш сервис решения капч RuCaptcha.com, но и обычные люди, которые проходят рекапчу на каком-либо сайте, но сайт не принимает ответ на капчу от них.

В API ReCaptcha нет описания данной ошибки. Доподлинно нам не известны её причины, но некоторые зависимости мы смогли найти.

 

От чего зависит получение incorrect-captcha-sol

Появление incorrect-captcha-sol, по нашим наблюдениям, происходит по двум факторам:


1) Очень плохой IP
У Google, видимо, есть рейтинг для каждого IP-адреса. Если Вы решаете ReCaptcha без ошибок и не более 50 капч в сутки, то этот IP будет считаться хорошим.
Если Вы делаете что либо из этого списка:

  • совершаете много ошибок при решении

  • открываете капчу но не прорешиваете её до конца

  • решаете больше двух капч в минуту

То Ваш IP либо банится вообще, либо начинает получать такие токены, которые при дальнейшей проверке получают incorrect-captcha-sol

2) Плохие cookie
Помимо рейтинга IP, у Google есть рейтинг пользователей. Каждому, кто заходил на google.com или на страницу с установленной ReCaptcha, присваиваются свои cookie. Google анализирует Ваши действия в сети и оценивает насколько Вы похожи на живого человека или на робота. Если пользователь с одним набором cookie целый день решает капчи, даже если это делается с разных IP, то это, скорее всего, робот и такой пользователь будет решать капчи до зелёной галочки, но при дальнейшей проверке его ответа Google будет возвращать
{"success":false,"error-codes":["incorrect-captcha-sol"]}
Самое обидной в этом то, что при авторизации в гугловом почтовике gmail.com, Google проассоциирует Вас с Вашими прошлыми действиями и, если хоть один раз в прошлом посчитал Вас роботом, то теперь у Вас в 3 из 4 случаев не будет приниматься решение ReCaptcha.
 

Как RuCaptcha борется с incorrect-captcha-sol

 Для снижения количества “плохих” токенов  в ответах на капчи заказчиков, мы регулярно чистим куки в приложении работников, а также следим за качеством IP-адресов работников. Про это расскажем чуть подробнее.

 Да, некоторая часть наших работников имеет “очень плохие” IP-адреса, решая с которых ReCaptcha они получают токены, которые при последующей верификации получают incorrect-captcha-sol. Для борьбы с этим, мы раз в час выдаём тестовую ReCaptcha для каждого уникального IP-адреса и верифицируем ответ на неё в google.com. Если мы получили  incorrect-captcha-sol, то мы перестаём выдавать капчи для решения с этого IP и данный пользователь может решать капчи только через прокси (прокси, в свою очередь, также регулярно проверяются).

 Таким образом мы снижаем процент “плохих” ответов до 1-3%. К сожалению, прошли те времена, когда мы с гордостью говорили, что все 100% ответов на ReCaptcha от нашего сервиса верные.

 

Возвраты за плохие решения

С июля мы включили приём reportbad на ReCaptcha. Поэтому для сокращения издержек на капчу, Вы можете настроить автоматическое уведомление нас о том, что полученный от нас токен не прошёл верификацию, как это сделать описано у нас в API\Reportbad.

Каждый час мы собираем статистику по жалобам на работников и возвращаем средства за те капчи, которые были разгаданы "плохим" работником.


 

Похоже, гугл считает мой IP\куку плохим. Я нигде не могу пройти капчу, что мне делать?

Да, множество простых людей столкнулись с проблемой, что они не могут пройти авторизацию\регистрацию на сайтах, где установлена ReCaptcha. Что с этим делать мы расскажем в следующей новости. Следите за обновлениями на нашем блоге!