惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
News and Events Feed by Topic
Malwarebytes
Malwarebytes
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
C
Cybersecurity and Infrastructure Security Agency CISA
F
Future of Privacy Forum
C
Cisco Blogs
T
The Exploit Database - CXSecurity.com
A
Arctic Wolf
S
Securelist
K
Kaspersky official blog
S
Schneier on Security
T
ThreatConnect
T
Tenable Blog
Spread Privacy
Spread Privacy
T
True Tiger Recordings
AWS News Blog
AWS News Blog
F
Fox-IT International blog
量子位
T
Threatpost
V
Vulnerabilities – Threatpost
C
CERT Recently Published Vulnerability Notes
Cisco Talos Blog
Cisco Talos Blog
GbyAI
GbyAI
宝玉的分享
宝玉的分享
腾讯CDC
G
Google Developers Blog
aimingoo的专栏
aimingoo的专栏
Cyberwarzone
Cyberwarzone
有赞技术团队
有赞技术团队
S
SegmentFault 最新的问题
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
Visual Studio Blog
U
Unit 42
雷峰网
雷峰网
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Simon Willison's Weblog
Simon Willison's Weblog
O
OpenAI News
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
The GitHub Blog
The GitHub Blog
The Register - Security
The Register - Security
MyScale Blog
MyScale Blog
小众软件
小众软件
A
About on SuperTechFans
Last Week in AI
Last Week in AI
Y
Y Combinator Blog
博客园 - 三生石上(FineUI控件)
美团技术团队
Google Online Security Blog
Google Online Security Blog
P
Proofpoint News Feed
MongoDB | Blog
MongoDB | Blog

Все публикации подряд на Хабре

