Обложка статьи «Я не робот: 10 альтернатив reCAPTCHA»

Я не робот: 10 альтернатив reCAPTCHA

К маю 2020 года свыше 5 миллионов вебсайтов установили виджет reCAPTCHA, а более 1 миллиона из них используют последнюю невидимую версию — reCAPTCHA v3. Этот инструмент защищает веб-сервисы от интернет-ботов, но не всегда устраивает владельцев и пользователей.

Главные минусы reCAPTCHA — проблемы с конфиденциальностью данных, дизайн виджета, который редко сочетается со стилем сайта, и привлечение пользователей к обучению нейросетей. И даже после выхода Invisible reCAPTCHA, которая работает в невидимом для пользователей режиме, вопросы конфиденциальности остаются открытыми.

Правда, виджеты с поисками светофоров, мостов и гидрантов вряд ли скоро забудутся: они давно стали героями мемов. А Matthew Rayfield, о проектах которого мы уже рассказывали, даже сделал игру про капчу:

Итак, чем можно заменить reCAPTCHA?

Другие капчи

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

MTCaptcha

«Умный и красивый способ остановить ботов» — заявляют разработчики. И это действительно так. Вы можете подобрать капчу с таким дизайном, который не будет выбиваться из общего стиля. Но во всех вариантах виджет MTCaptcha лаконичный и удобочитаемый:

MTCaptcha

Как и в случае с reCAPTCHA v3, есть невидимая версия. На главной странице можно ознакомиться со сравнением характеристик MTCaptcha и reCAPTCHA.

Capy

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

Capy

Своя капча

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

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

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

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

CMS плагины

Вы можете воспользоваться готовыми плагинами различных CMS, не прибегая к reCAPTCHA. Мы выбрали несколько наиболее популярных.

Really Simple CAPTCHA

Лаконичный виджет, который установило свыше 800 000 пользователей WordPress:

Really Simple CAPTCHA

Однако создатели Really Simple CAPTCHA предупреждают, что название плагина говорит само за себя: он очень прост, в том числе и для ботов. Надёжен только в тандеме с другими инструментами безопасности.

Hidden CAPTCHA

Вариант скрытой капчи в виде плагина для Drupal:

Hidden CAPTCHA

Около 8000 пользователей Drupal установили Hidden CAPTCHA.

OSOLCaptcha

OSOLCaptcha — это простенький вариант для тех, чей сайт на Joomla!: блокирует ботов, нормально смотрится и легко читается:

OSOLCaptcha

Solve Media

Вас интересует дополнительная монетизация ресурса? Тогда выбирайте Solve Media — капчу, которая объединила баннерную рекламу и антиспам-сервис в одном виджете:

Solve Media

А вот стандартный вариант без рекламы:

Solve Media

Работает на большинстве популярных CMS, среди которых vBulletin, WordPress, MediaWiki, Drupal, Joomla!, MyBB и другие.

Другие инструменты защиты от ботов

Honeypot-ловушки

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

Форма ввода на JavaScript

Большинство спам-ботов примитивны. Чаще всего они даже не пытаются выполнять JS-скрипты, поэтому создание простой формы ввода на JS их отсечёт. Но метод не сработает, если у вас много пользователей с отключённым JavaScript. В таком случае нужно либо вообще отказаться от этого способа, либо параллельно использовать что-то ещё.

Двухфакторная аутентификация

А вот ещё одна альтернатива reCAPTCHA. Подтверждение по email или SMS решит проблему со спамом на 100%. Однако запрос такого подтверждения при каждом посещении сайта или действии на нём утомляет. Используйте двухфакторную аутентификацию точечно, например только при регистрации или авторизации пользователя.

Заключение

Любое из этих решений защищает от спам-ботов не хуже reCAPTCHA, но при этом лишено её недостатков. Попробуйте протестировать их в своих проектах — возможно, они понравятся вам больше решения от Google.

Также хорошим тоном будет обеспечить пользователям конфиденциальность с помощью DNT-функции (Do Not Track), которая позволит им отключать отслеживание в браузере. Для её использования достаточно собрать весь отслеживающий код в одном месте и обернуть в проверку:

if(!navigator.doNotTrack){
   // Google Analytics и прочая слежка
}

***

Бывает, что вы закрываете сайт, если он требует ввести капчу?

или посмотреть результаты

Загрузка ... Загрузка ...

Вакансии в тему: