Перейти до вмісту
Реклама AccsZone — 购买账号, 即时发货, 24/7客服

Глосарій

Client hints

Client hints — це HTTP-заголовки та JavaScript API, які замінюють частину рядка user agent структурованими відомостями про браузер і пристрій.

Що таке client hints

Client hints — новіший спосіб, яким браузер описує себе. Замість того щоб пакувати все в рядок user agent, браузер за замовчуванням надсилає кілька невеликих заголовків, а решту — на запит. Sec-CH-UA перелічує бренди браузера та їхні мажорні версії, Sec-CH-UA-Mobile каже, чи це мобільний браузер, а Sec-CH-UA-Platform називає операційну систему. Сервер, якому потрібно більше, може через заголовок відповіді Accept-CH запросити повну версію, версію платформи, архітектуру процесора, модель пристрою або розрядність, і браузер надішле їх у наступних запитах. Ті самі дані доступні скриптам через navigator.userAgentData.

Браузери на базі Chromium надсилають client hints; Firefox і Safari наразі — ні, і сама їхня відсутність є підказкою про те, який рушій використовується.

Чому це важливо

Client hints запровадили, щоб зменшити пасивний фінгерпринтинг: значення з низькою ентропією надсилаються за замовчуванням, а детальні — лише коли сайт їх запитує. На практиці вони створили друге джерело істини, яке антифрод-системи порівнюють із першим. Якщо рядок user agent каже «Chrome 130 на Windows», а Sec-CH-UA-Platform каже "Linux", або Sec-CH-UA перелічує іншу версію, браузер було модифіковано. Антидетект-інструменти, які підміняють лише рядок user agent або лише JavaScript-бік, але не заголовки, створюють саме цю суперечність.

Значення з високою ентропією до того ж точні. Sec-CH-UA-Full-Version-List і Sec-CH-UA-Platform-Version можуть визначити конкретну збірку браузера та випуск операційної системи, що додає до відбитка браузера, коли сайт їх запитує.

Як перевірити

Інструмент HTTP-заголовки показує заголовки Sec-CH-UA*, які надіслав ваш браузер, поруч із заголовком User-Agent, щоб ви одразу побачили, чи вони узгоджуються. Інструмент user agent розбирає рядок, а сторінка відбитка браузера зчитує navigator.userAgentData і порівнює його із заголовками та платформою JavaScript.

Як зберегти узгодженість

Якщо змінюєте user agent, змінюйте разом із ним і client hints, включно зі значеннями, які браузер надсилає лише на запит. Антидетект-браузери, що будують профіль на основі реальної версії браузера, роблять це автоматично; ручна підміна у звичайному браузері — зазвичай ні. Перевіряйте знову після оновлення браузера, бо список брендів і номери версій змінюються з кожним випуском.

Поширена хибна думка

Вимкнення client hints — не нейтральний вибір. Браузер на Chromium, який не надсилає жодного, виглядає як модифікований, адже стандартний завжди надсилає три заголовки за замовчуванням.

Схожі інструменти