Ломаем капчу

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

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

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

Что такое капча? Зачем нужен ввод captcha?

Сейчас я покажу Вам примеры капчи, которые не так раздражают посетителей. К таковым можно отнести капчу, где нужно выставить вертикально 3 картинки. Далее хотелось бы пару слов сказать про математическую капчу. Она может быть как простой, так и сложной. Ведь при этом ввод капчи как таковой не происходит, а происходит изменение параметра CheckBox’a.

А меня как простого пользователя эти буквенно-циферные капчи нереально выбешивают. Для крупных проектов только свои способы защиты: свои капчи и свои алгоритмы. Робот скачивает капчу с нужного интернет-сервиса и предъявляет его посетителю порносайта.

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

Система тщательно изучает разные варианты введенных пользователями ответов и из них выявляет наиболее часто встречающийся. В сервисе ReCAPTCHA предлагались для распознавания фрагменты снимков из Google Street View; как правило, это фрагменты, на которых изображены номера зданий.

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

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

Путём анализа выявляем, что перепад цвета с пикселя (1, 1) на (2, 2) и т.д. 202020.Вычистить — это значит закрасить черным цветом, т.к. все цифры у нас не ниже цвета #606060. Проходим по всем пикселям сверху-вниз слева-направо, цвет которых подходит под цвет цифр и сверяем со всеми отпечатками по-порядочку.

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

Это самый простой способ обхода защиты, но его можно применить в основном, только в простеньких самодельных решениях. Такие программы в основном распространяются бесплатно, и их существует достаточно много: ocropus, cuneiform, tesseract, gocr, orcad и другие. Именно для предотвращения распознавания подобным образом, применяют различные искажения, скручивания, добавление мусора и т.п.

Одна из таких библиотек, Fast Artificial Neural Network, ранее освещалась в журнале Харкер. Есть множество сайтов, таких как antigate.com, rucaptcha.com, captchabot.com и т.д., которые предоставляют своим клиентам выгодную услугу. Это граждане беднейших стран мира, таких как: Индия, Китай, Вьетнам, Пакистан, Камбоджия и т.д.

Назначение и функция капчи

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

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

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

Это 960000 капчей в сутки – отличный результат! И так все начинает идти по кругу и до бесконечности. Капча — это автоматически генерируемый тест-проверка, является ли пользователь человеком или компьютером. Однако, captcha не всегда помогает, ведь на каждый замок можно найти ключ, иначе этот замок просто сломан и бесполезен.

Жмем правой кнопкой мыши на одну из 12 загруженных картинок и отправляем ее в систему предварительной обработки (Send To Image Preprocessor). Также есть капчи, где нужно выбрать правильную картинку из списка.

Читайте также: