Как защитить Телеграм чат от массовой накрутки ботами

Всем привет. Сегодня решил поделиться своей историей и ее решением с читателями vc.ru, а также с теми, кто столкнется с чем-то подобным. Сразу скажу, я не считаю себя экспертом, но именно мне данное решение помогло. Возможно, для Вас оно будет менее актуальным.Для тех, кто захочет сразу побежать в комментарии не прочитав статью - Combot или Crosser Bot в моем кейсе оказались бесполезны.

С чего все началось

Я больше 5 лет вел Телеграм канал (t.me/cpalike) и чат (t.me/cpafuck). Иногда сталкивался с небольшими приливами ботов, но оперативно подчищал их и жил себе мирно дальше. Однако 7 апреля у меня случился небольшой конфликт и некий недоброжелатель решил уничтожить мои ресурсы с помощью наплывов ботов.

У чата всегда был подключен оплаченный Combot, который всех новых участников приветствовал капчей. Однако это не работает, когда в чат в течении 1-2 минут залетает несколько тысяч ботов. Телеграм будто не приспособлен к таким нагрузкам и история чата попросту исчезает. Выглядит жутко, поверьте)

Помимо того, что висит масса сообщений с просьбой подтвердить, что пользователь не бот, также появляется множество уведомлений в стиле “Max вступил в группу”. Итого при 1000 ботах мы получаем целых 2000 сообщений в чат.

Как защитить Телеграм чат от массовой накрутки ботами

Уведомления о входе нового участника Combot не успевает чистить и многие из них попросту пропускает - они остаются висеть в чате. Для этого я подключил joinhider, с ним стало получше.

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

На 2024 год, мы перестали поддерживать нашего бота, однако вы можете использовать решение от GladOS. Ссылку на подробную инструкцию прикрепили ниже 👇

Позднее был включен режим атаки у Combot, в нем нет проверок для пользователей, банит абсолютно всех входящих, но уведомления о новых вступивших всё равно летели пачками. За всё время атак в чат накрутили более 360 000 ботов. Кстати, занимательно, но судя по ценам сервисов это стоило около 10 000 рублей.

в среднем от 10 000 ботов в сутки
в среднем от 10 000 ботов в сутки

Попытки остановить накрутку и решение проблемы

Спустя месяц отражения атак я принял решение и перевел чат из публичного в приватный. Логин чата закрепил за старым каналом, где позднее разместил ссылку на бота для вступления. К сожалению, я потерял поисковый трафик из телеграм, но мне было важнее спокойствие моих пользователей и возможность вступления новых.

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

Чтобы обезопасить себя и дать возможность новым пользователям вступать, я придумал бота-консьержа. Схема работы проста до безобразия:

1) пользователь запускает бота;

2) проходит капчу;

3) получает одноразовую ссылку и отправляет запрос на вступление;

4) администраторы одобряют ее.

Как защитить Телеграм чат от массовой накрутки ботами
при этом их ссылки одноразовые
при этом их ссылки одноразовые

Через какое-то время мне начали писать другие участники индустрии с подобной проблемой. Отдать им свой код я не решился, как минимум потому что нужно объяснять, как ставить его на сервер и тд. Вместо этого немного переписали бота и сделали его публичным и бесплатным для всех.

Это решение подходит для закрытых чатов и идеально фильтрует живую и активную аудитория. Какие-то небольшие атаки вы легко сможете отбить и подчистить с помощью Combot/Crosser + Joinhider, но для масштабных атак решений от Телеграма нет, нагнать ботов могут и на временные ссылки с функцией заявок.

Можно ли в теории накрутить и через нашего бота - да. Но для этого придется писать отдельный софт, который бы запрашивал на каждого бота ссылку, это сильно сложнее, чем просто заказать накрутку в сервисе + в любом случае есть человеческий фильтр заявок.

В общем, если Ваш чат активно атакуют, можете воспользоваться моим решением - https://t.me/hpr_bot . Настройка интуитивно понятная, но инструкцию приложу.

Подробная инструкция - https://teletype.in/@dovolnyy/faq_hpr_bot

💬Буду рад вашей конструктивной критике и комментариям, спасибо.

41
25 комментариев

Комментарий недоступен

2
Ответить

Спасибо за статью! У меня тоже случались наплывы ботов и даже блокировали из-за этого каналы. Но на помощь пришла u.is. Там можно вести свой блог и создать отдельный чат для общения. Очень порадовала политика самой экосистемы, построенная на полной анонимности.

2
Ответить

сторонние решения не самый удобный вариант, но его можно рассмотреть как альтернативу

3
Ответить

Спасибо, что поделились бесплатно, не создавая очередной «курсо-марафон» 👍

2
Ответить

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

1
Ответить

такое решение было опробовано первично, залетали вручную, разгадывая капчу (сам удивился, что уже никто не пишет капТча)

Даже для чата в 8000 суточные вступления не такие большие, чтобы принимать заявки и фильтровать еще зрительно)

1
Ответить

Обычная казалось бы история - уберечь. Но очень прекрасно сформулированная в той понятной последовательности, что трудно не поддаться искушению - внедрить такую же схему защиты для своих бизнес-задач
Спасибо автору)

1
Ответить