- Сообщения
- 56
- Реакции
- 57
Каждый раз когда ты открываешь сайт — он уже знает кто ты. Не по IP. Не по куки. По тому КАК твой браузер рисует невидимый пиксель на Canvas, какие шрифты установлены, сколько ядер у процессора и в каком порядке расширения отдают TLS-хендшейк
Это называется browser fingerprint. Больше 50 параметров, и в связке они уникальны почти как отпечаток пальца. Точность идентификации — до 99% по данным за 2025 год
Антидетект-браузеры созданы чтобы это ломать. Но не все делают это одинаково, и не все делают это хорошо
Что такое фингерпринт и зачем его подменять
Когда ты заходишь на сайт, JavaScript собирает параметры: User-Agent, разрешение экрана, часовой пояс, язык, список шрифтов, количество ядер CPU, объём памяти, наличие тачскрина. Это базовый набор
Продвинутые системы идут дальше — Canvas fingerprint, WebGL renderer, AudioContext, ClientRects. Всё это железо-зависимые параметры, которые сложно подделать правильно
Зачем подменять: мультиаккаунтинг (арбитраж, фарм), обход банов, анонимность. Если два аккаунта открываются с одинаковым фингерпринтом — платформа связывает их моментально. Бан одного = бан всех
Canvas — самый известный отпечаток
Сайт создаёт невидимый элемент canvas и рисует на нём текст или фигуру. Потом читает результат как массив пикселей. Фокус в том что каждая видеокарта + драйвер + шрифтовый движок рендерит чуть по-разному. Разница в субпиксельном сглаживании, hinting, порядке операций
Результат хешируется — и вот тебе уникальный идентификатор. Ты его не видишь, canvas скрытый. Но он есть на большинстве крупных сайтов
Антидетект подменяет Canvas двумя способами. Первый — добавить шум (рандомные пиксели) к результату. Второй — подменить рендер через перехват API. Проблема первого способа — шум нестабилен между сессиями, и если каждый раз разный хеш — это само по себе подозрительно. Нормальный юзер имеет стабильный Canvas
WebGL и AudioContext
WebGL копает глубже Canvas — он лезет прямо в GPU. Строка WebGL Renderer выдаёт модель видеокарты: "ANGLE (NVIDIA GeForce RTX 4070 Direct3D11)" или "Mali-G78". Плюс набор поддерживаемых расширений, максимальные текстуры, precision-форматы шейдеров
Если антидетект говорит что ты на MacBook с M2, а WebGL Renderer отдаёт Intel UHD — это мгновенный палёж. Параметры должны быть согласованы
AudioContext — ещё один уровень. Web Audio API генерирует аудиосигнал и обрабатывает его через OscillatorNode и DynamicsCompressorNode. Результат зависит от аудио-подсистемы и отличается между устройствами. Менее популярный чем Canvas, но некоторые антифрод-системы его проверяют
TLS-фингерпринт — до JavaScript
Вот это то что ломает многим игру. Определение происходит ещё до того как загрузился HTML — на уровне TLS-хендшейка
Когда браузер подключается по HTTPS, он отправляет Client Hello с набором cipher suites, расширениями, поддерживаемыми кривыми и версиями TLS. Всё это хешируется в JA3-отпечаток (или новый JA4)
У настоящего Chrome 131 свой JA3. У Firefox 128 — свой. А у форкнутого Chromium, который лежит в основе антидетекта — третий. Потому что при сборке меняется бинарник, а с ним поведение TLS-стека
Cloudflare держит базу JA3-хешей. Если User-Agent говорит "Chrome 131", а JA3 не совпадает с эталонным для этой версии — бот. Блок
Chrome 110+ и Firefox 114+ начали рандомизировать порядок TLS-расширений в каждом соединении. Это усложнило JA3-фингерпринтинг. В ответ появился JA4 от FoxIO — он устойчив к рандомизации и учитывает ALPN и QUIC
Топовые антидетекты (Multilogin, Linken Sphere) используют нативные сетевые стеки браузера или мимикрируют TLS-хендшейк Chrome/Firefox. Бюджетные — нет, и это видно
Что именно подменяет антидетект
Полный список параметров которые спуфит нормальный антидетект-браузер:
Каждый из этих параметров — отдельный канал утечки. Но главное не подмена сама по себе, а согласованность. Если профиль говорит "Windows 11, Chrome 131, RTX 4070, 16 ядер, 32 ГБ RAM, разрешение 2560x1440" — все параметры должны соответствовать друг другу и быть реалистичными для такой конфигурации
Как антидетекты палятся
CreepJS — открытый инструмент для обнаружения подмен. Проверяет прототипы JavaScript-объектов и ловит "prototype lies" — попытки перехватить стандартные API. Если navigator.hardwareConcurrency возвращает 8, но Object.getOwnPropertyDescriptor показывает что getter подменён — антидетект спалился
В тестах 2025 года CreepJS ловил Selenium и Playwright с 100% точностью. С антидетект-браузерами сложнее, но дешёвые решения тоже попадаются
Другие способы обнаружения:
- Несогласованность параметров — профиль "iPhone", но navigator.platform отдаёт "Win32"
- TLS/User-Agent mismatch — JA3 не соответствует заявленному браузеру
- Нереалистичное железо — WebGL renderer "GTX 1060" + 32 ядра CPU + 2 ГБ RAM
- Стабильность Canvas — каждый раз разный хеш, хотя у реального юзера он стабилен
- Отсутствие "грязи" — нет истории, нет кук, нет закладок. Свежий профиль подозрителен
- Поведенческий анализ — движения мыши слишком ровные, клики слишком точные, скроллинг равномерный. AI-системы антифрода это ловят
IPhey — ещё один чекер. В тестах 2025 года Dolphin Anty был обнаружен через IPhey. Это не значит что браузер плохой — но показывает что идеальной подмены не существует
Кто на рынке
Не реклама, просто факты по основным игрокам
Multilogin — один из старейших. Два движка: Mimic (Chromium) и Stealthfox (Firefox). Самый мощный API для автоматизации (Selenium, Puppeteer, Playwright). Дорогой — от 99 евро/мес. Сильная сторона — TLS-фингерпринт максимально близок к оригинальному браузеру
Dolphin Anty — популярен в арбитраже. Есть бесплатный тариф на 10 профилей. Удобный интерфейс, быстрый старт. Слабое место — в тестах обнаруживался через IPhey и fingerprint.com
GoLogin — единственный с полноценным Android-приложением и облачной версией. Работает на Windows, macOS, Linux. Недорогой. Подходит для начинающих
Linken Sphere — долгая история, начинал как инструмент для кардинга. Есть бесплатный план. Хорошее соотношение цена/функционал. Активно развивается
Octo Browser — относительно новый, но быстро растёт. Делает упор на стабильность фингерпринта между сессиями
Все они на базе Chromium (Multilogin дополнительно Firefox). Принципиальных архитектурных различий между ними мало. Разница — в качестве подмены TLS, в согласованности параметров, в обновлениях под свежие версии Chrome
Где предел
В 2026 году фингерпринтинг вышел на четыре уровня:
1. Транспортный — TLS/JA3/JA4, HTTP/2 фреймы, порядок заголовков
2. Браузерный — User-Agent, Client Hints, navigator.*
3. JavaScript API — Canvas, WebGL, Audio, Fonts, ClientRects
4. Поведенческий — движения мыши, скорость печати, паттерны скроллинга
Каждый уровень перекрёстно проверяет остальные. Антидетект может идеально подменить JavaScript API, но если TLS-хендшейк не совпадает — всё рассыпается
AI-детекторы антифрода анализируют поведение в реальном времени. Не только что ты кликаешь, но как — скорость, траектория, паузы. Это следующий фронт, и пока ни один антидетект не решает его полноценно
Общее правило: антидетект + резидентные/мобильные прокси + прогретые профили с историей + естественное поведение. Четыре компонента. Уберёшь один — остальные не спасут
Вопросы по теме кидайте в ветку, разберём
Это называется browser fingerprint. Больше 50 параметров, и в связке они уникальны почти как отпечаток пальца. Точность идентификации — до 99% по данным за 2025 год
Антидетект-браузеры созданы чтобы это ломать. Но не все делают это одинаково, и не все делают это хорошо
Что такое фингерпринт и зачем его подменять
Когда ты заходишь на сайт, JavaScript собирает параметры: User-Agent, разрешение экрана, часовой пояс, язык, список шрифтов, количество ядер CPU, объём памяти, наличие тачскрина. Это базовый набор
Продвинутые системы идут дальше — Canvas fingerprint, WebGL renderer, AudioContext, ClientRects. Всё это железо-зависимые параметры, которые сложно подделать правильно
Зачем подменять: мультиаккаунтинг (арбитраж, фарм), обход банов, анонимность. Если два аккаунта открываются с одинаковым фингерпринтом — платформа связывает их моментально. Бан одного = бан всех
Canvas — самый известный отпечаток
Сайт создаёт невидимый элемент canvas и рисует на нём текст или фигуру. Потом читает результат как массив пикселей. Фокус в том что каждая видеокарта + драйвер + шрифтовый движок рендерит чуть по-разному. Разница в субпиксельном сглаживании, hinting, порядке операций
Результат хешируется — и вот тебе уникальный идентификатор. Ты его не видишь, canvas скрытый. Но он есть на большинстве крупных сайтов
Антидетект подменяет Canvas двумя способами. Первый — добавить шум (рандомные пиксели) к результату. Второй — подменить рендер через перехват API. Проблема первого способа — шум нестабилен между сессиями, и если каждый раз разный хеш — это само по себе подозрительно. Нормальный юзер имеет стабильный Canvas
WebGL и AudioContext
WebGL копает глубже Canvas — он лезет прямо в GPU. Строка WebGL Renderer выдаёт модель видеокарты: "ANGLE (NVIDIA GeForce RTX 4070 Direct3D11)" или "Mali-G78". Плюс набор поддерживаемых расширений, максимальные текстуры, precision-форматы шейдеров
Если антидетект говорит что ты на MacBook с M2, а WebGL Renderer отдаёт Intel UHD — это мгновенный палёж. Параметры должны быть согласованы
AudioContext — ещё один уровень. Web Audio API генерирует аудиосигнал и обрабатывает его через OscillatorNode и DynamicsCompressorNode. Результат зависит от аудио-подсистемы и отличается между устройствами. Менее популярный чем Canvas, но некоторые антифрод-системы его проверяют
TLS-фингерпринт — до JavaScript
Вот это то что ломает многим игру. Определение происходит ещё до того как загрузился HTML — на уровне TLS-хендшейка
Когда браузер подключается по HTTPS, он отправляет Client Hello с набором cipher suites, расширениями, поддерживаемыми кривыми и версиями TLS. Всё это хешируется в JA3-отпечаток (или новый JA4)
У настоящего Chrome 131 свой JA3. У Firefox 128 — свой. А у форкнутого Chromium, который лежит в основе антидетекта — третий. Потому что при сборке меняется бинарник, а с ним поведение TLS-стека
Cloudflare держит базу JA3-хешей. Если User-Agent говорит "Chrome 131", а JA3 не совпадает с эталонным для этой версии — бот. Блок
Chrome 110+ и Firefox 114+ начали рандомизировать порядок TLS-расширений в каждом соединении. Это усложнило JA3-фингерпринтинг. В ответ появился JA4 от FoxIO — он устойчив к рандомизации и учитывает ALPN и QUIC
Топовые антидетекты (Multilogin, Linken Sphere) используют нативные сетевые стеки браузера или мимикрируют TLS-хендшейк Chrome/Firefox. Бюджетные — нет, и это видно
Что именно подменяет антидетект
Полный список параметров которые спуфит нормальный антидетект-браузер:
Код:
User-Agent + Sec-CH-UA (Client Hints)
Разрешение экрана, глубина цвета, devicePixelRatio
Часовой пояс + локаль + языки
Canvas fingerprint
WebGL Vendor / Renderer + extensions
AudioContext
Количество ядер CPU (navigator.hardwareConcurrency)
Объём памяти (navigator.deviceMemory)
Тачскрин (navigator.maxTouchPoints)
Список шрифтов
Медиа-устройства (navigator.mediaDevices)
ClientRects
WebRTC (локальные IP)
Battery API
Geolocation
Каждый из этих параметров — отдельный канал утечки. Но главное не подмена сама по себе, а согласованность. Если профиль говорит "Windows 11, Chrome 131, RTX 4070, 16 ядер, 32 ГБ RAM, разрешение 2560x1440" — все параметры должны соответствовать друг другу и быть реалистичными для такой конфигурации
Как антидетекты палятся
CreepJS — открытый инструмент для обнаружения подмен. Проверяет прототипы JavaScript-объектов и ловит "prototype lies" — попытки перехватить стандартные API. Если navigator.hardwareConcurrency возвращает 8, но Object.getOwnPropertyDescriptor показывает что getter подменён — антидетект спалился
В тестах 2025 года CreepJS ловил Selenium и Playwright с 100% точностью. С антидетект-браузерами сложнее, но дешёвые решения тоже попадаются
Другие способы обнаружения:
- Несогласованность параметров — профиль "iPhone", но navigator.platform отдаёт "Win32"
- TLS/User-Agent mismatch — JA3 не соответствует заявленному браузеру
- Нереалистичное железо — WebGL renderer "GTX 1060" + 32 ядра CPU + 2 ГБ RAM
- Стабильность Canvas — каждый раз разный хеш, хотя у реального юзера он стабилен
- Отсутствие "грязи" — нет истории, нет кук, нет закладок. Свежий профиль подозрителен
- Поведенческий анализ — движения мыши слишком ровные, клики слишком точные, скроллинг равномерный. AI-системы антифрода это ловят
IPhey — ещё один чекер. В тестах 2025 года Dolphin Anty был обнаружен через IPhey. Это не значит что браузер плохой — но показывает что идеальной подмены не существует
Кто на рынке
Не реклама, просто факты по основным игрокам
Multilogin — один из старейших. Два движка: Mimic (Chromium) и Stealthfox (Firefox). Самый мощный API для автоматизации (Selenium, Puppeteer, Playwright). Дорогой — от 99 евро/мес. Сильная сторона — TLS-фингерпринт максимально близок к оригинальному браузеру
Dolphin Anty — популярен в арбитраже. Есть бесплатный тариф на 10 профилей. Удобный интерфейс, быстрый старт. Слабое место — в тестах обнаруживался через IPhey и fingerprint.com
GoLogin — единственный с полноценным Android-приложением и облачной версией. Работает на Windows, macOS, Linux. Недорогой. Подходит для начинающих
Linken Sphere — долгая история, начинал как инструмент для кардинга. Есть бесплатный план. Хорошее соотношение цена/функционал. Активно развивается
Octo Browser — относительно новый, но быстро растёт. Делает упор на стабильность фингерпринта между сессиями
Все они на базе Chromium (Multilogin дополнительно Firefox). Принципиальных архитектурных различий между ними мало. Разница — в качестве подмены TLS, в согласованности параметров, в обновлениях под свежие версии Chrome
Где предел
В 2026 году фингерпринтинг вышел на четыре уровня:
1. Транспортный — TLS/JA3/JA4, HTTP/2 фреймы, порядок заголовков
2. Браузерный — User-Agent, Client Hints, navigator.*
3. JavaScript API — Canvas, WebGL, Audio, Fonts, ClientRects
4. Поведенческий — движения мыши, скорость печати, паттерны скроллинга
Каждый уровень перекрёстно проверяет остальные. Антидетект может идеально подменить JavaScript API, но если TLS-хендшейк не совпадает — всё рассыпается
AI-детекторы антифрода анализируют поведение в реальном времени. Не только что ты кликаешь, но как — скорость, траектория, паузы. Это следующий фронт, и пока ни один антидетект не решает его полноценно
Общее правило: антидетект + резидентные/мобильные прокси + прогретые профили с историей + естественное поведение. Четыре компонента. Уберёшь один — остальные не спасут
Вопросы по теме кидайте в ветку, разберём
