Каждая сборка проходит семь детекторов, и результаты лежат в продукте вместе с историей. Разбираем, что именно проверяет каждый, как читать вердикты и почему один из них считается вручную.
Последний прогон на движке 154.0.8037.58 дал оценку 100 из 100, ответили шесть весомых детекторов из шести. Вот что проверяет каждый:
| Детектор | Что проверяет | Вердикт последнего прогона |
|---|---|---|
| CreepJS | согласованность слепка, ложь между параметрами | ok · 0% headless, 0% stealth |
| iphey | целостность браузера, железа и сети | Trustworthy |
| bot.sannysoft | следы автоматизации, webdriver, headless | 0 проваленных, WebDriver отсутствует |
| Cloudflare | проходимость реальной защиты | челлендж пройден |
| TLS | отпечаток рукопожатия JA3/JA4 | JA4 t13d1517h2, семейство Chrome |
| WebRTC | утечка реального IP | утечек нет |
| pixelscan | согласованность экрана, гео и сети | снимается вручную |
Отпечаток TLS снимается до того, как загрузилась страница: порядок шифров и расширений в рукопожатии дает хэши JA3 и JA4. Они зависят от сетевого стека движка, поэтому браузер, который выдает себя за Chrome через User-Agent, ловится на первом же соединении. У нашего ядра на Chromium 154 рукопожатие дает t13d1517h2, штатное значение для этой версии Chrome. Для сравнения, ядро на Firefox дает t13d1617h2 и User-Agent с rv:152.0: цельная другая персона, а не Chrome с подмененной строкой.
Результат сканирования pixelscan не попадает в текст страницы. За минуту ожидания приходит только меню сайта и рекламные блоки, в которых слово automation встречается девять раз и ломает любой поиск по ключевым словам.
manual: скриншот снимается, в сводную оценку он не входит, вердикт ставит человек. Одно выдуманное число обесценило бы все остальные.Прогоны сохраняются с датой, номером профиля и результатом, включая неудачные. Красная строка полезнее зеленой: она показывает, какая сборка на каком детекторе споткнулась и что изменилось после обновления Chromium.
Пример из нашей же истории: число подсвеченных секций CreepJS упало с двух до одной после подключения набора устройств. Стенд зафиксировал это как улучшение автоматически. А упавшую вкладку iphey (страница тяжелая и падает и на голом ядре) стенд не считает провалом: детектор без ответа выпадает из оценки, а не обнуляет ее. Регрессионный контроль, которому не верят, хуже его отсутствия.
Без установки тест отпечатка снимает текущий браузер. В установленном продукте стенд открывает выбранные детекторы в свежих профилях и сохраняет реальный ответ каждого сайта:
Как детекторы связывают профили · Прокси, на которых виснет браузер