LLM не работает за вас. Она работает с вами Чем лучше защищает минеральный SPF, тем страшнее он выглядит Стимпанк как часть жизни. История паровых двигателей и место, которое они занимали в мире в XIX-XX веках. Часть 1 Новые методы и инструменты: как мы обновили курсы по тестированию в Яндекс Практикуме Java 21 в стиле «клятый энтерпрайз» на одноплатном компьютере возрастом 13 лет Ваши секреты внутри LLM. Куда уходят промпты и чего стоит опасаться? 10× труда. 10% к бонусу. Главный риск AI-эпохи — это сениор AI-инженер, который умеет считать Сапожник с сапогами Минимум, который удержит тебя на плаву в период дедлайнов Как без проблем переносить курсы между платформами? Обзор формата SCORM Когда Claude Code ошибается не по своей вине: документационный долг в соло-проектах 70% кода с AI — и ни на день быстрее qrrot — база данных со встроенным ИИ Шахматные программы V. Оценочная функция Восстание масс в обществе спектакля и отчуждение труда в царстве количества: что делать во времена всеобщего упадка? Не умеешь работать с ИИ? Тебя заменит тот, кто умеет Как интеллект становится уязвимостью под давлением Не надо так: три типичные ошибки, которые приводят ко взлому Заметки про код-стайл в C++ Забытый мультиколор (часть 1) Культура ест стратегию на завтрак: почему не работает долгосрочное планирование Советское ИИ: Забытые гении Как оплатить iCloud в России в 2026 году без смены региона Apple ID Глубокая интеграция месседжинга с бизнес процессами в фреймворке NodaLogic Контекстные менеджеры в Python за пределами with open(): пишем свои и упрощаем код Пароль против уборщицы Выяснились детали мега-IPO SpaceX, а также первый прибыльный квартал Anthropic Люди с психическими расстройствами – новая нефть? Когда нейросети перестанут галлюцинировать? И почему на «что за дичь» они несут ещё большую дичь? Мессенджер HalChat теперь в Google Play: 3 года разработки, ИИ в браузере и квест с модерацией Реверс-инжиниринг Xiaomi Smart Band 10 Когда памяти мало Среда повседневности как объект проектирования: что общего у горца, серотониновой ямы и митохондрий AGENTS.md создавали, чтобы помогать агентам. Я использую его, чтобы их вычислять Почему устанавливают join_collapse_limit = 20 Почему устанавливают join_collapse_limit = 20 Эрик Рис, автор Lean Startup: Почему хорошие компании становятся плохими после IPO Context-driven Reusable Form Pattern: Масштабируемая архитектура для Create / Edit / Create-from-Source Пузырьковая сетка, кошачья стая и не только — неожиданные источники вдохновения для QoS-алгоритмов ___, или «Заголовок намеренно оставлен пустым» ИИ-боты сканируют даже логи TLS-сертификатов. Любая информация используется для обучения LLM Нейросеть оживить фото ИИ: Как оживить фото нейросетью в 2026 году? Разбираемся в ML без воды: от базы до Attention. Часть 5: Метрики качества В поисках «кофейного Грааля». Как человечество пытается сварить идеальный кофе и какие рецепты предлагают…математики Программатик: Часть 2 — OpenRTB Интернет до бесконечных лент: каким был 2010 год Перезапуск TrueIndex: что изменилось в рейтинге языков программирования Проектный холст: как менеджеру подбирать «краски» управления под разные команды «Метафизика в формулах: математическое ядро «Веры Паломника — Исход» Java и постквантовый TLS Marcli: Markdown Терминал Кнопочный смартфон с 5G за 2800 рублей — разбираем и изучаем китайскую диковинку Где неприятности — там и жизнь Разворачивайте платформы: stackfile Мой путь в Microsoft Мобильная разработка за неделю #631 (18 — 24 мая) Что не так с Mixtape, и почему не все довольны новой игрой? Стоматология каменного века. Как неандертальцы лечили зубы 59 тысяч лет назад Почему классическое управление проектами часто не работает в IT-продуктах Строительство Саркофага. Часть 2. Бетонные реки и стальные берега РАЗРАБОТКА ПАРАМЕТРИЗИРУЕМОГО МОДУЛЯ CORDIC-АЛГОРИТМА НА SYSTEM VERILOG Вариационное исчисление как метафора свободы выбора: от градиентного спуска к онтологии пути Ekahau Sidekick и RSSI‑offset: физические ограничения метода и пять независимых причин неточности клиентской модели Колесо потока против раскола Обзор интересных особенностей переворачивающихся при умножении чисел В С неопределённое поведение повсюду MCP-агрегатор: объединяем инструменты для LLM в один сервер Дата-центры в космосе: как Google и SpaceX готовят новую инфраструктуру для ИИ Google готовит замену Chromebook: какими будут ноутбуки Googlebook Пользователь пишет issue, агент меняет сайт. Да, я это сделал Корпоративные конфликты в ИТ-секторе: механика судебной защиты активов и субсидиарных рисков Цена одной опечатки: Как три неверные буквы сорвали киберограбление на миллиард долларов Как я победил спам в своих email аккаунтах Whitepaper Сбера «AI-Disrupt PDLC»: разбор для тех, кто пишет код RustDesk Pro в России не купить. После долгих лет администрирования мы собрали своё честное решение Не пики, а бассейны: почему эволюция — это блуждание по графу жизни Как Gemini 3.5 Flash сломали ради красивых графиков (и почему она обходит 3.1 Pro только на бумаге) Вредоносная атака на Laravel-Lang meta-attention is all you need Как перестать путаться в IP-адресах серверов Сколько стоят ошибки в арбитраже: декомпозиция ценообразования на судебные услуги в Москве Разбираемся в ML без воды: от базы до Attention. Часть 4: kNN Vortex: фреймворк для тех, кого задолбала итальянская кухня в репозитории Использование тепла ЦОД в мире и РФ Часть 4. Скорость света — технические детали Не цитируй мне нейросеть Что сейчас с Project Loom? Примеры и код Рождённые в Сумерках Meta 1 мая показала как они хранят ключи от ваших бэкапов WhatsApp. Разбираю архитектуру и сравниваю Линт проектов: собираем ESLint, Prettier и Stylelint в один пакет Reasoning-модели сломали мой промпт-инжиниринг. Год переучиваюсь РБМК: enfant terrible Как я собеседую менеджеров AI-продуктов для крупного Enterprise Парадокс рынка труда: конкуренция выросла, но не везде, нанимать легче, но не везде Модификаторы в Blender: осваиваем Boolean «Бесплатно» — это красный флаг: почему мы доверяем не тем (опрос) Стратегия выживания в эпоху ИИ Новая теория обещает переписать фундамент всей математики MTP у Qwen3.6 в llama.cpp обещает ×2 по скорости. Я прогнал ту же модель через своего агента — и получил обратное [Перевод] Соль и перец в безопасности паролей
Гастарбайтеры ворвались в IT и зарабатывают на рекламе: тут вам не снег лопатой кидать
grigoriy-mel · 2026-05-25 · via Все публикации подряд на Хабре

