1. Що таке відбиток функцій HTML5?
Функції HTML5 відносяться до веб-API, доступних у сучасних браузерах, які забезпечують розширену інтерактивність, зберігання даних та фонову обробку. Приклади включають:
localStorage
&sessionStorage
IndexedDB
Web Workers
Service Workers
WebGL
,Canvas
,Web Audio API
Pointer Events
,Touch Events
Permissions API
,Notification API
Ці функції часто досліджуються для створення відбитка можливостей браузера — виявлення списків підтримки та поведінкових відповідей для визначення:
- Яку версію браузера використовує користувач
- Чи є браузер безголовим або підробленим (spoofed)
- Якщо функції відсутні, непослідовні або змінені
Багато платформ використовують скрипти або бібліотеки, такі як Modernizr, Bowser, або власну логіку виявлення API для профілювання функцій HTML5 та пошуку аномалій відбитків можливостей.
2. Як платформи виявляють відбитки функцій HTML5
Методи відбитків HTML5 зазвичай включають перевірку підтримки або поведінки ключових API за допомогою JavaScript. Цей вектор відбитків розкриває:
Підтримувані API:
- Чи може браузер запускати
Web Workers
? - Чи ввімкнено
IndexedDB
? - Чи виконуються анімації за допомогою
requestAnimationFrame
?
- Чи може браузер запускати
Поведінка API:
- Чи
localStorage.setItem()
поводиться нормально? - Чи
new Worker()
викликає помилку або успішно виконується безшумно?
- Чи
Дослідження функцій за допомогою синтетичного виконання:
- Платформи імітують виконання певних функцій та вимірюють результат, наприклад, як реагує
Canvas.toDataURL()
, або чи правильно працюєAudioContext
.
- Платформи імітують виконання певних функцій та вимірюють результат, наприклад, як реагує
Недоступні або приховані функції:
- Платформи виявлення перевіряють несподівану відсутність функцій (наприклад, відсутність
Canvas
у повністю непомітних стелс-профілях) або несумісні особливості.
- Платформи виявлення перевіряють несподівану відсутність функцій (наприклад, відсутність
Дозволи та відповіді API:
- Дослідження таких функцій, як
window.Notification
абоnavigator.permissions.query({ name: 'geolocation' })
, допомагає виявляти ботів та емульовані браузерні пристрої.
- Дослідження таких функцій, як
Якщо виявлено невідповідність можливостей HTML5 — наприклад, підтримку WebGL
без підтримки Service Workers
— системи відбитків можуть зробити висновок, що браузер емулюється, змінений або знаходиться під контролем системи захисту від відбитків.
3. Як FlashID контролює відбитки функцій HTML5
FlashID забезпечує точний контроль над тим, як API HTML5 поводяться та відображаються на веб-сторінці. Це включає ввімкнення, вимкнення або імітацію поведінки цих функцій для кожного сеансу браузера.
Ключові можливості, які пропонує FlashID, включають:
Двигун флагування поведінки:
- FlashID підтримує послідовні булеві прапорці функцій HTML5 для всіх екземплярів браузера, забезпечуючи надійну відповідність списків підроблених функцій.
Увімкнення/вимкнення функцій за профілем:
- Ви можете вмикати або вимикати API HTML5, такі як
IndexedDB
,Service Workers
таNotifications
, імітуючи конкретні типи користувачів браузера або рівні можливостей.
- Ви можете вмикати або вимикати API HTML5, такі як
Імітація поведінки API:
- Навіть якщо реальна функція вимкнена (наприклад,
localStorage
недоступний), FlashID може імітувати її поведінку в пам’яті, щоб симулювати стійкість — обманюючи скрипти виявлення.
- Навіть якщо реальна функція вимкнена (наприклад,
Підробка властивостей API:
- FlashID може підробляти значення, що повертаються ключовими функціями HTML5, наприклад, робити так, щоб виклик
Notification.requestPermission()
завжди повертав'granted'
, або повертати динамічні значення для кожного профілю.
- FlashID може підробляти значення, що повертаються ключовими функціями HTML5, наприклад, робити так, щоб виклик
Сертифікація інтерфейсу подій:
- Системи відбитків HTML5 часто досліджують наявність подій (наприклад,
TouchEvent
,PointerEvent
). FlashID безпечно імітує доступні інтерфейси подій, щоб відповідати очікуваній поведінці профілю.
- Системи відбитків HTML5 часто досліджують наявність подій (наприклад,
Послідовна симуляція з реалістичними API:
- FlashID забезпечує структуроване синхронізацію, посилання на API та угоди про виклики — щоб переконатися, що імітовані API поводяться синхронно з реальними очікуваннями браузера.
Інтелектуальний білий список функцій:
- FlashID запобігає витоку певних ризикованих функцій, таких як
WebGL
у профілях, схожих на iOS, або вимикає експериментальні API, які приваблюють просунуті скрипти відбитків.
- FlashID запобігає витоку певних ризикованих функцій, таких як
Обробляючи виявлення функцій HTML5 як з позиції можливостей, так і з позиції поведінки, FlashID гарантує, що профілі браузерів залишаються надійними та послідовними — захищаючи ідентичність користувача від зв’язування або виявлення.
Вам також може сподобатися