Browser Signals Lite

Browser Signals Lite: признаки автоматизации без fingerprint-surveillance

Небольшой асинхронный browser probe дополняет серверные данные: прямые automation markers, согласованность UA/platform/language, screen/viewport/device-сигналы и ограниченную fingerprint stability. Payload версионирован, ограничен по схеме и по умолчанию работает в COLLECT/SHADOW.

Versioned probeReplay protectionPrivacy boundedCOLLECT / SHADOW
Browser probe v1
Probesigned token · nonce
VALID
webdriverdirect automation marker
TRUE
Header consistencyUA / Sec-CH-UA
MATCH
Risk contributionwith confidence
MEDIUM
webdriver=false означает только отсутствие прямого marker, а не «человек подтверждён».
Browser evidence

Браузер — дополнительный источник evidence, а не универсальный детектор

AntiPF не должен агрессивно перечислять расширения, хранить raw canvas/audio или создавать максимально уникальный fingerprint. Цель — получить небольшой набор coarse и consistency-сигналов, пригодных для корреляции с серверным поведением.

DIRECT

Automation markers

navigator.webdriver и доказуемые runtime artifacts могут давать medium/high evidence.

CONSISTENCY

Согласованность окружения

UA, platform, language, screen, viewport, touch, coarse hardware и WebGL сравниваются как context.

PRIVACY

Ограниченный fingerprint

Хранится pseudonymous normalized hash и агрегаты, а не полный сырой вектор устройства.

Архитектура

Неблокирующий probe с fail-neutral поведением

Visitor request не должен ждать Browser subsystem. Endpoint имеет signed token, nonce, expiry, schema allowlist, body limit и replay protection.

01
Issue token

Сервер выдаёт короткоживущий server-bound telemetry token.

02
Async probe

JS собирает только разрешённые versioned поля.

03
Validate

Endpoint проверяет content-type, размер, nonce, expiry и schema.

04
Normalize

Сырые значения переводятся в coarse classes/consistency signals.

05
Aggregate

Fingerprint stability/churn считается по bounded history.

06
Risk

Сигналы идут в SHADOW и Decision Trace с confidence.

Fail-neutral. JS blocked, CSP blocked, timeout, old probe или DB lock не должны превращаться в 500 или автоматический bot verdict.
Что умеет модуль

Какие группы сигналов используются

Ни один weak/medium browser-signal сам по себе не должен автоматически давать permanent BLOCK.

01

Automation markers

webdriver, generic framework/runtime artifacts и headless anomalies — только там, где признак доказуем.

Подробнее →
02

Header consistency

UA, Accept-Language, Sec-Fetch и Client Hints сверяются без жёстких предположений о версиях браузера.

Подробнее →
03

Screen / device consistency

Screen, viewport, DPR bucket, orientation, touch, memory/concurrency buckets.

Подробнее →
04

WebGL context

Normalized vendor/renderer class; отсутствие WebGL не равно боту.

Подробнее →
05

Fingerprint stability

Churn и population reuse как агрегированные сигналы только при достаточной выборке.

Подробнее →
06

JS execution evidence

Probe loaded/completed помогает контексту, но crawler/system clients исключаются из автоматического риска.

Подробнее →
Readiness & evidence

Отсутствие данных и аномалия — разные состояния

Если probe не выполнился, причина важна: privacy browser, CSP, crawler, JS off и реальная automation-сессия — разные ситуации.

READY
Probe работаетEndpoint и collector валидны, свежесть текущая.
CSP_BLOCKED
Probe заблокирован политикойHealth DEGRADED, но visitor не становится «ботом».
NO_DATA
Telemetry отсутствуетНет достаточного browser evidence.
COLLECT
Только сборДанные сохраняются и трассируются без enforcement.
Практическое применение

Какие сценарии усиливает Browser Signals

Самая высокая ценность появляется при корреляции browser evidence с behavior, network и Challenge reputation.

ROTATION

IP/ASN rotation

Stable browser profile + похожее поведение + много сетевых переходов дают более полезный сигнал, чем смена IP сама по себе.

Связанный сценарий →
PARSING

Browser-based scraper

Медленный Chromium-парсер может пройти простой rate-limit, но оставить consistency/sequence evidence.

Связанный сценарий →
Границы

AntiPF не пытается «узнать человека по железу»

Device/browser признаки используются только как ограниченный risk context. Screen ≠ viewport, plugins=0, WebGL unavailable или отсутствие probe не считаются самостоятельным доказательством автоматизации.

FAQ

Вопросы про Browser Signals Lite

AntiPF определяет Selenium/Playwright/Puppeteer?

Прямые и generic automation markers могут учитываться. Название конкретного продукта нельзя утверждать, если найден только общий Chromium automation artifact.

Если plugins.length равен 0 — это бот?

Нет. Такой признак сам по себе нейтрален и встречается у privacy-клиентов и обычных конфигураций.

Что будет при отключённом JavaScript?

Серверные модули продолжают работать. Browser telemetry будет NO_DATA, а не автоматическим доказательством бота.

Отправляется ли fingerprint в облако?

Архитектура 10.050 не предусматривает отправку raw visitor fingerprint на Central; используются локальные bounded/pseudonymous данные.

Следующий шаг

Посмотрим, какие browser-сигналы полезны вашему сайту

Начнём с COLLECT/SHADOW и сравним browser evidence с реальными запросами, парсингом, рекламным трафиком или накруткой.