Уровень сложностиСредний

Время на прочтение8 мин

Охват и читатели81

Кейс

Начну с конца. В статье приведена доказательная база, что в Директе зарабатывает огромная бото-ферма, которая ходит через антидетект браузеры с использованием сессий РЕАЛЬНЫХ Android-устройств. Эти сверх-боты имеют аккаунты в соц. сетях, умеют решать разнообразные челленджи (капчи) и совершать конверсии за которые мы платим.

Я, Григорий Мельников, создатель сервиса защиты от ботов KillBot, до последнего думал что, схема, описанная ниже не характерна для ботов. Но оказалось, что нет - клики идут НЕ от мотивированных пользователей, НЕ от «странных» юзеров - а именно от ботов. Причем это сложные и составные конверсии, которые несут за собой явный злой умысел.

Я решил привлекать подписчиков в Telegram через Яндекс.Директ

Да, у меня есть Telegram-канал. И я решил попробовать классическую схему - привлекать подписчиков через Яндекс.Директ.

Как это делалось через ЕПК-кампанию, я написал в другой статье (вот ссылка, она довольно грузная, поэтому рекомендую посмотреть потом): https://habr.com/ru/articles/980676/

Но, так же, я решил проверить, как эта же схема будет работать в Мастер-кампаний. Вроде как Мастер-кампаний - это полностью автоматизированная штука: запустил и не паришься. Именно так я и слышал про этот тип кампаний в рекламе.

Напомню свою схему привлечения подписчика в Telegram:

  1. Пользователь кликает по рекламе.

  2. Попадает на страницу с капчей (на этом шаге сохраняется ClientID).

  3. После решения капчи пользователь перебрасывается в Telegram-канал на целевой пост.

  4. Если пользователь подписывается (число подписчиков увеличилось), для ClientID отправляется офлайн-конверсия.

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

Я запустил рекламу, и на первых порах она привлекала подписчиков по 250₽. Подписки росли — меня это устраивало. В настройки Мастер-кампаний я не лез от слова «совсем». У меня и так дел много. Зачем лезть? Схема же надежная.

Я был очень рад: стоимость подписчика упала аж до 90 рублей. Реально рад за то, за то, что Мастер-кампаний реально круто обучается на целевом трафике. Вот, посмотрите скриншот работы кампании за апрель 2026г. (цифры конверсий - это фиксация реальных подписчиков в телеграм):

А вот само рекламное объявление и целевая ссылка: https://killbot.ru/red_old.html?kbdest=aHR0cHM6Ly90Lm1lL0tpbGxCb3RSdXMvNjE= :

пользователь кликает по объявлению, решает капчу, переходит в канал, если подписывается, то отсылается офлайн конверсия.

пользователь кликает по объявлению, решает капчу, переходит в канал, если подписывается, то отсылается офлайн конверсия.

Через 3 месяца работы кампании я решил чекнуть трафик

