Что значит невалидная капча

Некапча Mail.Ru – капча, которая не показывается

Привет, Хабр! Сегодня я хочу рассказать вам про наш относительно недавно созданный сервис капчи. Этот сервис отличается от аналогичных тем, что нашу капчу никогда чаще всего вообще не требуется разгадывать. Как известно, капча негативно влияет на конверсию — не все могут быстро ее разгадать, особенно если она неоправданно сложная, а часть пользователей уходят с ресурса. И я не знаю таких людей, которые любят ломать глаза и получают удовольствие от процесса разгадывания. Поэтому если избавить пользователя от необходимости вводить еще одно дополнительное поле, то это сделает его немножечко лояльнее.

Что значит невалидная капча. Смотреть фото Что значит невалидная капча. Смотреть картинку Что значит невалидная капча. Картинка про Что значит невалидная капча. Фото Что значит невалидная капча
Вряд ли кто-то сможет разгадать эту капчу 🙂

Если в двух словах, то Некапча — это сервис интеллектуальной капчи, не требующий от человека прохождения проверки. Естественно, без дополнительной информации сервис не может ничего сказать о пользователе. Откуда же ее взять? Дело в том, что у Mail.Ru более 100 млн пользователей, причем большая часть из них авторизована. А это значит, что с запросом на наши домены передаются сессионные куки, по которым мы определяем пользователя, а затем достаем его профиль, статистику, спам-рейтинг и т.д. Вся эта информация подается на вход алгоритма-классификатора, и на выходе мы получаем предположение о том, кем является пользователь — человеком или спам-ботом.

Мы подали заявку на изобретение по системе PCT в декабре 2013 года, сам сервис запущен весной 2014 года (кстати, задолго до запуска обновленной reCAPTCHA — пруф и, например, пруф). Чтобы быть уверенным, что сервис работает исправно, нам пришлось довольно долго держать его в статусе беты и запустить небольшую рекламу. Но теперь настал момент представить Некапчу широкой публике. Сервис создан для защиты форм на любых сайтах, доступен бесплатно всем пользователям и уже почти год успешно используется некоторыми нашими проектами.

Как это выглядит для пользователя

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

Что значит невалидная капча. Смотреть фото Что значит невалидная капча. Смотреть картинку Что значит невалидная капча. Картинка про Что значит невалидная капча. Фото Что значит невалидная капча
Неверифицированное состояние, требуется ввести капчу.

Виджет будет находиться в неверифицированном состоянии, если алгоритм посчитал, что пользователь является автоматизированным скриптом. В этом случае необходимо правильно ввести капчу. Если рисунок плохо читается, то его можно обновить. В рисунке капчи мы постарались достигнуть баланса читаемости и сложности.

Что значит невалидная капча. Смотреть фото Что значит невалидная капча. Смотреть картинку Что значит невалидная капча. Картинка про Что значит невалидная капча. Фото Что значит невалидная капча
Верифицированное состояние, проверка капчей не нужна.

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

Как это выглядит для вебмастера

Встроить Некапчу обычно не составляет большого труда. Для начала необходимо зарегистрировать свой домен на сайте Некапчи (поддерживаются IDN). Домену ставятся в соответствие два ключа: публичный и секретный. Публичный ключ нужен для генерации капчи, а секретный — для проверки.

И внутри формы div с идентификатором nocaptcha, в котором будет отрисовываться виджет:

Виджет добавляет два новых поля в форму:

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

В зависимости от метода запроса либо отрисовывается форма, либо выполняется обработка отправленной формы. После встраивания обработчик незначительно изменяется:

Добавились константы ключей, которые используются для отображения формы и проверки капчи. Перед отображением формы генерируется тег со ссылкой на скрипт Некапчи, в которую передается публичный ключ. До обработки полей формы выполняется запрос на проверку капчи. В зависимости от ответа сервиса обработчик может либо продолжить работу, либо проинформировать пользователя о непройденной анти-бот проверке и попросить повторить ввод. В этом примере используются вспомогательные функции из PHP-модуля, о котором будет чуть подробнее рассказано ниже.

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

