1. Що таке Client Hints у формуванні відбитків браузера?
Client Hints (CH) — це механізм на основі HTTP, який дозволяє веб-сайтам запитувати конкретні атрибути пристрою та браузера безпосередньо від клієнта, доповнюючи (або замінюючи) традиційний розбір рядка User-Agent.
Оскільки відбулося поступове скасування повних рядків User-Agent у Chrome, Firefox та Edge, Client Hints стали основним джерелом відбитків, розкриваючи такі дані, як:
- Модель та бренд пристрою (
Sec-CH-UA-Model
,Sec-CH-UA-Platform
) - Версія та постачальник браузера (
Sec-CH-UA
,Sec-CH-UA-Full-Version-List
) - Розміри екрана (
Sec-CH-Viewport-Width
,Sec-CH-Width
) - Бажана мова та кодування (
Sec-CH-Lang
,Sec-CH-Prefers-Reduced-Motion
) - Статус апаратного забезпечення (
Sec-CH-Save-Data
,Sec-CH-DPR
для щільності пікселів дисплея)
На відміну від User-Agent, Client Hints вимагають явного дозволу сервера (через заголовок Accept-CH
) перед тим, як браузер їх надсилає — проте багато скриптів, що порушують конфіденційність, примушують їх надсилати за допомогою JavaScript або трюків з iframe.
2. Як платформи виявляють та використовують Client Hints для формування відбитків
Сучасні системи виявлення ботів та шахрайства активно досліджують Client Hints для створення високоефективних відбитків, перевіряючи такі аномалії, як:
Невідповідності версій
- Невідповідність рядків
Sec-CH-UA
таUser-Agent
- Неможливі комбінації браузера/ОС (наприклад, Chrome 120 на Windows 7)
- Невідповідність рядків
Атаки за часом заголовків
- Виявлення затриманих або відсутніх заголовків (ознака підробки проміжного програмного забезпечення)
- Порівняння дозволів
Accept-CH
між сесіями
Кореляція апаратного/програмного забезпечення
Sec-CH-UA-Model
протиnavigator.hardwareConcurrency
Sec-CH-DPR
протиwindow.devicePixelRatio
Примусове вилучення Client Hints
- Використання
<iframe>
абоfetch()
зimportance: 'high'
для обходу обмежень конфіденційності - Логування підказок за замовчуванням проти перевизначених для виявлення середовищ віртуальних машин/Docker
- Використання
Client Hints особливо небезпечні для анонімності, оскільки вони обходять традиційні інструменти підробки User-Agent — вимагаючи глибокої інтеграції з браузером для переконливої маніпуляції.
3. Як FlashID контролює відбитки Client Hints
FlashID надає користувачам детальний контроль над заголовками Client Hints, забезпечуючи, що кожен профіль браузера: ✔️ Надсилає лише дозволені підказки (відповідно до профілю його відбитка) ✔️ Підтримує між-API узгодженість (наприклад, JS проти HTTP-заголовків) ✔️ Блокує примусове вилучення підказок за допомогою маскування дозволів
Ключові функції підробки включають:
➠ 1. Білий список Client Hints
- Вибір того, які заголовки
Sec-CH-*
розкриваються для кожного профілю - Імітація легітимного узгодження підказок за допомогою
Accept-CH
таCritical-CH
➠ 2. Динамічна генерація заголовків
- Автоматична генерація рядків
Sec-CH-UA-*
, що відповідають версії браузера, ОС та типу пристрою - Синхронізація
Sec-CH-Viewport-Width
з фактичними розмірами вікна (при зміні розміру)
➠ 3. Захист від виявлення
- Блокування примусового вилучення підказок за допомогою ін’єкції JS/iframe
- Імітація природних затримок надсилання заголовків (~100-300 мс) для уникнення перевірок часу
➠ 4. Вирівнювання апаратного/програмного забезпечення
- Забезпечення узгодженості між:
Sec-CH-DPR
↔devicePixelRatio
Sec-CH-UA-Model
↔navigator.userAgentData
Sec-CH-Width
↔screen.width
Шляхом хірургічного перевизначення Client Hints на мережевому рівні, FlashID долає формування відбитків нового покоління, дозволяючи безпечне використання кількох облікових записів на платформах, які покладаються на ці сигнали для оцінки шахрайства.
Вам також може сподобатися