Как обнаружить анти-детект браузеры (Multilogin, GoLogin, Dolphin Anty)
Технический разбор того, как устроены анти-детект браузеры, зачем их применяют для фрода и какие методы детекции позволяют их выявить.
Анти-детект браузеры — самый изощрённый инструмент обхода в арсенале мошенника. В отличие от VPN или цепочек прокси, которые лишь маскируют IP-адреса, анти-детект браузеры создают полностью новые идентичности устройств — подделывая canvas, WebGL, шрифты, аудио и десятки других сигналов browser fingerprinting.
Что такое анти-детект браузеры?
Анти-детект браузеры — это модифицированные сборки Chromium (или Firefox), спроектированные так, чтобы каждый профиль браузера выглядел как совершенно другое устройство. Их применяют для управления множеством аккаунтов на платформах, где действует политика «один аккаунт на человека», для ad fraud в нескольких рекламных кабинетах, для мошенничества в affiliate-маркетинге и для веб-скрапинга в промышленных масштабах.
Три доминирующих игрока на этом рынке — Multilogin, GoLogin и Dolphin Anty.
Как работает Multilogin
Multilogin — вариант корпоративного уровня. Он поставляется с двумя собственными браузерными движками: Mimic (на базе Chromium) и Stealthfox (на базе Firefox). Каждый профиль получает уникальную комбинацию шума canvas, параметров WebGL, списков шрифтов, разрешения экрана, часового пояса, языка и настроек WebRTC.
Ключевое новшество Multilogin — детерминированная инъекция шума. Вместо того чтобы добавлять к рендерингу canvas случайный шум (что само по себе является обнаруживаемым паттерном), Multilogin применяет к каждому профилю согласованное преобразование. Один и тот же профиль всегда выдаёт одинаковый хэш canvas, из-за чего выглядит реальным устройством для наивных систем фингерпринтинга.
Как работает GoLogin
GoLogin ориентирован на средний сегмент рынка со своим браузером Orbita. Он доступнее Multilogin и предлагает схожие возможности подмены: canvas, WebGL, шрифты, часовой пояс, геолокацию и интеграцию с прокси.
Подход GoLogin к подмене отпечатка менее изощрён, чем у Multilogin. Шум canvas обычно более однороден между профилями, а некоторые комбинации параметров WebGL не соответствуют никакому реальному железу. Это создаёт возможности для детекции.
Как работает Dolphin Anty
Dolphin Anty доминирует в сфере affiliate-маркетинга. Он предлагает возможности командной работы — профили можно делить между участниками команды, что удобно для агентств, управляющих сотнями рекламных кабинетов.
Методы детекции
Анализ несогласованности canvas
Анти-детект браузеры подделывают вывод canvas, но подмена выдаёт себя через статистический анализ. Реальные GPU производят вывод canvas с согласованными паттернами субпиксельного рендеринга, которые коррелируют с заявленной моделью GPU из WebGL. Анти-детект браузеры внедряют шум в вывод canvas, но паттерн этого шума не соответствует тому, что произвёл бы любой реальный GPU.
Мы вычисляем энтропию Шеннона для окрестностей пикселей и сравниваем её с известными профилями рендеринга GPU. Реальный NVIDIA GeForce RTX 3060 производит вывод canvas с определённой сигнатурой энтропии. Браузер Mimic от Multilogin производит вывод canvas со слегка повышенной энтропией из-за инъекции шума. Эта разница мала — менее 0,3 бита на окрестность пикселя — но она стабильна и измерима.
Несоответствие параметров WebGL
WebGL раскрывает подробную информацию о GPU: строку производителя, строку рендерера, поддерживаемые расширения, максимальный размер текстуры и форматы точности. Анти-детект браузеры позволяют пользователям выбирать профили GPU, но комбинации не всегда осмысленны. Профиль, заявляющий себя как Intel UHD 630, но сообщающий значения максимального размера текстуры, которые поддерживают только GPU AMD, подозрителен. Мы ведём базу допустимых комбинаций параметров для каждого крупного GPU, выпущенного за последнее десятилетие.
Несогласованности свойств navigator
Объект navigator сообщает свойства, которые должны быть внутренне согласованы. hardwareConcurrency (число ядер CPU), deviceMemory, platform и userAgent должны рассказывать связную историю об устройстве. Анти-детект браузеры иногда создают невозможные комбинации: user agent Windows с платформой Linux или 32 ГБ памяти при 2 ядрах CPU. Мы проверяем 47 правил кросс-проверки согласованности свойств.
Аномалии рендеринга шрифтов
Рендеринг шрифтов определяется ОС, движком рендеринга шрифтов и доступными шрифтами. Анти-детект браузеры могут внедрять кастомные списки шрифтов, но не способны идеально воспроизвести, как другая ОС рендерит эти шрифты. Мы рендерим конкретные глифы и анализируем размеры ограничивающих прямоугольников, ширину продвижения и пары кернинга. Машина на Windows при рендеринге текста выдаёт слегка иные метрики, чем Mac, даже для одного и того же шрифта.
Анализ времени
Подмена отпечатка требует времени. Каждый подделанный вызов API добавляет небольшую, но измеримую задержку по сравнению с нативным выполнением. Мы измеряем время выполнения 12 ключевых вызовов API и сравниваем его с ожидаемыми диапазонами для заявленного железа. На реальном устройстве canvas.toDataURL() занимает 2–8 мс. С инъекцией шума — 8–20 мс.
Артефакты фреймворков автоматизации
Многие анти-детект браузеры оставляют следы своей инфраструктуры автоматизации. Кастомные сборки Chromium могут раскрывать нестандартные свойства объектов navigator или window. Мы проверяем более 200 известных артефактов автоматизации, включая следы CDP, специфичные для Puppeteer свойства и кастомные свойства, внедряемые браузером Orbita от GoLogin.
Преимущество полиморфизма
Логика детекции в статичном JavaScript уязвима для реверс-инжиниринга. Полиморфный скрипт tracio.ai решает эту проблему. Каждый посетитель получает уникальный JavaScript — те же проверки, но с другими именами переменных, другим порядком выполнения, другой структурой кода. Вендору анти-детект браузера пришлось бы реверсить каждую вариацию, что экономически нежизнеспособно.
Пример ответа API
Когда tracio.ai заключает, что посетитель работает в сборке, подделывающей отпечаток, этот вывод приходит на ваш сервер в объекте bot: bot.result несёт вердикт, а bot.antidetectScore несёт уверенность по шкале 0–100 на тарифах Pro и выше. bot.type называет один самый сильный признак автоматизации, сработавший на визите, поэтому значение antidetect появляется в нём только тогда, когда более сильный признак не сработал: сборка, подделывающая отпечаток и вдобавок задевающая обычный признак автоматизации, сообщит именно его, а показатель antidetect останется высоким. На тарифах Business и выше массив reasons добавляет категории, которые привели к вердикту, — fingerprint_tampering, environment_anomaly, anonymous_browser и им подобные — каждая с полем severity со значением high, medium или low, которое задаётся тем, какую часть вердикта эта категория составила на этом визите.
Чего в ответе нет, так это названия бренда. Детекция опирается на то, что подделывающие сборки вынуждены делать, а не на то, кто их выпускает, поэтому нет поля со значением «Multilogin» или «Dolphin Anty» — и это сознательное решение, а не пробел. Список брендов устаревает в тот момент, когда появляется новый инструмент или существующий меняет имя, тогда как базовые маркеры продолжают работать. Названия отдельных проверок, их веса и пороги тоже не публикуются ни на одном тарифе: опубликовать их — значит вручить дорожную карту обхода ровно тем вендорам, о которых сказано выше.
Рекомендации
Если мультиаккаунтинг или affiliate-фрод — проблема для вашей платформы:
- Внедрите device fingerprinting на регистрации, входе и ключевых конверсионных событиях
- Включите детекцию анти-детект браузеров
- Используйте Verdict Engine для автоматизации решений
challenge,reviewиdeny - Отслеживайте новые техники обхода — ландшафт анти-детекта меняется ежемесячно
Начните с бесплатного тарифа tracio.ai , чтобы увидеть, как выглядит текущий трафик анти-детект браузеров у вас. Большинство платформ удивляется его объёму.