Что значит невалидная капча. Смотреть фото Что значит невалидная капча. Смотреть картинку Что значит невалидная капча. Картинка про Что значит невалидная капча. Фото Что значит невалидная капча

А так выглядит диаграмма сообщений, когда пользователь отправил заполненную форму:

Что значит невалидная капча. Смотреть фото Что значит невалидная капча. Смотреть картинку Что значит невалидная капча. Картинка про Что значит невалидная капча. Фото Что значит невалидная капча

Настройка виджета

Виджет имеет ряд настроек отображения. Они задаются при помощи javascript-объекта nocaptchaSettings, который необходимо создать на странице с формой.

Виджет поддерживает локализацию. С помощью параметра lang задается один из двух доступных языков: русский или английский. По умолчанию используется русский язык.

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

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

Документация и вспомогательные модули

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

Кроме этого, были реализованы небольшие вспомогательные модули для двух языков — PHP и Python. Они расположены на github, доступны для скачивания, изучения и использования в любых проектах. В этих модулях есть несколько примеров, которые помогут разобраться с тем, как пользоваться их функциями. Также на основе исходного кода модулей можно легко написать свои собственные библиотеки для других фреймворков.

Надеюсь, наш новый сервис придется вам по вкусу, и ваши пользователи оценят его преимущества. 🙂

Источник

Решение главных проблем CAPTCHA

Что значит невалидная капча. Смотреть фото Что значит невалидная капча. Смотреть картинку Что значит невалидная капча. Картинка про Что значит невалидная капча. Фото Что значит невалидная капча
Как часто вы сталкиваетесь с тем, что не можете ввести предлагаемую капчу с первого раза? Теперь подумайте, какие трудности могут возникнуть у современного человека, который разговаривает с компьютером «на Вы»? Для него преграда в виде reCAPTCHA становится сильнее, чем для робота.

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

И я хочу рассказать о средстве, которое решает эти проблемы.

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

Автоматизированное распознавание капчи

В настоящее время существуют три основных способа автоматизированного распознавания капчи:

1. Использование ошибок в алгоритме защиты

Такой подход направлен на поиск логических ошибок (уязвимостей), позволяющих корректно отправлять форму, без распознавания самой капчи.
Это самый простой способ обхода защиты, но его можно применить в основном, только в простеньких самодельных решениях.
Наиболее популярной ошибкой является передача проверочного кода капчи через поля формы или cookie в открытом виде, в base64, или в md5-хеше без применения соли.
Атакующему не составит труда его получить, даже если ему придется сгенерировать rainbow-таблицу в соответствии с алфавитом капчи (только 5-тизначные буквы русского языка или только 6-тизначные цифры и т.п.) и сделать сопоставление.
Ошибкой так же считается, когда одна и та же капча может быть разгадана более одного раза. Это касается в основном случаев, в которых сгенерированный иднетификатор капчи действителен в течении 5-10 минут, но ограничений на количество проверок у него нет. Тем самым давая возможность атакующему, который уже знает ответ, многократно использовать идентификатор разгаданной капчи. Можно использовать брутфорс с одним и тем же идентификатором капчи, что, в конечном итоге, приведет к желаемому результату.

2. Автоматическое распознавание

Есть три основных пути успешного автоматического распознавания капчи:

I. Использовать готовые средства оптического распознавания (OCR)

Это самый простой подход, не требующий специальных навыков программирования. Такие программы в основном распространяются бесплатно, и их существует достаточно много: ocropus, cuneiform, tesseract, gocr, orcad и другие.
Атакующему нужно только передать картинку капчи такой программе, где на выходе он получит уже распознанный текст. Обычно такие программные продукты имеют множество тонких настроек, позволяющих сделать распознавание более эффективным.
Именно для предотвращения распознавания подобным образом, применяют различные искажения, скручивания, добавление мусора и т.п.
В данном случае процент распознавания может быть совсем небольшим (всего около 10%), но атакующий все равно добьется успеха.

