Спам – это проблема, с которой сталкиваются все владельцы сайтов. Простая истина заключается в том, что если у вас есть какие-либо веб-формы для сбора информации от ваших клиентов на вашем сайте, вы получите некоторые спам-сообщения. В некоторых случаях вы можете получить много и много рассылок спама.
Спам представляет собой огромную проблему даже в тех формах, которые не делают ничего, что могло бы принести пользу спаммеру (например, пересылать обратно на сайт, где они могли бы добавлять обратные ссылки на другие сайты). Спамеры используют веб-формы, чтобы попытаться продвинуть свой собственный бизнес и сайты, а также используют их в более злонамеренных целях. Блокировка спамеров в ваших веб-формах может быть важным инструментом повышения производительности, поэтому раздел комментариев на вашем веб-сайте будет выглядеть потертым.
Чтобы защитить ваши веб-формы, вам нужно, чтобы автоматизированный инструмент заполнял или отправлял форму, затрудняя или делая невозможным, а ваши клиенты могли бы как можно проще ее заполнить. Это часто является уравновешивающим действием, так как если вы сделаете форму слишком сложной для заполнения, ваши клиенты не будут заполнять ее, но если вы сделаете ее слишком легкой, вы получите больше спама, чем реальных заявок. Добро пожаловать в веселые времена управления сайтом!
- Добавьте поля, которые могут видеть и заполнить только спам-боты
- Используйте капчу
- Используйте тестовый вопрос для ботов
- Используйте токены сеансов, которые применяются на уровне сайта и требуются в форме
- Запись данных из отправленных форм, таких как IP-адрес, и их использование для блокировки спамеров.
- Используйте такой инструмент, как Akismet, для сканирования и удаления спама
- Лучшая стратегия борьбы со спамом использует комбинацию методов
- Специальные инструменты для борьбы со спамом в комментариях
Добавьте поля, которые могут видеть и заполнить только спам-боты
Этот метод использует либо CSS, либо JavaScript, либо и то и другое, чтобы скрыть поля формы от клиентов, которые посещают сайт на законных основаниях, и отображать их роботам, которые только читают HTML. Тогда любая отправка формы, которая содержит заполненное поле формы, может считаться спамом (поскольку бот явно ее отправил) и удаляется вашим скриптом действия формы. Например, у вас может быть следующий HTML, CSS и JavaScript:
Простая форма
Адрес электронной почты:
Электронная почта:
CSS в
файл
# email2 {display: none; }
JavaScript в
файл
$ (document) .ready (
function () {
$ ('# email2'). hide ()
}
);
Спам-роботы увидят HTML с двумя полями электронной почты и заполнят их оба, потому что они не видят CSS и JavaScript, которые скрывают его от реальных клиентов. Затем вы можете отфильтровать результаты и любые отправленные формы, которые включают
поля являются спамом и могут быть удалены автоматически, прежде чем вам придется иметь дело с ними вручную.
Этот метод хорошо работает с менее сложными спам-ботами, но многие из них становятся умнее и теперь читают CSS и JavaScript. Использование CSS и JavaScript поможет, но не остановит весь спам. Это хороший метод, если вы не очень беспокоитесь о спаме, но хотели бы сделать его немного сложнее для спам-ботов. Ваши клиенты не заметят этого вообще.
Используйте капчу
CAPTCHA – это скрипт, который блокирует спам-боты от доступа к вашим формам, в то время как люди могут (по большей части) пройти. Если вы когда-либо заполняли форму и вам приходилось перепечатывать эти волнистые буквы, вы использовали CAPTCHA. Вы можете получить бесплатное решение CAPTCHA от ReCAPTCHA.
CAPTCHA могут эффективно блокировать спам. Некоторые системы CAPTCHA были взломаны, но это все еще эффективный блок. Проблема с капчей заключается в том, что людям может быть очень трудно читать. ReCAPTCHA включает в себя звуковую версию для слепых людей, но многие люди не понимают, что они могут что-то слушать и пройти. Никогда не стоит расстраивать пользователей, и эти CAPTCHA часто делают именно это.
Этот метод хорошо работает для важных форм, которые вы хотите защитить, таких как регистрационные формы. Но вы должны избегать использования CAPTCHA в каждой форме на вашей странице, так как это может удержать клиентов от их использования.
Используйте тестовый вопрос для ботов
Идея заключается в том, чтобы поставить вопрос, на который может ответить человек, но робот не знал бы, как его заполнить. Затем вы фильтруете заявки, чтобы найти правильный ответ. Эти вопросы часто имеют форму простой математической задачи типа «что такое 1 + 5?». Например, вот HTML-код для формы с таким вопросом:
Адрес электронной почты:
Зебра черная и
Тогда, если
значение не «белое», вы знаете, что это спамбот, и вы можете удалить результаты.
Этот метод прекрасно работает, пока вы задаете вопрос, на который все ваши клиенты будут знать ответ. Но если вы зададите вопрос, который по какой-либо причине ваши клиенты не понимают, вы заблокируете им доступ к форме и создадите серьезный источник разочарования.
Используйте токены сеансов, которые применяются на уровне сайта и требуются в форме
Этот метод использует куки для установки токенов сессии, когда клиент заходит на сайт.Это отличное средство защиты от спам-ботов, потому что они не устанавливают куки. На самом деле, большинство спам-ботов попадают непосредственно в формы, и если у вас есть cookie-файл сеанса не установлен в форме, это гарантирует, что только люди, посетившие остальную часть сайта, заполняют форму , Конечно, это может заблокировать людей, которые добавили в закладки форму. Узнайте, как написать свой первый HTTP-cookie.
Запись данных из отправленных форм, таких как IP-адрес, и их использование для блокировки спамеров.
Этот метод – не столько передовая защита, сколько способ блокировать спамеров после свершившегося факта. Собрав IP-адрес в ваших формах, вы сможете определить шаблоны его использования. Если вы получили 10 сообщений с одного и того же IP-адреса за очень короткий период времени, этот IP-адрес почти наверняка является спамом.
Вы можете собрать IP-адрес с помощью PHP или ASP.Net, а затем отправить его с данными формы.
PHP:
$ ip = getenv ("REMOTE_ADDR");
ASP.Net
ip = '';
Этот метод хорошо работает, если вы не получаете много непрерывного спама, а вместо этого получаете периодические всплески активности, например, со знаком входа в форму. Когда вы видите людей, пытающихся получить доступ к вашим защищенным областям несколько раз, зная их IP, чтобы вы могли заблокировать их, это может быть надежной защитой.
Используйте такой инструмент, как Akismet, для сканирования и удаления спама
Akismet настроен на то, чтобы помочь блоггерам блокировать спам в комментариях в своих формах, но вы также можете купить планы, которые помогут вам блокировать спам в других формах.
Этот метод очень популярен среди блоггеров, потому что он очень прост в использовании. Вы просто получаете API Akismet, а затем настраиваете плагин.
Лучшая стратегия борьбы со спамом использует комбинацию методов
Спам это большой бизнес. Таким образом, спамеры становятся все более и более творческими в своих способах обхода средств блокировки спама. У них есть более сложные программы для спам-ботов, и многие даже используют низкооплачиваемых людей, чтобы напрямую публиковать свои спам-сообщения. Почти невозможно заблокировать реального человека, который подает спам вручную через форму. Ни одно решение не поможет поймать каждый тип спама. Таким образом, использование нескольких методов может помочь.
Но помните, не используйте несколько методов, которые видит клиент. Например, не используйте и CAPTCHA, и вопрос, отвечающий за человека, в одной форме. Это будет раздражать некоторых клиентов и потеряет вас законные представления.
Специальные инструменты для борьбы со спамом в комментариях
Одним из наиболее распространенных мест, где люди видят спам, являются комментарии, и это часто происходит потому, что они используют стандартный пакет блогов, такой как WordPress. Если вы сами размещаете WordPress, вы можете сделать несколько вещей, чтобы бороться со спамом в комментариях. И они работают для любой системы блогов, у которой есть доступ к файлам:
-
Не используйте стандартные URL-адреса для форм. Большая часть спама в комментариях автоматизирована и распространяется на WordPress и другие сайты блогов и просто атакует форму напрямую. Вот почему вы иногда будете видеть спам в комментариях, даже если у вас есть комментарии, удаленные из вашего шаблона. Если файл комментариев (обычно называемый
comments.php
) существует на вашем сайте, спамеры могут и будут использовать его для публикации спам-комментариев в вашем блоге. Изменив имя файла на другое, вы можете заблокировать этих автоматических спам-ботов.
- Периодически перемещайте страницы формы. Даже если вы не используете стандартное имя файла для комментариев или полей формы, спамеры могут найти их, если они связаны с вашим сайтом. И есть много спам-компаний, где все, что они делают – продают списки URL-адресов в формы, где спамеры могут писать свои сообщения. У меня есть пара страниц форм, которые не были активными в течение пяти лет, и которые по-прежнему периодически посещаются спамерами. Они получают 404, и я вижу это в моей статистике, поэтому я знаю, что не должен больше использовать эту страницу.
-
Периодически меняйте имена своих сценариев действий формы. Но так же, как и страницы форм, вам следует периодически менять имена любых сценариев, на которые вы указываете в атрибуте
action
ваших форм. , Многие спамеры указывают на эти сценарии, полностью минуя формы, поэтому даже если вы переместите страницу формы, они все равно смогут отправлять спам. Перемещая скрипт, вы вместо этого выводите их на страницу с ошибкой 404 или 501. Как и в предыдущем предложении, у меня есть сценарии, которые удалялись с моего сервера в течение многих лет, которые спаммеры все еще пытаются использовать.
Спаммеры действительно раздражают, и пока стоимость рассылки спама намного ниже, чем доходность, спаммеры всегда будут. И гонка вооружений средств защиты против ботов-спамеров будет продолжать расти. Но, надеюсь, благодаря комбинации перечисленных здесь инструментов у вас будет стратегия, которая продлится несколько лет.