PerimeterX теперь HUMAN, и вот что проверяет его защита от ботов
Вместо страницы кнопка «Press and hold», а cookie на сайте начинаются с _px. Это Bot Defender от HUMAN, продукт, который раньше продавался как PerimeterX. Компании объединились под именем HUMAN, а документация HUMAN по Bot Defender по-прежнему перечисляет cookie _px.
Документация HUMAN описывает движущиеся части довольно подробно. Мы идём по ней и не пишем того, чего в ней нет.
Три части: сенсор, детектор, enforcer
HUMAN делит Bot Defender на три компонента, и понимание того, с каким из них вы имеете дело, объясняет почти всё, что вы видите.
Сенсор (Sensor) - JavaScript-фрагмент, встроенный в страницы сайта. По словам HUMAN, он собирает данные об устройстве, поведении пользователя и сетевой активности и отправляет их в HUMAN.
Детектор (Detector) работает в облаке HUMAN. Он оценивает данные сенсора и enforcer в реальном времени с помощью машинного обучения и поведенческой аналитики и возвращает в браузер оценку риска в защищённом зашифрованном токене.
Enforcer - модуль, который сайт ставит в веб-приложение, балансировщик или CDN. Именно он пропускает, блокирует или выдаёт испытание. Команду для каждого запроса он читает из cookie. Если cookie нет, она истекла или не прошла проверку, enforcer перед ответом делает синхронный серверный запрос к HUMAN.
Сама оценка в справочнике API HUMAN описана как шкала 0-100, где 0 - не бот, а 100 - бот. Действие, возвращаемое вместе с ней, одно из четырёх: a пропустить, c CAPTCHA, b жёсткая блокировка, r ограничение частоты.
Зачем нужны cookie _px
HUMAN публикует полную таблицу cookie и ключей хранилища, которые использует Bot Defender. Чаще всего вы увидите эти:
| Имя | Описание HUMAN | Срок жизни |
|---|---|---|
_px, _px2, _px3 |
поддерживают сессию с HUMAN | 5,5 минуты |
_pxvid |
обнаружение в браузере, отличие людей от ботов | 1 год |
_pxhd |
серверное обнаружение | 1 год |
_pxde |
обогащение данных, например статус доступа | 5 дней |
_pxff_* |
флаги функций обнаружения в браузере | 1 день |
pxcts |
сессия между вкладками | сессия |
Кроме того, HUMAN указывает px_hvd в localStorage как хешированный идентификатор посетителя и px_fp в sessionStorage как резервное хранилище данных отпечатка.
Для автоматизации важна ещё одна строка с той же страницы. По умолчанию cookie HUMAN ставятся без HttpOnly, потому что сенсору нужен к ним доступ. Сенсор на странице сам их читает и пишет.
Испытание press and hold
Human Challenge - замена CAPTCHA от HUMAN. Документация описывает кнопку, которую нужно нажать, удерживать и отпустить, чтобы доказать, что вы не бот, и добавляет, что время удержания меняется и понять, сколько держать, может только человек. Сайты настраивают его вид и параметры, а развёртывается оно через enforcer.
Смотрите на испытание как на результат, а не как на препятствие. К моменту его появления enforcer уже решил, что ваша оценка слишком высока, чтобы пропустить молча, и решённое испытание не меняет причину.
Playwright и PerimeterX
У скрипта на Playwright, который сработал один раз, а потом начал получать испытание, есть несколько объяснений прямо в документации HUMAN:
- Сессионная cookie короткая.
_px3и её соседи живут 5,5 минуты. Скрипт, простоявший дольше, возвращается с истёкшим токеном, и enforcer вынужден снова спрашивать серверы HUMAN. - У свежего контекста нет истории.
_pxvidи_pxhdрассчитаны на год. Запуск Playwright, который каждый раз начинает с нового пустого контекста, их выбрасывает и всегда остаётся первым визитом. Как их сохранять, описано в статье про постоянный контекст Playwright. - Блокировка сенсора заметна. Правила перехвата, отбрасывающие сторонние скрипты или вырезающие cookie, не дают сенсору записать свои cookie, и enforcer, не найдя cookie, переходит к серверному запросу.
- Общая банка cookie связывает личности.
_pxvidсуществует, чтобы узнавать браузер. Скопированная в несколько аккаунтов, она сообщает HUMAN, что это один браузер.
Для законной работы с несколькими аккаунтами ожидание простое: у каждой личности своё состояние _px, накопленное её собственными визитами, с адреса выхода, который ей подходит.
Когда мы не ответ
Если вы тестируете собственный сайт за HUMAN, правильное решение - разрешить свой тестовый трафик в настройках самого сайта, а не браузер, похожий на покупателя. Если у вас один аккаунт, правильный инструмент - обычный браузер. А если enforcer отвечает b с первого запроса в любом браузере, проблема в адресе или в самом запросе, и браузер её не решит. AntiBrow даёт каждой личности отдельный локальный профиль со своими cookie и отпечатком на уровне движка, а локальные профили бесплатны и не ограничены. Это закрывает состояние на личность, но не репутацию.
Проверьте сами
Откройте DevTools на защищённом сайте, перейдите в Application и найдите _px3 и _pxvid. Посмотрите срок действия каждой, закройте браузер, снова откройте тот же профиль и проверьте, на месте ли _pxvid. Как это соотносится с другими вендорами, разобрано в статьях как антибот-системы решают, что вы бот и как Cloudflare решает вас заблокировать.
Источники, проверены 2026-10-22: cookie и веб-хранилище HUMAN, обзор Bot Defender, справочник Risk API, Human Challenge, SecurityWeek о слиянии.
Попробуйте на бесплатном тарифе.
Неограниченное число локальных профилей, без карты. Проверьте результат детекторами сами.