II. Самописные скрипты с применением библиотек GD, ImageMagick и других

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

III. Нейронные сети

Наибольший интерес сейчас представляют именно нейронные сети. Для многих это до сих пор похоже на некую магию.
Нейронные сети стали применяться атакующими, с целью автоматического распознавания любых капч.
Они обучают нейронную сеть, которая способна с высокой степенью вероятности распознать даже самую сложную reCAPTCH’у.
Существует множество различных библиотек для разных языков программирования, которые распространяются бесплатно. Одна из таких библиотек, Fast Artificial Neural Network, ранее освещалась в журнале Харкер.

3. Полуавтоматическое распознавание с привлечением дешевых человеческих ресурсов

Есть множество сайтов, таких как antigate.com, rucaptcha.com, captchabot.com и т.д., которые предоставляют своим клиентам выгодную услугу. Они принимают от клиента, в автоматическом режиме, картинку с капчей, и через несколько (10-30) секунд выдают правильный, по их мнению, ответ. Процент удачного распознавания в таком случае очень высокий, порядка 90-95%.
Стоит отметить, что у неподготовленного посетителя этот процент намного ниже.

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

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

По моему мнению, количество распознаваний капч для целей спама, хоть и носит негативный характер, все же является не основным направлением сбыта такой услуги, являясь всего лишь вершиной айсберга. В то время, как сам айсберг, это — ни что иное, как предоставление доступа к консолидированной информации.
Вот вам пример. В нашей стране информацию по почтовым отправлениям (трекингу), находящимся на территории РФ, можно получить только на государственном сайте Почта России. Год назад они добавили капчу в форму отслеживания отправления, что сделало невозможным получение информации по интересующим отправлениям в автоматическом режиме.
А теперь подумайте, откуда берется на этих сайтах информация по отправлениям, но уже без капчи?

Противостоять таким сервисам очень не просто. Этому способствует несколько факторов:
Все без исключения владельцы сервисов перенесли ответственность за загрузку самих картинок на своих клиентов, что, в конечном итоге, не позволят вычислять ip-адреса, их собственные или людей, которые занимаются самим распознаванием, для последующей блокировки.
Если клиент такого сервиса обладает необходимыми знаниями, то он без труда подключит базу прокси-серверов, для обхода возможных блокировок.

Стоит так же отметить, что не было ни одного сервиса, включая reCAPTCHA, способного эффективно противостоять этому.

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

Лучшим решением для пользователя будет обычный текст на картинке, добившись того, чтобы использование автоматических способов распознавания существенно усложнилось.
На помощь приходит свойство прозрачности форматов изображений gif или png. Нужно сделать так, чтобы при наложении нескольких частей картинки друг на друга, пользователь мог видеть неискаженный текст. Абсолютно любые браузеры поддерживают эту функцию, и даже IE6.
Теперь немного усложним. Для начала создадим несколько прозрачных изображений, по размерам, сходным с оригиналом, и раскидаем попиксельно все исходное изображение на эти, заранее подготовленные слои. При просмотре каждого отдельного слоя невозможно будет точно сказать, что именно изображено на картинке-оригинале. Автоматически собрать воедино такое решение все еще так же легко.
Продолжим усложнять, и сделаем наши слои случайных размеров и из случайных мест исходного изображения.
Теперь вынесем всю информацию о слоях в отдельный css-файл стилей, который будет описывать положение каждого слоя относительно левого верхнего угла исходного изображения. Однако, нам потребуется как-то идентифицировать слои и отличать их друг от друга. Для этого присвоим всем картинкам случайные идентификаторы, и опишем их.

Пример сформированной html-страницы:

