TGViewer
Сергей Саксонов | Директ ИИ Маркетинг Сергей Саксонов | Директ ИИ Маркетинг @saxonovdirect · 2.39K subscribers
Post #291 1.11K
🚫 С 2910 спамных лидов в месяц до 0, или как я ботов травил

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

Проблема не только в том что это мусор в почте, на который тратит время отдел продаж. На этом спаме учатся алгоритмы яндекса, что приводит к деградации РК.

Недавно помог одному из своих клиентов побороться со спамом. Стартовая точка: 97 спамных заявок в день.

Использовал эти методы:

1. Скрытое поле

На форму добавляется скрытое поле, которое живой человек не видит и не трогает, тк оно спрятано за край экрана. А бот видит все поля в коде и заполняет всё подряд. Если скрытое поле заполнено, заявку молча отсекаем.

Показываем боту свою страницу спасибо. Чтобы он думал что заявка оставлена успешно и не долбился снова.

Ставится быстро, никак не мешает пользователю. Отсекает массовых ботов, которые тупо заполняют все поля.


2. Ограничение частоты

Фиксируем с какого IP пришла заявка и не даем повторно отправить в течение 15 сек. Многие ставят тут 30, но мне кажется это много. Если человек реально ошибся в форме, может и не дождаться.

Боты, которые шлют десятки заявок в минуту отсекаются.


3. Проверка Referer(откуда пришел)

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

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


4. Валидация телефона

Убираем из получаемых номеров все кроме цифр и смотрим длину. Если выбивается из 10-12 цифр, то отклоняем.


5. Только POST

Форма должна отправляться правильным техническим способом POST. Боты иногда пробуют отправить данные другим, упрощённым способом GET, прямо через ссылку. Такие запросы отклоняем.


Это привело к тому, что объем спама упал с 97 писем в день до 2,2! И с этим уже можно жить, но хочется же полностью вытравить...

Для этого надо изучить врага получше. Скачал логи с сервера и вычислил его! Там прям его визитка есть в строке User-Agent. Он там под именем Python aiohttp/3.9.1.

Этот паршивец даже и не скрывался. Это целенаправленно атакующий бот, написанный на языке Python с библиотекой aiohttp (инструмент, чтобы слать запросы пачками), версии 3.9.1. Кто-то натравил его именно на сайт моего клиента.

Спамил он, подделывая откуда пришел, не попадая под ограничения частоты, с "правильными" номерами, и не палился на скрытом поле. В общем эту тварь хрен поймаешь. Но я поймал с помощью еще одного метода.

После этого спам пропал вообще. С 97 писем в день, до 0.

Как вы думаете, чем был пойман поганец?
  • 🔥 21
  • 👍 9
  • ✍ 7
More from @saxonovdirect
  1. Sep 24, 2026🚦 Пресейл-аудит, который собирается почти сам Что надо чтобы собирать: 1. клод или кодекс…
  2. Sep 17, 2026👨‍🦳 Что делать, если боты списывают бабки с ваших ОЗК *ОЗК — стратегия при оплате за кон…
  3. Sep 10, 2026😒 Антикейс: 76к занесли авито, чтобы получить ничего. Подробно расписал в статье https://…
  4. Sep 4, 2026У меня по многим процессам нейронка сама общается с людьми. И не все понимают, что она ней…
  5. Sep 1, 2026🏆 Как настроить ОЗК чтобы тащили ОЗК — кампании с оплатой за конверсии. Знали бы вы как т…
  6. Aug 27, 2026Мне очень нравится эта фраза: Чтобы вы могли выйти из операционки, в нее должен кто-то зай…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →