Краткая история: у меня есть веб-приложение, в котором есть огромный стимул для участия. Таким образом, скриптеры и боты активно преследуют нас. Основываясь на IP-адресах, с которых поступают сообщения (более 1000 и их количество растет, никакой закономерности), я склонен полагать, что сообщения генерируются бот-сетью. Хуже того, человек (лица), контролирующие автоматические отправки, активно доводят дело до такой степени, что каждый раз, когда мы вносим изменения, они наверстывают упущенное в течение нескольких часов.
Некоторые из мер, которые мы уже пробовали:
- Капчи, как сторонние, так и самодельные, с разной степенью читабельности
- Токен защиты от подделки запроса, отправленный через файл cookie и скрытое поле формы, которое сравнивается при отправке.
- Скрытое пустое поле-приманка, из-за которого отправка автоматически завершается ошибкой, если поле содержит данные.
- Скрытое поле-приманка, которое содержит данные по умолчанию и приводит к тихому сбою, если фрагмент javascript не запускается для очистки значения поля.
- Ограничение отправки по IP-адресу в течение определенного периода времени
- Блокировка доменов электронной почты, которые, как известно, используются автоматическими сценариями.
- Блокировка хостов на основе одновременных подключений или подключений в минуту на брандмауэре
- Блокировка самых вопиющих IP-адресов на брандмауэре
- Использование внешней службы проверки адресов для проверки входящих адресов
Даже при всех этих мерах отправка сообщений не только продолжалась, но и увеличивалась по частоте, порядка 100 000+ в день.
Поддельные записи теперь используют полностью действительные имена и фамилии и, по-видимому, прибегли к использованию какого-то списка каталогов, чтобы гарантировать, что используемые ими адреса (которые кажутся совершенно случайными и совсем не согласованными, кстати) действительно являются действительными почтовыми адресами США. . Кроме того, я записал входящие значения формы в журнал отладки и убедился, что они действительно отправляют действительные коды проверки, указывая на то, что они имеют достаточно хорошее распознавание символов для расшифровки изображений (сам код никогда не отправляется клиенту, только GUID, представляющий код, который хранится в другом месте на серверной части)
На самом деле, единственный способ сказать, что записи являются поддельными, — это шаблон адресов электронной почты и доменов, которые они отправляют. Мы пытались заблокировать доступ к наиболее активным доменам, но спамеры просто создают или находят новые домены, из которых они могут генерировать одноразовые адреса электронной почты, и продолжают свою работу.
К этому моменту я очень устал, но я уверен, что должно быть что-то, чего я еще не пробовал. У кого-нибудь здесь есть какие-нибудь блестящие идеи?