Пример css-файла /captcha/954f836a78de1d510d28ce70fa7b6a4a.css:

В дальнейшем этот процесс можно усложнять до бесконечности — на одних слоях рисовать лишние пиксели, на последующих слоях их закрашивать и т.д.

Не правда ли, все гениальное – просто?!

Что значит невалидная капча. Смотреть фото Что значит невалидная капча. Смотреть картинку Что значит невалидная капча. Картинка про Что значит невалидная капча. Фото Что значит невалидная капча

Защита от автоматизированного распознавания

Большой ошибкой, по моему мнению, является блокирование ip-адресов, которые многократно вводили значения капчей неверно.
Кто угодно может вводить сколько угодно раз неверные значения, и это ни на что не влияет. Капча как раз и рассчитана на такую фильтрацию.
Нужно блокировать только тех, кто уже указал X правильных значений. И разблокировать, если в течении N минут этот пользователь больше не вводил правильных значений.
Иными словами, ip-адрес посетителя сайта, который был замечен за правильным вводом Х капч за последние N минут, автоматически должен получить отказ.

Стоит так же отметить, что такой подход начинает эффективно работать в случае единого, централизованного сервиса.

Идеальным решением является такое, в котором подобные ограничения не являются обязательными, и имеется возможность изменения этих параметров под свои требования.
Кто-то из вас захочет сделать ограничения в 1 капчу раз в 30 минут, кто-то захочет 5 капч в течение 5 часов, а кто-то и вовсе предпочтет отключить проверку.
В случае использования такого ограничения, становится абсолютно не важно, каким способом происходит автоматизированное распознавание капчи.
Любое из них перестает быть эффективным решением.

Вы наверняка спросите: Что мешает использовать огромное множество прокси-серверов?
Прокси-сервера все берут из свободного доступа, с одинаковых сайтов по всему миру. Последний раз, когда мне приходилось ими пользоваться, реально работающими были около 20000 серверов, где 3000 из них работали постоянно.
Процесс поиска/создания собственных прокси-серверов для большинства затруднителен. В этот список попадают те сервера, которые были взломаны брутфорсом, заражены вирусами и т.д. Это специфическая ниша, реально доступная лишь немногим.
Если бы только один атакующий эксклюзивно владел бы такой базой в 20000 ip-адресов, он бы мог претендовать на распознавание 40000 капчей в течение каждого часа.
Это 960000 капчей в сутки – отличный результат!

А теперь представьте, что все атакующие полностью или частично владеют этой базой. Децентрализованное ее использование приведет к перманентному отказу в обслуживание по всем из них.
Рассмотрим пример. Вы только что использовали один ip-адрес для успешного распознавания капчи любым способом, и теперь ждете около полу часа, чтобы не попасть под блокировку, для совершения повторной попытки. Но оказывается, пока вы ждали, кто-то еще использовал этот адрес для ввода капчи на другом интересующем его ресурсе.
Такая попытка обернется ему отказом, так как этот ip-адрес был уже задействован вами несколькими минутами ранее. Вы, дождавшись, когда истечет время, распознаете капчу второй раз, но получаете отказ.
И так все начинает идти по кругу и до бесконечности.

Protection Privacy as a Service

До этого момента это была лишь теория. Но вы можете посмотреть на то, как это работает на практике – http://ppaas.org.
Сервис позволяет защищать любую текстовую информацию, такую как адреса email, телефонные номера и т.п.

Что значит невалидная капча. Смотреть фото Что значит невалидная капча. Смотреть картинку Что значит невалидная капча. Картинка про Что значит невалидная капча. Фото Что значит невалидная капча

UPD: Пожалуйста читайте пост внимательно, графическое исполнение, это просто для удобства прочтения, основная защита от автоматизированного распознавания заключается в другом.

Спасибо за внимание. Вместе мы сделаем этот мир лучше.

Источник

Капча: что это такое простыми словами

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

Что такое капча

