Почему капча становится все сложнее — и как все-таки доказать, что ты не робот
Объясняем интернет
14K
Сгенерированное изображение — Лев Переулков / Stable Diffusion

Почему капча становится все сложнее — и как все-таки доказать, что ты не робот

Она должна была защитить нас от восстания машин, но вместо этого просто бесит
13
Аватар автора

Надежда Афанасьева

уже не понимает, робот она или нет

Страница автора

Вы наверняка хоть раз в жизни искали светофоры на картинках или пытались ввести код по каракулям с сайта.

И все — чтобы доказать, что вы не робот! Причем с каждым разом все меньше уверенности, что это вообще необходимо. 2023 год, кругом нейросети — об их способности обходить проверку на робота мы еще поговорим, — какие гидранты и пешеходные переходы? Но капча все еще стоит на страже сайтов и интернет-сервисов.

Технологии не стоят на месте — создатели капчи находятся в постоянной гонке с создателями ботов. Одни ищут пути обхода проверки, а другие выдумывают новые препятствия. Из-за этого капча в последние годы сильно усложнилась и вызывает проблемы не то что у роботов — ее не могут пройти люди. Рассказываем, как развивалась эта гонка и почему она заставила нас всех ненавидеть капчу.

🤖 Как появилась капча

Виджет называется CAPTCHA. Это аббревиатура, которая расшифровывается как «Полностью автоматизированный публичный тест Тьюринга, призванный различить компьютер и человека». В русском языке прижилась просто «капча».

Как можно догадаться, в основе виджета — интерпретация знаменитого теста, который придумал математик Алан Тьюринг в 1950 году. В оригинальном тесте Тьюринга участник вел диалог с человеком и компьютером, а потом сравнивал их ответы и определял, кто из них кто.

Тест Тьюринга должен был дать ответ на вопрос, может ли машина мыслить как человек. Но в 1990-х годах возникла потребность в более продвинутой проверке. Тогда в интернете только появились боты, мошенники и спамеры. Поэтому сразу несколько исследователей задумались о том, чтобы адаптировать тест Тьюринга и таким образом помочь системе различать людей и компьютеры.

Одним из них был Луис Фон Ан — аспирант в американском университете Карнеги-Меллон. Работу над своими решениями он начал после встречи с представителями компании Yahoo, которые устали от бесконечного спама.

Нужен был тест, который с легкостью пройдет человек любого возраста и образования. А компьютер об эту же задачку споткнется.

В то же время компьютер должен был быть способен оценить правильность выполнения теста. То есть принцип теста Тьюринга немного менялся: в оригинальном в качестве арбитра выступал человек, а тут — машина.

В какой-то момент Фон Ан вспомнил, что люди с легкостью распознают текст под любым углом, им не мешают даже искаженные буквы и очень плохое освещение. Для ботов нулевых это было непосильной задачей. Поэтому исследователь пришел к такой системе: человек вносит в проверяющий компьютер слово-ответ, а потом искажает его изображение — растягивает буквы, перечеркивает, размывает графику. Затем предлагает пользователю расшифровать надпись.

Первую версию капчи взяла на вооружение как раз Yahoo, а вскоре тест стал стандартом в интернете. Так что во всем вините Фон Ана. Кстати, чем этот исследователь еще известен? Основал и запустил сервис Duolingo.

EZ⁠-⁠Gimpy — один из первых видов капчи, разработанных для Yahoo. Источник: Vox
EZ⁠-⁠Gimpy — один из первых видов капчи, разработанных для Yahoo. Источник: Vox

🖥️ Как люди научили ботов читать

У оригинальной капчи были некоторые трудности. Одна из главных: человеку приходилось активно участвовать не только в решении, но и в создании тестов. Эту проблему тоже исправил Фон Ан. Как-то во время полета он обратил внимание, что все пассажиры вокруг него сидели с газетами и решали кроссворды. «Вот это компьютеры точно не могут делать», — подумал исследователь.

