что такое код безопасности капча
Как это работает: CAPTCHA
Сколько лет существует Хабр — столько лет на нём регулярно появляются посты про очередную капчу — будь то скрипт генерации картинки, новая идея капчи с котиками и тому подобное. Самый свежий пример того, что человек не совсем понимает — как же всё таки должна работать капча (см. текст поста и последние комментарии), но при этом делится своими заблуждениями с сообществом. Складывается ощущение, что капча — это такая terra incognita для большинства разработчиков — как для тех, кто просто прикручивает её к очередной форме в надежде на то, что она будет работать «из коробки», так и для тех кто придумывает капчи вроде тех, на которых надо выбрать картинку с котиком из нескольких фото.
Статья содержит полезную информацию для тех, кто использует капчу на своём сервере, вместо того чтобы довериться стороннему сервису вроде reCaptcha.
Captcha
Согласно своему определению, captcha — это автоматизированный публичный тест Тьюринга (тест который может пройти человек, но не компьютер). В статье я буду рассматривать свойтсва капчи на примере самого распространненого её вида — текста на картинке, хотя почти все написанное одинаково применимо к любому виду капчи.
Два главных свойства капчи
Любая капча должна обладать двумя свойствами, без которых она не будет работать:
Устойчивость к распознаванию — свойство, защищающее капчу от распознавания алгоритмом — например системой распознавания текста. Гарантирует то, что человек сможет прочитать текст на картинке, а компьютер нет.
Антипример: стандартная капча форумов phpBB 2.x таким свойством не обладала — из-за относительной простоты распознавания появились скрипты, которые спамили все подряд форумы вынуждая веб-мастеров менять капчу на более стойкую.
Устойчивость к угадыванию — свойство капчи, не позволяющее угадать её значение за небольшое число попыток (менее 1000). Если набор возможных значений капчи невелик, программе не составит труда угадать её подбором вместо распознавания.
Антипример: арифметическая капча вроде «1+2» (перебор чисел от 1 до 20 в скором времени даст результат).
Антипример: выбрать из нескольких картинок ту, на которой изображён котик.
Проверка капчи
Значение для проверки должно храниться на сервере, а не передаваться вместе с картинкой в браузер. Для сопоставления посетителя и правильного значения капчи необходимо использовать некий ключ, который передаётся вместе с капчей (идентификатор сессии, номер капчи и т.п.)
Антипример: если передавать саму капчу и значение для ее проверки (в том числе зашифрованное), то человеку достаточно один раз распознать такую капчу и далее использовать комбинацию «ответ»-«значение для проверки» в своём скрипте (по ссылке в начале поста как раз такой случай)
После проверки, сохраненное значение капчи необходимо удалить. Если не сделать этого, злоумышленник сможет использовать данное значение снова неограниченное число раз. Да, при обновлении страницы с формой обновляется и капча (либо при генерации формы, либо при генерации картинки), вот только скрипт может не загружать форму снова (надо упомянуть, что это не актуально если на сайте используются одноразовые csrf-токены для форм).
Антипример: гипотетическая форма логина, в которой достаточно один раз ввести капчу правильно, и далее подбирать пароль скриптом, избегая перегенерации капчи на сервере.
Пуленепробиваемая капча
Защита от перебора. Если ваша капча устойчива к распознаванию, но не очень устойчива к перебору (например на ней надо прочитать всего 3-4 цифры), желательно ограничить число неправильных ответов «с одного ip» / «для одного логина» / etc. Такие ограничения необходимо проверять ДО проверки самой капчи (то есть даже в случае правильно введенной капчи, при наличии ограничения она не должна считаться пройденной) иначе оно не будет препятствовать перебору.
Защита от DoS. При генерации капчи на своем сервере, надо понимать что это удобный вектор проведения DoS атак (которую, в отличие от DDoS, может устроить любой школьник). Для защиты можно ограничить число генерации капчи для одного ip, кэшированием капч и т.д. Подробнее про это
Защита от распознавания. Если вы выбираете капчу, или вдруг собираетесь написать её сами, желательно понимать какая капча более защищена от распознавания. Существуют готовые универсальные скрипты распознавания капчи, работающие по принципу OCR, а в случае если ваш сайт заинтересует спамеров есть риск, что будут использовать / писать скрипт конкретно под вашу капчу. Последнее правда относится больше к сайтам уровня Яндекс или vk, а вот вариант с защитой от банальных OCR желательно предусмотреть.
Защита от антигейтов. Если говорить формально, то капча как тест Тьюринга не обязана защищать вас от антигейтов, так как в этом случае её будет распознавать человек. С практической же точки зрения, этот вопрос весьма актуален и защищаться как-то надо.
Тут нет и не может быть «золотого стандарта» (ибо в таком случае антигейты внедрят его поддержку), поэтому вы вольны дополнять капчу любыми ухищрениями, чтобы сделать её распознавание через антигейт невозможным. Например:
— нестандартная капча (сбор паззла, поворот изображения, клик по области на фото и т.п.);
— кириллическая капча — самое простое решение, но имеет ряд минусов: подходит только для проектов с русскоязычной аудиторией, есть антигейты с поддержкой кириллицы;
— использование виртуальной клавиатуры рядом с капчей для ввода нестандартных символов или фигур (может быть неудобно пользователям мобильных);
Юзабилити
Не просите ввести капчу, если вы уже убедились, что перед вами человек. Тут однако, надо быть осторожным, чтобы форму нельзя было использовать скриптом неограниченное число раз после однократного ввода капчи человеком.
Пример: форма регистрации. Если я где-то регистрируюсь, и забыл ввести поле «почтовый индекс», но правильно ввёл капчу — не надо показывать мне новую. Потратьте 10 минут на то, чтобы сохранить где-то у себя, что вот эту конкретную форму сейчас пытается заполнить живой человек.
Для облегчения распознавания человеком: не используйте в капче одновременно буквы и цифры, не используйте одновременно прописные и строчные буквы, исключите похожие символы.
Отказ от использования капчи
Лучшая капча — отсутствие капчи. Там где можно отказаться от её использования — это надо сделать. Возможно для этого придется реализовать дополнительные лимиты и проверки, но пользователи скажут вам спасибо.
Но тут надо быть очень осторожным. Например: форма регистрации без капчи, с полем email на который приходит письмо с активацией. Без дополнительных средств защиты такую форму могут завалить «левыми» адресами, и ваш сайт включат в черные списки почтовые службы. В таком случае можно обходиться без капчи, но только если у вас есть другой рубеж защиты, вроде лимита по ip.
Кому то информация в этом топике покажется очевидной, но если бы я не сталкивался с примерами непонимания этих простых принципов в жизни, в том числе у опытных коллег-разработчиков, я бы не стал тратить время на написание этого текста.
Что такое капча простыми словами, капча при регистрации, зачем она нужна, плюсы и минусы
Капча — как Великая Китайская стена: обойти сложно, лезть не хочется. Зачем она вообще нужна на сайте, можно ли обойтись без нее и как сделать ввод капчи максимально удобным для пользователя?
Капча: что это такое
Капча (captcha) — это специальный защитный код, который показывается на некоторых сайтах в виде всплывающего окна или картинки. Пользователю предлагается решить простую задачу, подтвердить статус, ввести слова или цифры, ответить на вопрос. Если этого не сделать, вы не сможете далее пользоваться сайтом. Так программа определяет, реальный ли вы человек или бот.
Какие бывают капчи
Ввод капчи можно разделить на несколько способов.
Какого бы вида ни была капча, бот не может справиться с ее заданиями. Разумеется, механизмы ботов совершенствуются и учатся, но вместе с ними учатся и разработчики сайтов, создавая новые улучшенные версии капч.
Зачем нужна капча
Капча нужна в первую очередь владельцам сайта — для простых пользователей это одна морока. Защитная программа ставится, чтобы отсеять ботов, которые хотят попасть на сайт для разных целей. Рассмотрим подробнее, как капча помогает справиться с ботами.
Когда показывается капча
Минусы капчи
Помню, как бесила меня капча на ресурсе Advego, которая появлялась, наверное, каждую минуту. Работать было невозможно, и я перестала пользоваться сайтом.
Вполне жизненный пример: пользователь выбрал товар в интернет-магазине, уже готов его купить, и на последнем этапе его просят ввести капчу при регистрации. Если капча сложная, он вполне может покинуть сайт навсегда.
Что такое капча
Изображение с сайта Еzinesgo.co
В век цифровых технологий и интернета, каждому из нас пришлось стать в той или иной степени «продвинутым» пользователем сети. И наверняка, почти каждый сталкивался с такой нежелательной вещью, как капча или капса. Давайте разбираться, что это такое.
CAPTCHA – что это такое
Непривычный и непонятный для нашего слуха термин возник в США в 2000 году. Completely Automated Public Turing test to tell Computers and Humans Apart = CAPTCHA, и в переводе оно означает небольшой тест, выполнение которого под силу любому читающему человеку, и практически невозможно для компьютерных устройств. Таким образом, код капчи позволяет отличить реальных людей от компьютеров.
Существует множество разновидностей и видов проверки. Рассмотрим некоторые из них:
Изображение с сайта Knowyourmeme.co
Изображение с сайта lifeha.ru
У CAPTCHA есть несколько приложений для практической безопасности. В их числе:
Фото с сайта Millenniumstudio.net
Что такое капча при регистрации
Активнее всего тесты используют во время регистрации юзеров на новых сайтах. После заполнения объемных регистрационных форм, например в социальных сетях, форумах, на сайтах интернет-магазинов, вам не раз приходилось разгадывать не самую хитрую, но достаточно запутанную комбинацию символов. Это могли быть: и хаотичный набор букв и числовых значений, и перевернутые или перечеркнутые фразы, и еще много вариантов такого же характера. Именно такую картинку с различными вариантами тестовых заданий для пользователей называют капчей.
Неверный код программы
Иногда всплывающее окошко проверки опять и опять появляется после того, как мы уже ввели правильную комбинацию. Это значит, что сайт не видит в нас человека, заставляя производить одну и ту же процедуру. Чаще всего это связано ошибкой, появляющейся при передвижении пакетов с заданиями программы через сервер данных вашего компьютера.
Ошибки при вводе капчи: что это и как их избежать
Самой распространенной причиной ошибки считается обыкновенная нечитаемость букв. Например, «Q» и «G» при вводе практически неразличимы.
Несколько советов, как вводить капчу:
Что такое RECAPTCHA
Изображение с сайта Wikipedia.org
RECAPTCHA – это продолжение программы CAPTCHA. На данный момент является собственностью компании Google. Эта система разработана для защиты сайтов от интернет-ботов и не только. Рекапча имеет несколько существенных отличий от обычной системы тестовых заданий:
Как это работает? Предположим, что есть некая старинная книга, сохранившаяся в нашем времени в небольшом количестве экземпляров и не самом лучшем качестве. Чтобы восстановить этот «раритет» используется цифрование с применением системы распознавания символов. Но такие системы зачастую грешат допущением многочисленных ошибок. И вот тогда в действие вступает вышеупомянутая программа.
Пользователю предлагают задание, в котором одно из расшифрованных слов, является тем самым, которое не увидела система распознавания символов. Каждый пользователь смотрит на эту загадку под своим собственным углом, и в этом случае рекапча использует в качестве верного то слово, которое юзеры вводили чаще всего.
И все же, что это такое?
Фото с сайта Translax.eu
Коротко: изображение, предложенное RECAPTCHA, состоит из двух слов. Одно из них система уже распознала, а вторым словом как раз является то, которое вызвало сомнение при оцифровке. И разгадать его предлагается уже пользователям сайтов.
Данная программа подвергается весьма жесткой критике со стороны обычных юзеров, ведь второе слово может представлять собой математическую формулу, текст на другом языке или же содержать знаки препинания.
Актуальный взгляд на пользу программы
Одной из основных задач, которую решает система, является защита от ботов. И защищает она не обыкновенных пользователей сети, а владельцев сайтов, которые они посещают. Решение данной проблемы в прямом смысле перекладывается на плечи простых юзеров, что вызывает с их стороны лишь раздражение.
Еще один нюанс против использования – развитие искусственного интеллекта, из-за которого подобные механизмы безопасности стали просто бессмысленными. Так в 2014 году Google экспонировали усовершенствованный алгоритм, приспособленный для распознавания и взлома даже самых трудных изображений и во многом превосходящий человеческие способности в этой сфере.
Возможность заработка на капче
Изображение с сайта forwardpublication.ru
На сегодняшний день существует огромное количество людей, работающих с интернет контентом и желающих обогатиться благодаря этой сфере. И заработок на вышеупомянутом инструменте без каких-либо вложений и рисков, да даже без специальных навыков попадает в поле зрения новичков. Все, что нужно: знать числа, уметь читать и переключать раскладку на клавиатуре.
Работа заключается в непосредственном и непрекращающемся вбивании символов с изображений. Заработок при этой работе минимальный (примерно 50 рублей за час), а вот терпение и выдержка должны быть поистине колоссальными. Существуют специализированные сервисы, предоставляющие пользователям возможность заработать на проверке, например, Rucaptcha.
Капча в социальных сетях
Фото с сайта Lifeha.ru
Обычно запрос на введение комбинации в социальных сетях, например, ВКонтакте, появляется при повышенной активности владельца страницы. Если вы за определенное время многократно повторили одинаковые действия (поставили лайки и отправили заявки в друзья) система безопасности социальной сети начинает подозревать, настоящий ли вы человек, или, возможно, с вашего профиля действует бот-программа. Чтобы доказать свою реальность и приходится вводить капчу.
Капча: что это такое простыми словами
Несомненно, что все пользователи Глобальной сети сталкивались с такой насущной проблемой, но не каждый знает о том, что это и есть так называемая капча. Так же не многим известно, что на английском CAPTCHA – это аббревиатура, которая в переводе на русский язык значит: полностью автоматизированный и общедоступный тест Тьюринга, чтобы отличить компьютер от человека.
Что такое капча
Из расшифрованной выше аббревиатуры уже можно понять, что такое капча, простыми словами –она определяет, является ли пользователь реальным или спам-роботом. Так, возможно, на некоторых сайтах, чтобы узнать цену СЕО-продвижения придётся для начала ввести проверочный код. Капча генерирует сочетания из различных букв, цифр и знаков, полагаясь на способность человека определять, какими на самом деле символами они являются.
Чтобы подтвердить цифровую транзакцию, используя систему капчи, пользователю предоставляется искаженное слово, обычно помещаемое поверх искаженного фона. Пользователь должен ввести слово в поле, чтобы завершить процесс. Компьютерам трудно декодировать искаженные слова, в то время как люди могут легко расшифровать текст.
Некоторые капчи теперь используют картинки вместо слов, где пользователю предоставляют серию картинок и спрашивают, что является общим элементом среди всех картинок. Вводя этот общий элемент, пользователь проверяет транзакцию, и компьютер знает, что имеет дело с человеком, а не с ботом.
Что такое капча при регистрации
Многие задаются вопросом, что такое капча при регистрации и зачем она нужна. Да, зачастую, мы можем встретить капчу при заполнении регистрационных форм. Например, Вы думаете о том, как найти человека по почте, для этого нужно зарегистрироваться. Это вполне нормально и безобидно. В таких случаях капча направлена на борьбу с ботами, которые создают множество учётных записей для рассылки спама.
На веб-сайтах по продаже билетов, также используется капча, чтобы не допустить чрезмерного приобретения билетов на большие мероприятия скальперами (сторонниками скоростной торговли/спекуляции). Это позволяет законопослушным клиентам покупать билеты справедливо и не дает скальперам размещать тысячи заказов.
Наконец, веб-страницы или блоги, содержащие доски объявлений, например, о стоимости разработки сайта-визитки, или контактные формы, используют капчу для предотвращения спам-сообщений или комментариев. То есть помогает избежать автоматическую публикацию сообщений ботами.
Неверная капча: что это такое
Рассмотрим, что такое неверная капча и чем она грозит. Неверная капча означает то, что при регистрации или при совершении любой другой операции Вы неправильно ввели предложенные Вам символы с картинки.
Если Вы допустили ошибку, придётся сделать это заново, но, конечно же, символы будут уже совсем другие. С такой проблемой пользователи сталкиваются очень часто, так как разобрать трудночитаемые искажённые символы достаточно затруднительно.
К сожалению, поскольку технологии и хакеры становятся более продвинутыми, их мошенническая тактика тоже. Чтобы полностью разобраться в теме и огородить себя от нежелательных последствий изучите, что такое спам в Интернете и чем он грозит. В то время, как сама система капчи безопасна, киберпреступники начали включать её в свои ложные или мошеннические веб-сайты, чтобы совершать свои действия более правдоподобно.
С помощью интригующих сообщений в ленте злоумышленники могут обмануть пользователей, например: «Вся страна в шоке, предсказания о конце света оказались..». После того, как Вы нажмете на эту запись, нужно будет ввести поддельный проверочный код и перейти на целевую страницу. В это время вирус захватит Ваш аккаунт.
Сегодня мы разобрались в том, что такое капча и для чего она нужна. Узнать, как от неё избавиться можно на примере нашего рассказа о том, как убрать капчу в Яндекс Вордстат и будет ли это эффективно. Будьте внимательны и не попадайтесь на уловки интернет-мошенников.
Капча: что это такое и какая она бывает
Капча (CAPTCHA) – это защитный код, который пользователю требуется ввести в специальном поле на сайте для его защиты от действия автоматических сервисов (ботов, спама, флуда и пр.), вредящих ресурсу.
Проще говоря, капча представляет собой тест-систему, где необходимо написать слово, указанное на изображении, решить несложное арифметическое уравнение, кликнуть на соответствующую картинку и т.п., чтобы потом можно было совершить какое-либо действие на сайте. Это эффективный метод защиты форм регистрации и комментирования от роботов, потому что компьютер не способен самостоятельно генерировать правильный ответ.
Любой пользователь наверняка сталкивался с капчей, если хотя бы раз регистрировался, либо оставлял отзывы на форуме или блоге. Сегодня мы расскажем, зачем вообще нужна капча, каких видов она бывает, как выбрать, можно ли зарабатывать в Интернете, вводя капчу.
Зачем нужно вводить CAPTCHA?
Обратите внимание, что слово «капча» пошло от английской аббревиатуры CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart) – полностью автоматизированный публичный тест Тьюринга для различения компьютеров и людей. Эта эффективная программка-тест была придумана учеными из исследовательского центра Карнеги, расположенного в США, а именно в штате Пенсильвания.
Как вы уже поняли, основная функция данной программы – тестирование посетителя сайта, которое помогает перепроверить, действительно ли он является «живым человеком». Многие ресурсы обязывают нас вводить капчу, потому что сегодня существует огромное количество программ, которые могут автоматически рассылать в Интернете рекламу, оставлять фейковые комментарии, размещать ссылки на вирусные ресурсы и тому подобное.
Допустим, у вас есть веб-страница, где пользователи комментируют определенную тему, предварительно заполняя поля «имя», «адрес email» и «URL сайта». Подобные манипуляции может с легкостью произвести робот – заполнить поля и опубликовать нужный спамеру отзыв. А вот если поставить капчу, программа уже не сможет ее ввести, значит и не будет никакого спама.
Наверняка у вас случалась ситуация, когда вы просто переписывались с кем-то в социальной сети ВКонтакте, и при отправке очередного сообщения появлялась капча, и пока ее не введете, то не сможете осуществить какое-либо действие. Это случилось из-за того, что ваши действия показались системе подозрительными, например, слишком быстро отправляете сообщения. Поэтому существуют такие меры предосторожности.
Согласно данным системы Akismet, 90 процентов всех комментариев в Интернете являются спамом. Сам же спам нужен для:
Все вышеуказанные процедуры незаконные, однако с их помощью мошенники зарабатывают в Интернете деньги. Если действовать самостоятельно, в ручную, то эффективность этих методов практически сводится к нулю. А вот если задействовать автоматических ботов, то они будут проводить подобные операции на множестве компьютеров, что позволит автоматизировать массовые действия и заработать приличную сумму денег.
Автоматический спам сильно бьет по репутации и работе веб-сайта, поэтому его опасаются владельцы многих ресурсов, особенно крупных, которые ежедневно посещают тысячи роботов и живых людей. Поэтому, регистрируясь на таких сайтах, вы обязательно столкнетесь с необходимостью введения капчи, потому что это простой способ предотвратить спамные действия автоматических программ.
На заметку. Спамеры постоянно модернизируют алгоритмы обхода каптчи. Поэтому использование CAPTCHA не обеспечивает полноценной защиты сайта от взломов, вирусов, рекламы и прочих вредоносных действий, однако существенно уменьшает их количество.
Какие есть виды капчи?
Рассмотрим самые простые и удобные капчи, которые используются на большинстве сайтов.
ReCAPTCHA
Проверка от поисковой системы Google, самая простая и удобная. Для ее прохождения достаточно поставить галочку возле слов «Я не робот». Через мгновение отобразится зеленая галочка, а это значит, что проверка успешно пройдена.
Но система все же может провести дополнительную проверку, переведя вас на страницу для выбора требуемых изображений. К примеру, вас попросят нажать на все фотографии, где есть буквы.
Распознавание текста/цифр
В поле необходимо написать указанные на картинке искривленные цифры или буквы. Слова попадаются как латинские, так и кириллицей. Бывает так, что человек элементарно не может разобрать, что изображено, поэтому для удобства придумана кнопка «обновления картинки», кликнув на которую отобразится другая. Иногда еще есть кнопка для озвучивания содержания изображения.
Логические
В данной капче вам потребуется решить несложное арифметическое уравнение, например, написать в поле, сколько будет 21+42; или же разгадать простую загадку, указав правильный ответ.
Образные
Капча представляет собой картинки. Чтобы пройти проверку, вам просто необходимо выбрать требуемое изображение, например, кликнуть на все изображения, где есть рыбки.
Какую капчу выбрать для своего сайта?
Многие вебмастера не желают устанавливать подобную программку-тест для своего ресурса, так как боятся, что потеряют часть посетителей. И эти опасения не напрасны, ведь согласно официальной статистике, рядовому пользователю требуется приблизительно 10 секунд, чтобы пройти проверку с помощью защитного кода. Разумеется, данная процедура никому не понравится.
Ситуация усугубляется плохой распознаваемостью капчи, из-за чего сайты после ее внедрения теряют около 2-10 процентов посетителей. Стоит учитывать, что есть пользователи с плохим зрением – встретившись с тестовой проверкой, им проще покинуть сайт и перейти на другой.
Вот почему важно установить капчу, которая будет превосходно выполнять свои прямые функции (защиту сайта от спама), и не надоедать пользователям. Для этого она должна соответствовать 3 несложным требованиям:
Многие сервисы используют капчу, где нужно указать, что изображено на картинке. Но, как показывает практика, ответы на логические вопросы куда надежнее и интереснее для людей.
Однако самой популярной в наши дни остается стандартная текстовая reCAPTCHA от Google – она наиболее защищена от спамеров, которые постоянно придумывают новые способы обхода проверки. Данная программа постоянно меняет свой алгоритм действия, и теперь, в большинстве случаев, для прохождения теста достаточно поставить галочку – на это у вас уйдет всего 2-3 секунды, при этом нет нужды распознавать и вводить какие-то буквы/цифры/картинки.
Помимо reCAPTCHA, владельцы сайтов также часто используют следующие капчи:
Как заработать на вводе CAPTCHA?
Капча – это не только полезный защитный инструмент, но и прекрасная возможность подзаработать в Интернете безо всяких усилий. Помогут вам в этом несколько проверенных сервисов:
Заключение
Спама в современном Интернете огромное количество, и не исключено, что в скором будущем придумают новые, более эффективные методы защиты веб-сайтов от мошенничества. Но пока единственным спасением для владельцев ресурсов остаются капчи, фильтрующие вредоносное действие автоматических программ.
Оцените эту статью. Чтобы мы могли делать лучший контент! Напишите в комментариях, что вам понравилось и не понравилось!
Рейтинг статьи: 3.2 / 5. Кол-во оценок: 6
Пока нет голосов! Будьте первым, кто оценит эту статью.