Как ботнеты притворяются живыми: fingerprinting, WebGL и маскировка под людей
Давайте поднимем логи и посмотрим правде в глаза. Современный фрод редко палится одним «кривым» параметром: он собирает правдоподобный профиль из десятков полей и подменяет только те, где легко ошибиться. Типовой набор — canvas, WebGL vendor/renderer, audio stack, timezone, language, screen metrics, список шрифтов и поведение мыши. Если эти слои не согласованы между собой, перед вами не пользователь, а скрипт в маске.
У ботнета есть две задачи: пройти первичный фингерпринт и не развалиться на поведенческой фазе. Поэтому фрод-скрипты часто имитируют «шум»: небольшие дрожания координат, случайные паузы, псевдослучайные повороты курсора, но паттерн остаётся машинным. Ботнеты эволюционируют, но паттерны их поведения остаются прежними: идеальная повторяемость траекторий, слишком ровные интервалы, одинаковая глубина скролла, отсутствие естественных ошибок ввода.
WebGL — отдельная песочница. Подмена vendor/renderer без корреляции с UA, OS, доступным набором API и реальными графическими возможностями даёт тихий, но очень жирный индикатор. Например, когда «мобильный» профиль внезапно отдаёт десктопный рендерер, а canvas-отпечаток стабильно совпадает между тысячами сессий, это не случайность, а фабрика. Здесь же всплывают DNS/ASN-аномалии, несовместимые часовые пояса и одинаковые event-sequence по сотням кликов.
Защита строится не на одном флаге, а на связке признаков: кластеризация fingerprint-совпадений, проверка энтропии полей, сравнение WebGL с остальным стеком, анализ движения до первого клика и после него. Если нужно резать трафик жёстко — ставьте weighted scoring: одинаковый canvas + подозрительный WebGL + синтетическая моторика = высокий риск, даже если IP «чистый».
Финал простой: ловите не «бота», а несостыковки в профиле. Там, где фрод пытается быть слишком похожим на человека, обычно и торчит шов.
Защита от фрода в рекламе
@ad_fraud_shield_arb
Как ботнеты притворяются живыми: fingerprinting, WebGL и маскировка под людей
Этот пост опубликован в Telegram-канале Защита от фрода в рекламе. Подписаться можно по ссылке: @ad_fraud_shield_arb.