Из расшифрованной выше аббревиатуры уже можно понять, что такое капча, простыми словами –она определяет, является ли пользователь реальным или спам-роботом. Так, возможно, на некоторых сайтах, чтобы узнать цену СЕО-продвижения придётся для начала ввести проверочный код. Капча генерирует сочетания из различных букв, цифр и знаков, полагаясь на способность человека определять, какими на самом деле символами они являются.

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

Что значит невалидная капча. Смотреть фото Что значит невалидная капча. Смотреть картинку Что значит невалидная капча. Картинка про Что значит невалидная капча. Фото Что значит невалидная капча

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

Что такое капча при регистрации

Многие задаются вопросом, что такое капча при регистрации и зачем она нужна. Да, зачастую, мы можем встретить капчу при заполнении регистрационных форм. Например, Вы думаете о том, как найти человека по почте, для этого нужно зарегистрироваться. Это вполне нормально и безобидно. В таких случаях капча направлена на борьбу с ботами, которые создают множество учётных записей для рассылки спама.

Что значит невалидная капча. Смотреть фото Что значит невалидная капча. Смотреть картинку Что значит невалидная капча. Картинка про Что значит невалидная капча. Фото Что значит невалидная капча

На веб-сайтах по продаже билетов, также используется капча, чтобы не допустить чрезмерного приобретения билетов на большие мероприятия скальперами (сторонниками скоростной торговли/спекуляции). Это позволяет законопослушным клиентам покупать билеты справедливо и не дает скальперам размещать тысячи заказов.

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

Что значит невалидная капча. Смотреть фото Что значит невалидная капча. Смотреть картинку Что значит невалидная капча. Картинка про Что значит невалидная капча. Фото Что значит невалидная капча

Неверная капча: что это такое

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

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

К сожалению, поскольку технологии и хакеры становятся более продвинутыми, их мошенническая тактика тоже. Чтобы полностью разобраться в теме и огородить себя от нежелательных последствий изучите, что такое спам в Интернете и чем он грозит. В то время, как сама система капчи безопасна, киберпреступники начали включать её в свои ложные или мошеннические веб-сайты, чтобы совершать свои действия более правдоподобно.

Что значит невалидная капча. Смотреть фото Что значит невалидная капча. Смотреть картинку Что значит невалидная капча. Картинка про Что значит невалидная капча. Фото Что значит невалидная капча

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

Сегодня мы разобрались в том, что такое капча и для чего она нужна. Узнать, как от неё избавиться можно на примере нашего рассказа о том, как убрать капчу в Яндекс Вордстат и будет ли это эффективно. Будьте внимательны и не попадайтесь на уловки интернет-мошенников.

Источник

Что такое капча простыми словами, капча при регистрации, зачем она нужна, плюсы и минусы

Что значит невалидная капча. Смотреть фото Что значит невалидная капча. Смотреть картинку Что значит невалидная капча. Картинка про Что значит невалидная капча. Фото Что значит невалидная капча

Капча — как Великая Китайская стена: обойти сложно, лезть не хочется. Зачем она вообще нужна на сайте, можно ли обойтись без нее и как сделать ввод капчи максимально удобным для пользователя?

Капча: что это такое

Капча (captcha) — это специальный защитный код, который показывается на некоторых сайтах в виде всплывающего окна или картинки. Пользователю предлагается решить простую задачу, подтвердить статус, ввести слова или цифры, ответить на вопрос. Если этого не сделать, вы не сможете далее пользоваться сайтом. Так программа определяет, реальный ли вы человек или бот.

Какие бывают капчи

Ввод капчи можно разделить на несколько способов.

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

Зачем нужна капча

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

Когда показывается капча

Минусы капчи

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

Вполне жизненный пример: пользователь выбрал товар в интернет-магазине, уже готов его купить, и на последнем этапе его просят ввести капчу при регистрации. Если капча сложная, он вполне может покинуть сайт навсегда.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *