Капча

Капча
Искаженная строка «smwm»

CAPTCHA [ˈkæptʃə] (от англ. «Completely Automated Public Turing test to tell Computers and Humans Apart» — полностью автоматизированный публичный тест Тьюринга для различия компьютеров и людей) — торговая марка Университет Карнеги-Меллона, компьютерный тест, используемый для того, чтобы определить, кем является пользователь системы: человеком или компьютером. Термин появился в 2000 году. Основная идея теста: предложить пользователю такую задачу, которую может решить человек, но которую крайне трудно научить решать компьютер. В основном это задачи на распознавание символов.

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

Содержание

Варианты реализации

  • В наиболее распространённом варианте CAPTCHA от пользователя требуется ввести символы, как правило, изображённые на предлагаемом ему рисунке в искажённом виде, иногда с добавлением шума или полупрозрачности.
  • Реже применяются CAPTCHA, основанные на распознавании речи (в основном — как альтернатива для людей с нарушениями зрения).
  • Могут также применяться другие плохо алгоритмизуемые задачи, например: узнать, что находится на картинке, отметить все картинки с кошками или ответить на вопрос, связанный со знаниями или менталитетом людей (например, «висит груша, нельзя скушать»).
  • Встречаются CAPTCHA, где предлагается ввести ответ на простое арифметическое действие.

Методы противодействия

Уязвимости защиты

Пример CAPTCHA с уязвимой защитой

Предположим, картинка с цифрами «1234» вызывается кодом

<img src="/captcha.php?code=1234" />

Вместо того, чтобы проходить CAPTCHA, бот считывает URL и вводит ответ 1234.

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

  1. Повторное использование идентификаторов сессии. В этом случае человек вручную проходит CAPTCHA. Идентификатор сессии и ответ на CAPTCHA передаются боту, и тот фабрикует большое количество запросов с этим идентификатором (а значит, и с тем же ответом на CAPTCHA). В идеале идентификатор сессии должен быть одноразовым и ограниченным по сроку действия.
  2. По какой-либо информации, содержащейся на странице, восстановить изображённые на картинке символы.
  3. Из-за особенностей генератора псевдослучайных чисел может выдаваться небольшое ограниченное число картинок, для которых можно создать базу данных. Если пользователь должен опознать картинку или ответить на вопрос, картинки/вопросы, естественно, подготавливаются администратором — а значит, для них тоже можно собрать базу.

Угадывание

