Что такое капча и как она работает? Разбор каждого типа

Капча представляет собой тест, с помощью которого сайт отличает человека от скрипта. Если вы нажимали «Я не робот», перепечатывали искажённые буквы с картинки или отмечали все квадраты со светофором, значит, вы её проходили. Многие капчи вы вообще не видите, потому что современные принимают решение в фоновом режиме и вмешиваются, только когда что-то выглядит подозрительно.
Так что же такое капча на практике? Вот как расшифровывается эта аббревиатура, шесть типов, с которыми вы реально столкнётесь, и как каждый из них принимает решение.
Что означает CAPTCHA
CAPTCHA расшифровывается как Полностью автоматизированный публичный тест Тьюринга для различения компьютеров и людей. Длинное название, простая идея: показать задачу, которая людям даётся легко, а программам оказывается трудной.
Половина “сложно для программ” и есть та часть, которая постоянно меняется. Головоломки с искажённым текстом были действительно трудны для машины в 2003 году. Распознавание символов подтянулось, поэтому тесты перешли к изображениям, затем к поведению, а затем к оценке вас вообще без показа чего-либо. Каждое поколение существует потому, что предыдущее перестало работать.
Шесть типов, с которыми вы действительно столкнётесь
Почти каждая капча в интернете относится к одной из них.
1. Текстовая капча
Искажённые буквы и цифры внутри изображения. Вы перепечатываете то, что видите. Это самый первый формат, и он уходит в прошлое, потому что распознавание символов теперь хорошо с ним справляется. Вы всё ещё встретите его на старых форумах, устаревших государственных порталах и внутренних инструментах. Программным чтением такой капчи занимается решатель картиночных капч делает.
2. Выбор изображения
Сетка фотографий и инструкция: выберите автобусы, пешеходные переходы, велосипеды. Это тот формат, который большинство людей представляют, услышав это слово. Обычно это’ reCAPTCHA повышает уровень проверки, потому что что-то в запросе уже выглядело автоматизированным.
3. Чекбокс
Флажок “Я не робот”. Сам клик почти ничего не доказывает. Важно всё, что измеряется вокруг него: как пришёл курсор, как выглядит браузер, чем этот IP занимался в последнее время. Если прошли, вы внутри. Если нет, получаете сетку картинок.
4. Невидимая
Тот же механизм, без чекбокса. Проверка срабатывает при загрузке страницы или отправке формы. Большинство посетителей вообще ничего не видят, и проверка появляется только тогда, когда сигналы слабые.
5. На основе оценки
Никакой головоломки ни на одном этапе. Система возвращает число, оценивающее, насколько взаимодействие похоже на человеческое, а сайт сам решает, что с ним делать: пропустить, показать проверку или заблокировать. Для посетителей это проще, а для тех, кто это внедряет, заметно прибавляется работы, ведь теперь логика порога принадлежит самому сайту.
6. Cloudflare Turnstile
Альтернатива от Cloudflare, созданная для проверки с минимально возможным видимым взаимодействием. Она появляется как небольшой виджет внутри формы или как полностраничная промежуточная проверка (interstitial), пока выполняется задание. Наша страница о Cloudflare Turnstile рассказывает, чем эти два режима различаются на практике.
Вы можете попробовать «живые» версии всех этих на нашей Демо-страницы капчи.
Как капча принимает решение
На странице капча обычно представлена одним контейнерным элементом и одним скриптом:
<!-- A reCAPTCHA v2 checkbox: one div, one script. -->
<div class="g-recaptcha" data-sitekey="YOUR_SITEKEY"></div>
<script src="https://www.google.com/recaptcha/api.js"
async defer></script>
<!-- On success the widget writes a token into a hidden field
called g-recaptcha-response, which posts with the form. -->Видимая головоломка, если она вообще есть, составляет самую малую часть. За ней провайдер взвешивает сигналы, с которыми вы никогда не взаимодействуете напрямую:
- движения мыши, прокрутка и ритм набора текста
- характеристики браузера и устройства
- сколько запросов пришло с этого IP и что они делали
- cookie и предыдущая история с провайдером
- тайминг, например форма, отправленная быстрее, чем человек мог бы её прочитать
Затем результат передаётся в виде token. Виджет передаёт вашему браузеру недолговечную строку, форма отправляет её, а бэкенд сайта обменивает этот токен у провайдера, чтобы узнать, прошли ли вы. Ничего не решается в вашем браузере. Вот почему редактирование страницы никогда не помогает пройти.
Зачем сайты используют капчу
Потому что автоматизированные злоупотребления дёшевы и быстры. Один скрипт может отправить тысячи запросов к форме за то время, пока человек заполняет её один раз. Без проверки на входе небольшие сайты страдают так же легко, как и крупные.
Обычные цели:
- спам через формы обратной связи и комментариев
- регистрация фейковых аккаунтов
- перебор учётных данных на страницах входа
- парсинг контента, цен или списков товаров
- злоупотребление бесплатными пробными периодами, купонами и розыгрышами
- оформление заказа и скупка товарных запасов
Капча не делает всё это невозможным. Она делает это достаточно дорогим, чтобы большинство случайных попыток ушло в другое место.
Почему они раздражают людей
Потому что издержки ложатся на всех, а не только на ботов. Распространённые жалобы, все обоснованные:
- сетка, которая постоянно перезагружается, что бы вы ни нажимали
- текст слишком искажён, чтобы прочитать
- проверки, которые срабатывают на каждой странице, а не только на рискованных
- ложные срабатывания на VPN, общих офисных IP и приватных браузерах
- плохо поддерживает скринридеры и моторные нарушения
В этом и состоит настоящий компромисс. Усильте защиту, и вы заблокируете больше злоупотреблений, но и больше клиентов. Именно поэтому отрасль продолжает двигаться к невидимым проверкам на основе оценки: та же защита, но меньше её направлено на людей, которые никогда не были проблемой.
Капча лишь один слой, а не вся защита
Современные анти-бот системы редко ограничиваются одной капчей. Вокруг неё выстроены ограничение частоты запросов, репутация IP, браузерный фингерпринтинг, проверки устройства, поведенческий анализ и мониторинг сессий.
Вот почему два сайта, использующие одного и того же провайдера, ведут себя совершенно по-разному. Провайдер поставляет сигнал. Каждый сайт задаёт свои пороги и своё решение о том, чего вам должен стоить слабый сигнал.
Это также объясняет досадную асимметрию, когда один сайт пропускает вас сразу, а другой показывает вам четыре сетки изображений подряд на том же соединении.
Часто задаваемые вопросы
Что такое капча простыми словами?
Проверка, которую сайт использует, чтобы определить, является ли посетитель человеком, а не скриптом. Это может быть головоломка, флажок или незаметная фоновая проверка, которую вы никогда не замечаете.
Зачем сайты используют капчу?
Чтобы сократить спам, фейковые регистрации, брутфорс-входы, парсинг и другие автоматизированные злоупотребления. Она работает за счёт того, что каждая попытка чего-то стоит, поэтому массовая автоматизация перестаёт быть дешёвой.
Какие основные типы капчи существуют?
Текстовая, выбор изображений, чекбокс, невидимая, на основе оценки и Cloudflare Turnstile. Первые две показывают вам задачу. Остальные решают в основном или полностью на основе сигналов, которых вы никогда не видите.
Всегда ли капча видима?
Нет. Невидимые и основанные на оценке системы работают, ничего не показывая, и выводят проверку, только когда запрос выглядит подозрительно. Если кажется, что на сайте нет капчи, возможно, вы просто раз за разом её проходите.
Останавливает ли капча всех ботов?
Нет, и это не является её целью. Она повышает стоимость автоматизации. Настойчивые злоумышленники всё равно проходят, и именно поэтому она используется вместе с ограничением частоты запросов, фингерпринтингом и проверками репутации, а не вместо них.
Сводка
Капча служит дешёвым фильтром между посетителем и действием. Видимая головоломка составляет лишь малую часть, основную работу делают сигналы вокруг неё, а результат передаётся в виде токена, который ваш браузер не может подделать. Шесть форматов охватывают почти всё, с чем вы столкнётесь, и тренд уверенно смещается в сторону тех, которые вы никогда не видите.
С реализацией от Google вы столкнётесь чаще всего, и ей посвящён отдельный разбор в что такое reCAPTCHA и как она работает. Если вы находитесь по другую сторону и обрабатываете капчи внутри краулера или набора тестов, см. Обработка капчи для парсинга. Сам CapSkip является безлимитный сервис распознавания капчи который работает на вашем собственном компьютере.
