Распознавание AWS WAF CAPTCHA: автоматическое получение aws-waf-token
Amazon WAF закрывает сайт сеткой картинок или пазлом с игрушечной машинкой, пока посетитель не получит cookie aws-waf-token. CapSkip получает этот cookie для ваших скриптов на компьютере с Windows, которым управляете вы, по одной фиксированной цене в месяц.
- Сетка картинок и пазл с машинкой
- Возвращает aws-waf-token
- Фиксированный тариф в месяц
Когда веб-файрвол Amazon решает, что посетитель похож на бота, он перестаёт отдавать страницу и сначала требует доказательство. Это доказательство и есть капча AWS WAF: обычно сетка картинок 3x3 с заданием вроде "Выберите все шторы" и кнопкой Confirm, иногда небольшой пазл, в котором игрушечная машинка должна доехать до конца городской улицы. Справитесь, и сайт выставит cookie aws-waf-token; до тех пор ваш парсер или бот не видит ничего, кроме проверки.
CapSkip представляет собой сервис распознавания капчи AWS WAF, который вы устанавливаете на настольный ПК с Windows, VPS или сервер. Вы передаёте ему значения из проверки, а он возвращает токен, нужный вашему HTTP-клиенту, чтобы продолжить работу, независимо от того, показывает ли сайт полностраничную заглушку 405 или встраивает виджет JavaScript API в форму. Ни одна удалённая ферма распознавания так и не узнает, с какими сайтами под защитой Amazon вы работаете.
Сервисы с оплатой за каждое решение обычно берут около $1.45 за каждую тысячу решений AWS WAF и заново выставляют счёт за каждую повторную попытку. CapSkip стоит одну и ту же фиксированную сумму от $35 в месяц при любом объёме, а инструмент, уже написанный под старый API in.php / res.php, Anti-Captcha, CapSolver или CapMonster, может отправлять свои задачи Amazon WAF в CapSkip без изменений в коде.
Токен остаётся у вас. CapSkip решает капчу AWS WAF на той машине, где работает приложение, поэтому сайты, которые вы обходите, значения проверок и полученные cookie никогда не проходят через сторонний сервис распознавания. Читать руководство по настройке
Создан для сайтов под защитой Amazon WAF
И сетка картинок, и машинка
AWS WAF сам выбирает, какой пазл достанется посетителю. CapSkip решает и сетку картинок "Выберите все...", и пазл с маршрутом игрушечной машинки, так что задача никогда не встанет на том варианте, к которому не была готова.
Полностраничная проверка или встроенный виджет
Одни сайты отвечают страницей 405 с проверкой внутри, другие размещают виджет капчи в форме входа или оформления заказа. Оба варианта покрываются одними и теми же полями запроса.
Cookie, которого не хватает вашему клиенту
В ответ вы получаете значение для cookie aws-waf-token или пару ваучеров, которую возвращает старый API. Установите это значение, повторите запрос, и защищённая страница загрузится как обычно.
Текущие клиенты продолжают работать
Запросы AmazonTask, AntiAwsWafTask и in.php method=amazon_waf принимаются как есть. Выберите в приложении сервис, с которым уже работает ваш код, и оставьте код прежним.
Прокси для настоящих объёмов
Для тестов вполне хватит одного адреса. Для постоянного потока задач AWS WAF привяжите прокси к каждому запросу или загрузите список прокси в приложение, чтобы работа распределялась по множеству IP.
Повторные попытки за наш счёт
Истёкший токен, страница, спросившая дважды, запуск, который за ночь вырос вдвое: ничего из этого не попадёт в ваш счёт, потому что тариф считается по машинам и ничего не измеряется.
Три способа пройти капчу AWS WAF с CapSkip
from capskip import CapSkip
solver = CapSkip(host="127.0.0.1", port=8080)
# Values from the 405 page's window.gokuProps. iv and context are optional:
# leave both out and CapSkip reads them from the page itself.
result = solver.amazon_waf(
sitekey="AQIDAHjcYu/GjX+QlghicBg...", # gokuProps.key
iv="CgAHbCe2GgAAAAAD", # gokuProps.iv
context="zPT0jOl1rQlUNaldX6LUpn4D...", # gokuProps.context
url="https://example.com/products",
)
# POST this pair to the voucher endpoint beside challenge.js for the cookie.
print(result["captcha_voucher"], result["existing_token"])В Python это один вызов: на вход подаются значения из window.gokuProps и адрес страницы, а обратно приходит пара значений с ваучером, которую сайт превращает в cookie aws-waf-token.
В Chrome или Firefox
Если расширение CapSkip установлено, а приложение открыто, страница проверки AWS WAF, на которую вы попадаете в браузере, проходится за вас, и страница перезагружается уже с нужным cookie.
Из ваших собственных скриптов
Отправляйте значения проверки по обычному HTTP из Python, Node.js, PHP, C# или чего угодно, что умеет делать запросы, и через мгновение забирайте токен.
Через инструмент, который у вас уже есть
Инструменты, которые уже отправляют задачи AWS WAF в сервис распознавания в поддерживаемом формате, можно направить на CapSkip, сохранив те же запросы и ответы.
От установки до первого aws-waf-token
-
Установите CapSkip на Windows
Установите приложение на ПК, VPS или сервер, который будет обрабатывать ваш трафик AWS WAF. Его локальный API запускается вместе с ним. Скачать CapSkip
-
Выберите тариф или начните пробный период
Тарифы зависят от количества машин, а не решений. Бесплатный пробный период даёт 3 дня и 500 решений, чтобы проверить собственные сайты под защитой Amazon, и не требует карты. Сравнить тарифы
-
Отправьте первую задачу AWS WAF
Отправьте значения проверки в CapSkip или переключите в приложении свой текущий клиент, добавьте прокси для объёма и установите полученный токен как cookie aws-waf-token. Открыть документацию API
CapSkip против сервисов AWS WAF CAPTCHA с оплатой за решение
Одна и та же проверка Amazon WAF, два способа за неё платить: фиксированный локальный тариф или счёт, который растёт с каждым токеном.
| Функция | CapSkip | Сервисы с оплатой за решение |
|---|---|---|
| Модель оплаты | Один месячный тариф от $35, сколько бы вы ни решали | Около $1.45 за 1,000 решений AWS WAF |
| Типы пазлов | Сетка картинок и пазл с маршрутом машинки | Зависит от сервиса |
| Форматы проверки | Заглушка 405 и виджет JS-API | Зависит от сервиса |
| Где выполняется решение | Ваш собственный ПК с Windows, VPS или сервер | Их серверы, каждая задача уходит к ним |
| Повторы после истёкшего токена | Бесплатно, ничего не считается | Оплачиваются как новые решения |
| Клиентский код | Ваш текущий клиент in.php или createTask без изменений | Их собственный формат задач |
| Масштабирование | Темп задают ваше оборудование и список прокси | Общая очередь и лимиты на аккаунт |
Цены
Хватит платить за каждое решение
Выберите лицензию
Лицензия Bronze
$35/ месяц
Мгновенная активация лицензии
Оплата помесячно. Отменить подписку можно в любой момент в личном кабинете.
Функции те же. Больше машин, больше производительность.
Каждая машина решает настолько быстро, насколько позволяют её процессор и память. Больше машин означает больше одновременных потоков, поэтому Silver решает вдвое больше капч одновременно, а Gold втрое больше.
- Безлимитное решение, без дневных ограничений
- Безлимитные потоки, скорость растёт вместе с оборудованием
- Точность распознавания от 90% до 100%
- Прямая замена API основных сервисов распознавания
- Работает почти с любым инструментом, без программирования
- REST API, SDK и расширение для браузера
- Бесплатное обучение, когда появляется новый тип капчи
- Работает на вашей машине, ничего с неё не уходит
Каждый тип капчи, показанный выше, входит в любую лицензию. Посмотреть список типов
Просто хотите сначала попробовать?
Начните с бесплатного 3-дневного пробного периода и решите 500 капч любого типа на своих целевых сайтах.
Похожие сервисы распознавания капчи & руководства
Как работает AWS WAF CAPTCHA и как решить её через API
AWS WAF представляет собой файрвол, который Amazon Web Services ставит перед дистрибуциями CloudFront, балансировщиками нагрузки и API-шлюзами. Владельцы сайтов пишут правила, определяющие, что происходит с каждым запросом, и одно из доступных действий называется CAPTCHA. Когда правило срабатывает, посетитель получает не запрошенную страницу, а пазл, и только решённый пазл даёт cookie aws-waf-token, который пропускает последующие запросы, пока не истечёт.
Проверка приходит в одном из двух видов. Самый частый вариант представляет собой заглушку: сервер отвечает статусом HTTP 405 и небольшой HTML-страницей, которая задаёт window.gokuProps (key, iv и context) и загружает challenge.js и captcha.js с хостов awswaf.com. Второй вариант называется JavaScript API: сайт подключает jsapi.js и вызывает AwsWafCaptcha.renderCaptcha со своим ключом API, поэтому пазл появляется внутри формы, а не заменяет страницу. Решение для AWS WAF должно принимать оба варианта.
Сам пазл обычно представляет собой сетку картинок: девять фотографий, одно задание с названием обычного предмета, например сумок, кроватей, часов или штор, и кнопка Confirm. Второй вид просит провести игрушечную машинку через маленький город до конца дороги. Есть и аудиовариант для людей с ограниченными возможностями. Что бы ни выпало, для вашего клиента важен один и тот же результат: действующий токен или, в старом API, пара captcha_voucher и existing_token, которую страница обменивает на cookie.
При больших объёмах продумайте сеть раньше кода. Одного IP достаточно, чтобы опробовать CapSkip на нескольких страницах, но парсер, который вызывает AWS WAF тысячи раз в день, должен менять адреса из списка прокси, загруженного в приложение CapSkip или передаваемого с каждым запросом в полях proxy и proxytype. Храните cookie в той сессии, которая его запросила, и запрашивайте новый, когда сайт снова начинает отвечать 405.
Что именно CapSkip возвращает для капчи AWS WAF?
Какие значения нужно отправить?
Решает ли CapSkip пазл с игрушечной машинкой так же, как сетку картинок?
Отличается ли страница 405 от виджета капчи AWS WAF?
Нужны ли прокси, чтобы решать капчу AWS WAF в больших объёмах?
Можно ли направить мой текущий код для капчи Amazon WAF на CapSkip?
Сколько времени занимает одно решение AWS WAF?
Почему для капчи AWS WAF стоит выбрать фиксированный тариф, а не платить за каждое решение?
Проходите капчу AWS WAF без счёта за каждый токен
Установите CapSkip, войдите в аккаунт и отправляйте проверки AWS WAF на собственную машину. Сетки картинок, пазлы с машинкой и повторы после истёкшего токена входят в один месячный тариф.