Если количество вариантов ответов невелико, компьютер или ботнет может попытаться угадать ответ. Например, если задача — среди 10 картинок отметить животных, получается всего 210=1024 варианта ответа. Значит, в среднем один из 1024 запросов пройдёт CAPTCHA. То есть, даже при производительности 1 запрос в секунду (реальная цифра, например, для

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

Очень слабая CAPTCHA (на примере
К верхнему изображению применяется отсечка по цвету (всё, что темнее некоторого порога, становится чёрным, остальное белое). Определяются границы символов, и каждый из них сравнивается с базой символов. Для разбора такой CAPTCHA не нужен даже
OCR, поскольку в ней есть сразу несколько уязвимостей:
  • Лёгкое отделение символов от фона с помощью цветового ключа.
  • Лёгкое отделение символов друг от друга.
  • Фиксированный и неискажённый шрифт.

После отсечки на буквах образуется случайный узор, поэтому нет стопроцентной гарантии, что все символы будут опознаны (в PWNtcha рейтинг этой CAPTCH’и — 99 %). Но оставшийся один процент совершенно не важен. В новой линейке форума phpBB (3.x.x) по умолчанию используется усовершенствованная CAPTCHA с использованием библиотеки PWNtcha. Кроме того, существует возможность подключать модули из программ распознавания текста общего назначения (например, FineReader, OmniPage) в программы сторонних разработчиков для распознавания картинок CAPTCHA.

По отношению к автоматизированному распознаванию существуют понятия «слабая CAPTCHA» и «прочная CAPTCHA». В числе «слабостей» — фиксированный шрифт, фиксированное положение символов, отсутствие искажений, отделение символов от фона с использованием цветового ключа или размытия по Гауссу, лёгкое отделение символов друг от друга и т. д. Впрочем, иногда бывает, что прочная CAPTCHA оказывается труднораспознаваемой и для человека. Изредка встречается CAPTCHA, легко прочитываемая компьютером и с большими трудностями — человеком (например, с неконтрастной картинкой).

Даже если бот проходит CAPTCHA один раз из 100, этого хватает, чтобы посылать 430 сообщений в сутки (предполагается, что производительность бота — 1 запрос в 2 секунды, что приблизительно соответствует неоптимизированному алгоритму, запущенному в фоновом режиме на ПК средней мощности. Но чаще такие боты устанавливаются на серверах, у которых производительность в сотни раз выше, нежели у ПК рядовых пользователей).

Ручное распознавание

Есть способ «распознавания», использующий человеческий ресурс и ресурс высокопосещаемых сайтов, например, сайтов порно-тематики. Робот скачивает CAPTCHA с интернет-сервиса и показывает его пользователю порносайта, с просьбой ввести код, который он видит на картинке. Взамен пользователь получает доступ к ресурсу, а робот узнаёт код, изображённый на картинке («метод леммингов»). Пользователь может и не подозревать, что каждый просмотренный порноролик оборачивается регистрацией нового почтового ящика для рассылки спама.

Вариантом этого метода является сервис Captcha Exchange Server, запущенный в марте 2007 года и направленный на обход картинок CAPTCHA, используемых файлообменниками. Принцип работы сервиса основан на системе баллов, которые пользователь может заработать, распознав картинки для других пользователей, и позже потратить, запустив программу автоматического скачивания с файлообменников, при этом картинки будут распознаны другими пользователями сервиса. Таким образом, пользователь может оптимизировать затраты своего времени и денег, набирая баллы, когда он всё равно находится у компьютера, и тратя их, когда ему более удобно скачивать (например, в случае, если ночью доступ в интернет обходится дешевле).

Несмотря на уязвимости, это не означает, что любая CAPTCHA-защита априори бессмысленна. Тут наблюдается извесный принцип соревнования оружия и защиты (снаряда и брони). Гораздо хуже, если данная защита не используется.

reCAPTCHA

OCR слово, являющееся одним из множества искажённых фрагментов сканированных книг в дополнение к слову, сгенерированному компьютером. Этот сервис учитывает приёмы использования и возможности программ оцифровки текста книг. Для надёжности одно и то же слово предлагается нескольким пользователям различных сайтов. Когда разные пользователи одинаково ответили на CAPTCHA-запрос, предполагается, что они ввели правильное слово.

Ссылки



Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Полезное


Смотреть что такое "Капча" в других словарях:

  • капча — сущ., кол во синонимов: 1 • бред (79) Словарь синонимов ASIS. В.Н. Тришин. 2013 …   Словарь синонимов

  • капча — [126/41] Система распознавания человека путём показа букв или цифр, которые нужно ввести для подтверждения. Цитирую капчу – dangehrs. НЕ МОГУ ОТПРАВИТЬ КАММЕНТ!!!!1111 ПАМАГИТЕ!!!!111. – Введи капчу, и отожми Shift. Интернет сленг, Сленг… …   Cловарь современной лексики, жаргона и сленга

  • капча — [کپچه] ниг. кафча …   Фарҳанги тафсирии забони тоҷикӣ

  • Луркмоар — Lurkmore.ru (Луркоморье) Главная страница Луркоморья (26 февраля 2009 года). lurkmore.ru Коммерческий …   Википедия

  • Lurkmore.ru — (Луркоморье) Главная страница Луркоморья (26 февраля 2009 года). lurkmore.ru Коммерческий …   Википедия

  • CAPTCHA — Искаженная строка smwm CAPTCHA ([ˈkæptʃə]; от англ. Completely Automated Public Turing test to tell Computers and Humans Apart  полностью автоматизированный публичный тест Тьюринга для различия компьютеров и людей)  товарный знак… …   Википедия

  • капшак — копшак, копчак – название различных морских ракообразных животных, ковшак червь в коже моржа , капчак морской червь, поедающий рыб , арханг. (Подв.). Из саам. терск. kāptsa, род. п. ptsage – то же; см. Итконен, 51 …   Этимологический словарь русского языка Макса Фасмера

  • Кулхацкер — Компьютерный сленг разновидность сленга, используемого как профессиональной группой IT специалистов, так и другими пользователями компьютеров. История Появление терминов Бурный рост со второй половины XX века компьютерных технологий, и, в… …   Википедия

  • Сетевой этикет — (нетикет  неологизм, является слиянием слов «cеть» (англ. net) и «этикет»)  правила поведения, общения в Сети, традиции и культура интернет сообщества, которых придерживается большинство. Это понятие появилось в середине 80 х годов …   Википедия

  • АПВС — Компьютерный сленг разновидность сленга, используемого как профессиональной группой IT специалистов, так и другими пользователями компьютеров. История Появление терминов Бурный рост со второй половины XX века компьютерных технологий, и, в… …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»