Так как подозрения уже закрадывались. Ниже скриншот конверсий по регионам. И из России всего 14 конверсий((( , всё остальное это конверсии гастарбайтеров:

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

Тут важное уточнение: регион изначально я выбрал «Россия». Узбекистан, Таджикистан и другие страны - Директ подставляет сам при первом сохранении - их потом нужно удалять вручную. Я, к сожалению, увидел это поздно.

295000 тысяч рублей суммарно было потрачено на эту кампанию

На скриншоте 2247 конверсий - это примерно и бьется с тем, на сколько подписчиков вырос мой канал. Жаль тольто, что это всё мёртвые души.

На скриншоте 2247 конверсий - это примерно и бьется с тем, на сколько подписчиков вырос мой канал. Жаль тольто, что это всё мёртвые души.

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

И, как результат, было два сценария:

  • или человек вообще не отвечал;

  • или мои сообщения моментально удалялись.

Выглядит странно: пользователь только что перешел в канал, пролистал посты, подписался, я тут же написал - и НОЛЬ ответов. Очень странно. Но все же, это еще не доказательство «битости» трафика.

Кто подписывается? Мотив? или Боты?

Возможны такие варианты источников битого трафика:

  1. Реальный мотивированный трафик (кликают за деньги).

  2. Ботовский нагул трафика, но с оператором на последнем шаге (это популярный кейс для бурж трафика, Fake Leads - это боль англоязычных маркетологов).

  3. Чисто ботовский трафик.

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

на КИТАЙСКИЙ я подменил контент, который стоит за рекламным объявлением

Так как трафик не целевой, то ему безразлично куда кликать:

  • я подменил свой Telegram-канал на новый канал (создал новый канал без подписчиков);

  • на КИТАЙСКОМ написал название канала

  • на КИТАЙСКОМ оставил всего одно сообщение в телеграм канале;

  • описание капчи (решите капчу, чтобы перейти в Telegram) тоже сделал на китайском.

Вот, посмотрите каким стал путь пользователя после нововведений:

https://killbot.ru/red.html?kbdest=aHR0cHM6Ly90Lm1lL0tpbGxCb3RSdXMvNjE= - а вот и сама рекламная ссылка, которая идет на китайский канал, можете чекнуть.

В итоге получается схема:

  • узбек видит русское рекламное объявление;

  • кликает на него;

  • попадает на страницу капчи на китайском;

  • читает иероглифы, понимает что это капча и решает капчу;

  • переходит на китайский Telegram-канал без контента и подписчиков;

  • подписывается

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

Кампания была возобновлена 24 мая 2026 года (номер кампании 707774675)

В этот день работал только китайский канал. Поэтому все конверсии за этот день — гарантированно и 100% битые.

И каков был первый результат? Пользователи китайсткую капчу решают, подписки есть. За пару часов на канал подписалось 20 подписчиков! Вот как это выглядело:

21 узбекский подписчик и 131 просмотр единственного китайского поста

21 узбекский подписчик и 131 просмотр единственного китайского поста

Из этого сразу следуют два варианта:

  1. Или это боты.

  2. Или это один оператор бот-сети, который просто знает что это за капча - она ему уже встречалась ранее и без разницы что за иероглифы там написаны - он знает что делать на этой странице.

Opacity: 0.29 - Глаз бота, или на чём бот прокололся.

Наличие жесткого порога там, где у живого наблюдателя должен быть плавный переход, - это признак дискретной (цифровой) системы. Это традиция современной физики: если мы находим абсолютный, непреодолимый предел там, где ожидается плавность, - это сигнал о том, что система дискретна, а не аналогова (Планковская длина - минимальный “пиксель” пространства, или Предел Бекенштейна - максимальное количество информации в заданном объеме.)

На этом шаге найдем жесткий порог и поймём, что по объявлению кликает бот!

Делаем капчу прозрачной и смотрим, будет ли решение.

Если капча прозрачная, то даже оператор не сможет её решить. А для бота это будет не проблема.

Как только я сделал капчу прозрачной, то не получил ни одного решения капчи и ни одного вступления.

Круто, т.е. это или умный бот, или реальный пользователь, который просто не видит, куда свайпать.

Идем дальше - проверяем глубину видимости, при которой капча еще решается. Для этого варьируем параметр opacity.

Кто не знает, opacity - это параметр прозрачности, если opacity=1 - то капча не прозрачна. Если opacity=0, то капча полностью прозрачна и сольётся с фоном.

На скриншоте слева на 28% прозрачная капча (opacity=0.28), против не прозрачной капчи справа (opacity=1)

На скриншоте слева на 28% прозрачная капча (opacity=0.28), против не прозрачной капчи справа (opacity=1)

И так, начинаем варьировать opacity:

  • opacity = 0.5 (50% прозрачности) - решения капчи есть, подписчики пошли.

  • opacity = 0.25 — подписчиков сразу не стало. Ноль решений капчи.

  • opacity = 0.37 — вступления есть.

  • opacity = 0.31 — вступления есть.

  • opacity = 0.27 — вступлений НЕТ.

  • opacity = 0.31 — вступления есть.

  • opacity = 0.28 — вступлений НЕТ.

  • opacity = 0.29 — вступления есть (сразу 5 за 20 минут).

  • Контрольный opacity = 0.28 — снова вступлений НЕТ.

Финита ля комедия. Мы доказали: это клик сверхумного бота.

opacity = 0.29  - это глаз бота, если он выше или равен - то бот капчу видит и решает, а если opacity < 0.29, то бот становится слепым и капчу НЕ решает. Такое поведение характерно только для бота. Это не мотив, не оператор, это БОТ!

Т.е. это продуманные хорошо нагуленные боты с аккаунтами в соц. сетях, которые умеют заходить в приложение телеграм и подписываться на каналы. Респект, конечно тем, кто поддерживает подобную архитектуру.

Но это злой умысел. За это нужно наказывать. Парни (маркетологи) работают, с кем-то из-за отсутствия живых конверсий разрывают сотрудничество - а тут просто ничего не сделать!

Давайте посмотрим, с каких именно площадок были клики. Ниже площадки, с которых были конверсии именно 24 мая:

Смотрим площадки, уличенные в 100% ботовских конверсиях за 24 мая.

В топе - dsp.yandex.ru. Все по умолчанию блокируют эту площадку. А вот и явное доказательство: это просто ботоферма. Это НЕ площадка Яндекса, это суммарный трафик из внешних (партнерских) рекламных сетей. Яндекс закупает там показы для рекламы в РСЯ.

А вот еще, ниже схожая таблица, но за апрель (тип трафика, стратегия, обучение, узбеки - тут все то же):

Конверсии были только с Android!

Вот, сами гляньте за 24 мая:

Ниже скриншот по устройствам, но за весь период работы кампании (так же клики только с андроид):

Это значит, что кликают не через примитивный BAS, а именно через Антидетект-браузеры, где можно арендовать сессию реального Android-устройства - и бот будет выглядеть почти как живой пользователь.

С iOS всё сложнее. Apple душит такие схемы на корню:

  • Нет нативных антидетект-браузеров под iOS в том виде, в котором они существуют для Android. Те, что есть, работают через облачные сессии на удаленных Mac (дорого и неудобно).

  • WebKit на iOS жестко ограничивает автоматизацию - синтетические клики и эмуляция касаний работают только в пределах одного origin, и обойти это системно гораздо сложнее.

Если бы кликали и реальные пользователи из Узбекистана, то там были бы и айфоны: НО, их нет.

Что делать и кто виноват?

Виноват тот, кто получил деньги за эти клики. Тут всё очевидно.

Если на твой сайт заказали DDoS - злоумышленника найти сложно. Но возможно, сейчас я работаю со следователем из Камчатского края, личность гражданина кто осуществлял ДДоС на инфраструктуру моей кампании вычислена. Как его возьмут, я напишу отдельную статью и расскажу где именно и как он прокололся - там всё сложнее чем в этом кейсе.
А если твою рекламную кампанию злостно накликали в РСЯ - всё просто: кто получил деньги, тот и виновен.

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

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

Как самостоятельно, для своей рекламной кампании повторить этот кейс.

Можно усложнять кейсы, варьировать, придумывать свои. Суть - нужно придумать челлендж, который бот не сможет осознать - ему без разницы куда кликать.

Идея, как это делается, написана в моей другой статье на хабре: https://habr.com/ru/articles/851698/

Если кто хочет готовое решение, то вот готовый скрипт, можно развернуть свой сервер под ключ и ковырять сколько влезет: https://killbot.ru/node/46

И закончу: как нужно относится к стратегиям в Яндекс.Директ

Если ты выбрал стратегию "Максимум кликов", помни:
«ПРОДАЖ НЕ будет. Если ты думаешь, что по твоей рекламе будут кликать и покупать - ты наивный. Ты заказал клики - получишь клики, ты их сам выбрал.»

Если ты выбрал "Максимум конверсий", и у тебя конверсия это НЕ продажа (НЕ живые деньги), то:
«ПРОДАЖ может и НЕ быть. Если у тебя конверсия отправка формы, то ты получишь отправку форм. И тебе просто повезет, если тот, кто отправил форму, купит у тебя. А если ты выбрал конверсию „вовлеченность“ (30 минут на сайте, 30 страниц посмотрел и т.п.) - то о продажах и не мечтай, как и в стратегии за клики»

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

Если ты не используешь офлайн-конверсии - будь готов работать с гастарбайтерами. гастарбайтер совершил конверсию - реклама будет показана другому гастарбайтеру.