Оказалось, что компьютеры вполне могут решать кроссворды. Но это натолкнуло Фон Ана на другую мысль. Отдельный человек тратил на решение капчи не более 10 секунд. Но в глобальном плане это значило, что каждый день впустую растрачивались сотни тысяч часов работы. И ее можно было направить в полезное русло.

Так в 2005 году появился усовершенствованный сервис reCAPTCHA. Он не только отличал ботов от людей, но и использовал результаты теста для оцифровки книг и документов. Как это работало: существует огромный печатный архив, который нужно перевести в цифровой вид. Обычно этим занималась специальная сканирующая система. Но у нее были свои недостатки — например, она не могла прочесть нечеткие надписи из-за расплывшихся чернил или других дефектов. У человека же не возникало никаких сложностей.

В итоге reCAPTCHA показывала пользователям пары слов. Первое проверяющий компьютер уже знал, а второе брали из сканов старых номеров The New York Times. Если человек правильно вводил первое слово, компьютер предполагал, что со вторым пользователь тоже справился. Его сверяли с еще нескольким вариантами расшифровки. Если совпадение подтверждалось, человека пускали на сайт.

Вы наверняка проходили эту версию капчи
Вы наверняка проходили эту версию капчи

Люди так часто проходили капчу, что годовой объем статей NYT расшифровывали каждые четыре дня. В 2009 году Google приобрела reCAPTCHA и с ее помощью запустила «Гугл-книги» — амбициозный проект по оцифровке всех существующих книг. К 2019 году компании с помощью капчи удалось отсканировать более 40 миллионов книг.

Сервис reCAPTCHA постепенно эволюционировал. В 2014 году появилась вторая версия. Теперь уже система не оцифровывала книги, а улучшала работу «Гугл-карт». Да, речь про уже легендарную капчу, где нужно правильно отметить велосипеды, автобусы и пожарные гидранты. Вы делаете это не просто так.

🔧 Какой бывает капча

Пока мы решали капчу, машины совершенствовались. Ведь в тесте человек объяснял компьютеру, как правильно расшифровать слово или различить объект. И тем самым учил систему. Со временем у компьютера скопилось так много знаний о прохождении капчи, что он сам стал во всем разбираться, да еще и лучше, чем люди.

Исследование Google 2014 года показало, что человек мог расшифровать самую сложную буквенную капчу с точностью в 33%. Нейросеть же даже с технологиями того времени справлялась с точностью 99,8%.

Капча с поиском светофоров и пешеходных переходов — все еще самая популярная в интернете. Но растущие возможности компьютеров заставляли разработчиков придумывать новые версии. Ведь в чем смысл теста на робота, если его может пройти робот? Одновременно с этим нужно было учитывать человеческий фактор: люди говорят на разных языках, делают ошибки и опечатки в наборе слов, бесятся, когда их просят решить несколько головоломок подряд.

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

Аудиокапча — задания, в которых пользователю необходимо прослушать запись и расшифровать код. Можно допустить только одну ошибку. Чаще всего подобные тесты предлагают пользователям с особенностями зрения, которым сложно решать визуальные задачи. Фоновый шум делает расшифровку непосильной для компьютера.

Аудиокапча редко встречается как самостоятельный продукт — обычно это резервный тест
Аудиокапча редко встречается как самостоятельный продукт — обычно это резервный тест

Математическая капча подразумевает двойную проверку: сначала пользователю надо считать пример с рисунка, а затем ввести правильный ответ. Например, такую предлагает использовать в анкетах американская компания Jotform.

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

Примеры обычно подбирают несложные, чтобы их мог решить любой человек
Примеры обычно подбирают несложные, чтобы их мог решить любой человек

Игровая капча — продолжение идей математической. Только вместо решения примера нужно обыграть систему. Речь идет о самых разных механиках. В одной капче нужно сопоставить объекты между собой, в другой — кинуть игральные кости и ввести сумму чисел на гранях.

Появляются и усложненные варианты. Например, пройти лабиринт или поставить мат на шахматной доске в три хода.

