Антиспам бот
LeadPlan Лидогенерация — читать 4 мин.
Если вы замечаете стихийный рост базы данных сайта или подозреваете, что его взломали, — значит защита от спам-ботов не работает. Они добавляют в базу чужие адреса, ломают аналитику и портят рейтинг. Сайт виснет, пользователи жалуются, вы боитесь, что боты доберутся и до сервера. Нужно дать им бой!
Какой метод использовать и как отличить робота от человека? Какая защита уже не эффективна, а какая — самая надёжная? Об этом читайте в нашей статье.
Содержание
Для чего нужно защищать форму от ботов
Однажды вы можете зайти в админку и увидеть такую же картину, какую мы увидели на сайте одного из наших проектов:
Всё это — роботы, которые регистрировались через форму на сайте и к тому же иногда возвращались обратно. Чего они добивались — мы до конца не знаем, потому что вовремя приняли меры.
Наш пример показывает, что от атаки спам-ботов не застрахован никто. Чем она обернётся, зависит от спамеров, которые на вас вышли. Вот некоторые последствия атаки спам-бота на сайт:
- на почтовый ящик, который получает данные из формы, приходят письма со спамом;
- качество базы подписчиков снижается: бывают случаи, когда подписчиков-ботов становится больше, чем подписчиков-людей, и это грозит ухудшением репутации;
- портится статистика на сайте: новые пользователи появляются, а толку от них никакого;
- большое количество запросов от ботов загружает сервер, из-за этого страницы открываются медленно;
- боты ищут уязвимые места в коде и могут получить доступ к серверу;
- на сайте появляются комментарии наподобие таких:
Такие комментарии отпугивают реальную аудиторию на сайте, и постепенно он умирает.
В худшем случае боты заражают сайт, внедряя скрипты, например, чтобы использовать его для спам-рассылок от имени техподдержки. Бывает, что при атаке они запускают спам-сценарии. Схема такая: они регистрируются в форме от имени другого пользователя, адрес которого взяли в открытом доступе. В поле с именем или в поле комментариев пишут рекламный текст со ссылкой на мошеннический сайт. Дальше тот самый пользователь получает от вас письмо с просьбой подтвердить подписку, открывает его и, возможно, кликает по ссылке ради интереса.
Так боты используют вашу хорошую репутацию. После такой атаки вполне реально попасть в чёрный список.
Нужна ли ?
() — типичный пример теста Тьюринга, который помогает отличить искусственный интеллект от человеческого.
Форматов много: можно заставить пользователей вводить странные сочетания букв, расшифровывать аудиосообщения, решать примеры или искать на фотографиях машины или дорожные знаки. Безопасно для владельца сайта, но очень раздражает пользователей, которые могут бросить форму на полпути.
Можно ли защитить форму без капчи? Конечно, можно.
Методы защиты формы от спама без капчи
У всех способов борьбы со спам-атаками есть общий недостаток: они устаревают. Как только вы придумываете новый метод защиты, разработчики ботов стараются найти в них лазейки, поэтому важно быть начеку. Ниже мы расскажем, какие способы ещё рабочие, а какие — уже ненадёжные.
Задать рамки на время заполнения формы
Роботы вводят данные моментально, в то время как человеку нужен какой-то отрезок времени, чтобы напечатать имя и email. По этой логике вы сможете отсекать ботов ещё на этапе заполнения полей.
Но не всё так просто: во многих браузерах есть функция автозаполнения форм. Пользователь не тратит время на ввод email, а значит, скрипт может посчитать его ботом. Вдобавок большинство ботов уже умеет заполнять формы с такой же скоростью, как это делает человек. Так что этот метод можно использовать как дополнение к остальным, но не рассчитывайте, что он отсечёт всех роботов в одиночку.
Добавить скрытое поле
Логика такая: человек видит на сайте два поля для ввода (имя и email). Хотя на самом деле есть третье поле, скрытое в коде.
Робот сканирует код сайта, а не внешнюю оболочку, поэтому видит это поле и заполняет его. И тем самым даёт скрипту на сайте знать, что данные от этого пользователя принимать не стоит.
Казалось бы, безотказный метод защиты. Но бот будет пытаться отправить данные через форму во всех возможных комбинациях: заполнять одни поля и оставлять другие пустыми, чередовать их содержимое и так далее. Так или иначе, он подберёт способ отправки данных и сломает вашу защиту, так что метод ненадёжный.
Блокировать user-agent
Спамеры используют специфические заголовки user-agent (идентификатор конкретного пользователя). В сети вы даже можете найти списки user-agent спам-ботов и заблокировать их заранее в файле htaccess. Но имейте ввиду, что полностью это вас не защитит. Боты умеют подделывать user-agent и успешно обходят эту блокировку.
Расставить «ловушки»
К примеру, приём скрытой ссылки. Человек её не видит, но в коде она есть. Бот проходит по этой ссылке, и тут-то вы блокируете его IP. Но имейте в виду, что если вы используете код ловушки, который нашли в интернете в открытом доступе, то она, скорее всего, работать не будет.
В идеале напишите уникальную ловушку своими силами, но для этого нужен ресурс. Если у вас есть толковый специалист, который сможет создать такую ловушку, считайте, вам повезло.
Пользоваться сервисами re
Сервисы, созданные специально для борьбы со спам-ботами, — лучший вид защиты, при условии, что его создатели регулярно обновляют алгоритмы, которые блокируют нежелательных посетителей. Поэтому если вы захотите пользоваться сервисами — выберите самые популярные от надёжных разработчиков.
Например, существуют сервисы re и invisible re, которые поддерживает Google. А по запросу «re analog» можно найти множество платных и бесплатных аналогов в разном дизайне и функционале.
re
Пользователю предлагают совершить минимальное действие: нужно только поставить галочку «Я не робот». Пример Disqus:
Когда пользователь нажимает на галочку, сайт проверяет репутацию его IP. Если с ней всё в порядке — данные, которые он ввёл в форму, отправляются в базу. Если репутация под сомнением — ему предлагают ввести . И только после того, как человек ввёл правильные символы, он может отправить данные.
Invisible re
Действует по такому же принципу, что и re, с тем отличием, что пользователю не нужно нажимать «Я не робот». Его проверка на «человечность» начинается, когда он нажимает на кнопку отправки данных. То, что на сайте работает invisible re, можно заметить по небольшой плитке с лого где-нибудь в углу страницы. Например, вот так она выглядит на «Авито».
Пользоваться LeadPlan
Подавляющее большинство сервисов защиты от спам-ботов обороняет уже отображённые на странице формы. Чтобы робот заполнил поля и нажал «Отправить», форма должна быть на странице. Если её нет — то и нечего отправлять, значит, бот уйдёт с сайта в поисках новой жертвы.
LeadPlan ещё при открытии страницы путём проверки IP и скрипта, о котором расскажем ниже, определяет, что клиент — бот, и просто не загружает ему форму. А если клиент — человек, то она загружается в обычном режиме.
Когда пользователь открывает сайт, запускается проверка на:
- активность вкладки (у большинства ботов нет понятия «активная вкладка»);
- user-agent (так отфильтровывается ещё часть сомнительных посетителей);
- активности на странице (скролл, свайп, передвижение курсора).
Если активности нет, то скрипт не продолжает работать. Но как только фиксируются признаки «человечности», скрипт возобновляется. Без капчей, формул, пазлов, регистрации и смс.
Как видите, не все популярные методы хороши. Самый надёжный щит от спам-ботов — это многоэтапная проверка на «человечность». В то же время большинство эффективных средств защиты всё-таки навязывают взаимодействие с пользователем: нужно что-то ввести или передвинуть.
В погоне за новыми способами защиты не забывайте о людях. Многих раздражает, когда их просят распознавать текст на смазанных картинках. Поэтому пускай проверка для человека проходит незаметно, например, через сервисы re или LeadPlan.
С ростом сети Интернет росли и масштабы спам-кампаний. После 2000 года количество навязчивых рассылок резко возросло, достигнув пика в 2008 году, когда такой контент составлял более 90% всего трафика электронной почты. Более того, такие рассылки не просто распространяли нежелательные объявления, фишинговые ссылки и другое вредоносное содержимое, но и опасные семейства вредоносных программ , что сделало их серьезной угрозой для кибербезопасности.
Вендоры решений для кибербезопасности и разработчики программного обеспечения создали решение для защиты от спама, большинство из которых базируются на машинном обучении и способны находить этот вид сообщений. Чиновники также разработали законодательную базу для противодействия спаму благодаря которым его распространения стало незаконным и даже подвергается судебному преследованию.
В 2008 году был закрыт хостинг-провайдер McCol из Калифорнии, потому что он размещал устройства, отвечающие за передачу нежелательных коммерческих рассылок. Подсчитано, что серверы McColo были ответственными за передачу трех четвертей всех спам-сообщений в мире.
Сервис заменяет русские символы на похожие латинские. Это делается в хаотичном порядке так, что практически всегда получается уникальный текст.
Когда может понадобиться сервис «АНТИСПАМ»?
Большинство современных социальных сетей и почтовых служб оснащены автоматизированными системами, которые умеют распознавать сообщения, имеющие признаки спама.
Например, такие:
- Частота отправки сообщений пользователям
- Количество писем в минуту
- Возраст аккаунта
- Наличие прежней переписки с пользователем
Но одним из ярких признаков является наличие в сообщениях однообразного текста.
Обойти это ограничение и помогает наш сайт «АНТИСПАМ». Алгоритм, работающий на сайте, позволяет из предоставленного вами текста получить совершенно новый, уникальный текст путем замены русских букв на похожие буквы из английского алфавита.
Также, наш сервис генерирует изображение, на котором отображется ваш новый, уникальный текст. Это позволяет каждый раз получать новое изображение разного размера, что позволяет обойти правила антиспам для социальных сетей и почтовых сервисов.
Есть еще проекты по созданию бесплатных инструментов для генерации уникального текста. Надеемся осуществить их с вашей помощью.