Предотвращаете появление спам-ботов на сайте?

StackOverflow https://stackoverflow.com/questions/2433602

  •  19-09-2019
  •  | 
  •  

Вопрос

У нас возникла проблема со спам-ботами на одном из наших довольно крупных веб-сайтов.Похоже, что боты создают учетные записи пользователей, а затем публикуют записи в журналах, которые приводят к различным спам-ссылкам.

Похоже, они каким-то образом обходят нашу капчу: либо ее взломали, либо они используют другой метод создания учетных записей.

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

Однако я не думаю, что этого будет достаточно, если они используют SQL-эксплойт где-то на сайте и выполняют весь межсайтовый скриптинг.Итак, мой вопрос к вам:

Если они используют какой-то XSS-эксплойт, как мне его найти?Я защищаю операторы там, где могу, но, опять же, это довольно большой сайт, и мне потребуется некоторое время, чтобы активно очистить операторы SQL для предотвращения XSS.Можете ли вы порекомендовать что-нибудь, чтобы помочь в нашей ситуации?

Это было полезно?

Решение

1) Как уже говорилось выше реКАПЧА это хорошее начало.

2) Аскимет это отличный способ пометить спам перед его публикацией.Это то, что Wordpress использует для борьбы со спамом, и это чрезвычайно эффективно.Затем вы можете отклонить или поставить запись на модерацию на основе результатов.Этот API также до смешного прост в использовании.(У меня есть PHP-код, если он вам нужен).Вам может понадобиться коммерческая лицензия, хотя я уверен, что вы можете начать использовать бесплатную версию.

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

Другие советы

Если боты где-то воспользовались дырой в скрипте, это должно быть подтверждено в журналах.Проверьте наличие прямых POST для сценариев создания пользователей и сценариев создания записей журнала без обычной «нормальной» активности серфинга перед попаданием:Боты, возможно, троллили сайт только один раз и обходят этап снятия форм и делают вид, что заполняют их.Ищите GET-запросы с очевидными данными типа XSS в строках запроса.

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

Если в ваших таблицах учетных записей пользователей нет какой-либо отметки времени создания, вставьте ее, и пусть сервер создаст временную метку, а не ваши пользовательские сценарии.Таким образом, вы можете сузить периоды времени, чтобы сканировать журналы на предмет активности ботов и видеть, что они делают.И, по крайней мере, вы можете заблокировать IP-адреса, с которых публикуют сообщения боты.

Я удивлен, что кто-то может посоветовать Akismet, и это принимается как ответ:

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top