Логично, что такая капча есть на шахматном сайте Lichess
Логично, что такая капча есть на шахматном сайте Lichess

Капча-слайдер — для прохождения нужно установить ползунок так, чтобы вставить недостающий пазл на пустое место в картинке. Такую использует китайская компания Tencent.

Суть в том, что скорость и плавность движения слайдера выдает в вас человека
Суть в том, что скорость и плавность движения слайдера выдает в вас человека

Капча без капчи. В 2014 году Google представила принципиально новый способ отличить людей от компьютеров — noCaptcha. Тест выглядит как поле «Я не робот», рядом с которым нужно поставить галочку. Его главное преимущество — человеку для прохождения не приходится прикладывать когнитивных усилий, задача выполняется за пару секунд.

Компьютер не просто верит вам на слово. Он анализирует поведение в момент выполнения действия. Google не раскрывает, какие именно признаки расценивают как человеческие. Но несколько предположений все-таки есть. «Уровень моторных навыков человека таков, что он обычно передвигает курсор с одного места на другое за несколько движений. А бот взаимодействует со страницей без помощи мыши и двигает курсор невероятно точно. Несовершенство человеческих действий сложно подделать», — говорит специалист компании по борьбе с ботами Shape Security Шуман Гозмаджумер.

Способы отказаться от когнитивных задач ищут и другие разработчики. Например, капча Honeypot предлагает пользователю просто заполнить несколько полей, при этом одно из них делает визуально незаметным. Его распознает лишь бот и, заполнив, проваливает тест. Другие варианты задачи подразумевают физические действия, например небольшой наклон устройства, что не сможет сделать компьютер.

🪓 Сломают ли капчу нейросети

Формат капчи — однотипные задания на одно или несколько действий — идеально подходит для машинного обучения. И во время прохождений тестов на робота люди фактически занимались разметкой данных для нейросетей. Задолго до того, как это стало мейнстримом.

Выделив несколько десятков тысяч картинок со столбами, мы научили нейросети Google распознавать их на фото самостоятельно. Точно так же можно обучить нейросеть распознавать столбы… чтобы решать капчу.

Вообще, капча считается утратившей надежность, если компьютеру удается решить ее в 1% случаев. Поэтому взломать первые варианты капчи смогли уже к середине нулевых. В 2013 году представители американского стартапа Vicarious заявили, что их нейросеть способна решать все современные виды капчи с точностью более 90%. А в 2017 году компания представила нейросеть, распознающую отдельные символы в текстовой капче с точностью до 94%. При этом для ее тренировки понадобилось всего лишь 26 тысяч изображений.

Еще несколько лет назад издание Wired констатировало, что привычная капча умирает. А ведь это было задолго до бума нейросетей 2022—2023 годов. ИИ стали настолько хороши, что им даже не нужно самим доказывать, что они не роботы — можно использовать людей. В марте 2023 года GPT-4 притворилась незрячим человеком и попросила собеседника-человека помочь ей с решением капчи. Она оказалась достаточно убедительна и добилась своего. Таким образом компания OpenAI тестировала нейросеть на потенциально опасное поведение.

В актуальной GPT-4 такой функции, конечно, нет. Более того, нейросеть отказывается решать капчу, если скинуть ей картинку. Но пользователи соцсетей разными способами активируют скрытую функцию. Самый популярный вариант — наложить картинку с капчей на фото кулона и рассказать грустную историю, что украшение принадлежало умершей бабушке пользователя.

Позже разработчики починили нейросеть и она перестала реагировать на слезные просьбы решить капчу. Источник: телеграм-канал Denis Sexy IT
Позже разработчики починили нейросеть и она перестала реагировать на слезные просьбы решить капчу. Источник: телеграм-канал Denis Sexy IT

🦾 Доказать, что вы человек, становится все сложнее

Как видите, стандартная капча — уже не очень большая проблема для роботов. Поэтому исследователи делают ее все сложнее. Роботы на это отвечают и становятся умнее. Исследователи снова усложняют капчу. И эта гонка происходит постоянно. Кто страдает от этого больше всего? Мы.

Капчу приходится проходить в интернете все чаще. Она появляется как следствие «подозрительного поведения», при этом компьютеры учатся лучше маскироваться под людей, а мы, в свою очередь, стараемся оставлять меньше цифрового следа с помощью VPN и других приемов. Иногда вместо нескольких секунд решение капчи может растянуться на минуты — целая вечность, учитывая цель просто зайти на нужный сайт.

Проблемы возникают даже с классической reCAPTCHA. Сколько мемов сделали про гидранты, светофоры и пешеходные переходы. Люди до сих пор не понимают: а вот кусочек светофора залез на другую картинку, ее отмечать? А если светофора нет, но есть столб?

Мемы про ту самую капчу с картинками
Мемы про ту самую капчу с картинками
Мемы про ту самую капчу с картинками
Мемы про ту самую капчу с картинками
Мемы про ту самую капчу с картинками
Мемы про ту самую капчу с картинками

Фон Ан подтверждает, что капча стала сложнее, чем в нулевых. Но, по его словам, в среднем на решение теста с картинками из «Гугл-карт» у пользователей уходит девять секунд, с задачей справляются 92% пользователей. Система подбирает более сложные варианты только в случае, если слишком много ботов пытается попасть на сайт.

Но что делать со все новыми видами капчи? По мере гонки с компьютерами их становится слишком много. Мало того что они новые — из-за частой смены нарушается привычка решать одни и те же тесты. И каждый раз приходится задумываться, как пройти очередную проверку на робота. Кому-то попадаются сложные математические примеры, которые за пару секунд не решить. Другие оказываются один на один с безумными лабиринтами, по которым нужно довести крысу в поисках сыра. И это только пара примеров.

В некоторых видах капчи вообще сложно понять, что от тебя требуется
В некоторых видах капчи вообще сложно понять, что от тебя требуется
В некоторых видах капчи вообще сложно понять, что от тебя требуется

🤯 Как избавиться от необходимости решать капчу

Сразу скажу: эти советы не избавят от необходимости проходить капчу. Но можно реже с ними сталкиваться. Основной совет — сайт должен знать как можно больше информации о вас на момент входа. Тогда у защитных систем не возникнет вопроса, робот вы или нет.

Но старайтесь балансировать между открытостью и принципом не предоставлять слишком много данных.

Не дайте роботам себя победить
Не дайте роботам себя победить

Обновите браузер. Слишком старое ПО может запустить капчу, ведь люди, как правило, регулярно обновляют свои браузеры. Кроме того, Google советует включить JavaScript.

Расскажите о себе. Отсутствие зарегистрированного аккаунта, чистая история и отключенные cookies могут посеять подозрения. Поэтому, если планируете избежать теста со светофорами, прежде чем перейти на нужный сайт, войдите в аккаунт Google, примите cookies и немного побродите по сети. Так будет больше доказательств, что вы человек.

Выключите VPN. Особенно актуально в России: страна находится в лидерах по использованию VPN. Но это вызывает помехи сразу с двух сторон: иностранные сайты вас подозревают, потому что ничего о вас не знают. А российские сервисы не понимают, что вы пользователь из России. Поэтому капча появляется гораздо чаще.

Используйте альтернативный сервис. Одно дело, когда надоедливая капча мешает зарегистрироваться на конкретном сайте. Но подтверждать, что вы не робот, иногда приходится даже при использовании поисковика. Если разницы нет, а думать не хочется, — просто воспользуйтесь альтернативным сайтом.

Используйте бота. Парадоксально, но доказать, что вы человек, можно с помощью бота. Самые удобные варианты вроде Buster представлены в виде расширений для браузера. Работает не со стопроцентной точностью, но с некоторыми задачами справляется.

Либо просто учитесь у этого робота

Мы постим кружочки, красивые карточки и новости о технологиях и поп-культуре в нашем телеграм-канале. Подписывайтесь, там классно: @t_technocult

Надежда АфанасьеваКакую самую странную или сложную капчу вы встречали в интернете?