Анализ логов показывает: один User-Agent сам по себе ничего не решает. Фильтры сверяют связку признаков — UA, viewport, language, time zone, touch support, DPR, canvas, WebGL, шрифты, поведение скролла. Если строка UA кричит «iPhone», а десктопный стек отдает 1920×1080, mousemove и отсутствие touch-событий, отпечаток разваливается за один запрос.
Проверка цепочки прохождения запроса начинается с согласованности слоями. Для мобильного профиля должны совпадать:
— модель устройства и браузерный UA;
— ширина/высота экрана, DPR, orientation;
— Accept-Language, часовой пояс и гео IP;
— заголовки Sec-CH-UA и реальный набор поддерживаемых API.
Любой конфликт между HTTP-уровнем и JS-отпечатком — это не «мелочь», а триггер для скоринга.
Разберем техническую составляющую реализации. Если нужен стабильный профиль, подменяют не только UA, но и окружение целиком: корректный proxy по гео, чистый cookie jar, изоляция профиля, фиксация fingerprint-параметров на уровне браузерного контейнера. На практике лучше один раз собрать консистентный стек, чем бесконечно «докручивать» отдельные поля. Иначе backend видит не пользователя, а набор плохо склеенных костылей.
Для верификации результата делайте контрольный прогон: сравните сетевые заголовки, JS-метрики и внешний вид отпечатка в нескольких источниках. Если один и тот же профиль стабильно дает одинаковый fingerprint, а поведенческие сигналы не прыгают, конфиг готов, можно деплоить. Статистика верифицирована, расхождения исключены.
Клоакинг: разборы
@cloaking_lab_arb
User-Agent и мобильный fingerprint: где система палит подмену
Этот пост опубликован в Telegram-канале Клоакинг: разборы. Подписаться можно по ссылке: @cloaking_lab_arb.