Fingerprinting przeglądarki

Web Workers a fingerprint

Web Workers (i Service Worker) uruchamiają JS poza oknem strony.

Definicja

Mają własne globalne środowisko: inny globalThis, własne API navigator/WebGL (np. przez OffscreenCanvas) i często osobną ścieżkę injectu. Jeśli maskowanie działa tylko w main world, worker staje się standardowym testem „pokaż prawdziwe wartości”.

Jak działa

Detektor tworzy Worker/blob URL, w środku odczytuje navigator, strefę, WebGL i odsyła wynik postMessage. Porównanie z oknem głównym ujawnia rozjazd. Service Worker ma dłuższy lifecycle — osobna decyzja pokrycia lub deny.

Przykład

falcon-core bez kodu Worker: w workerze navigator, OffscreenCanvas/WebGL i timezone pokazują hosta mimo „poprawnego” okna.

W Aion Surf

Falcon: P0 dla strefy w workerze, P1 dla navigator/WebGL. Cel — ten sam kontrakt profilu co w oknie. Bez procedur ukrywania workera przed konkretnym vendorem.

Jak robi to Falcon

Powiązane hasła

  • Limity maskowania (Falcon): Limity maskowania to jawny katalog miejsc, w których profil Falcona / Surfa nie gwarantuje pełnej spójności sygnałów albo świadomie wybiera kompromis (np. blokada WebRTC).
  • Strefa czasowa w JavaScript: Strefa czasowa w przeglądarce to zestaw API: IANA TZ z Intl.DateTimeFormat().resolvedOptions().timeZone, offset z Date.prototype.getTimezoneOffset() oraz lokalne składowe daty.
  • WebGL fingerprint: WebGL fingerprint zbiera parametry kontekstu WebGL/WebGL2: vendor, renderer, wersję GLSL, listę rozszerzeń, limity (MAX_TEXTURE_SIZE itd.) oraz czasem wynik renderu do canvas.
  • Spójność profilu (coherence): Spójność profilu (coherence) to zgodność wszystkich warstw tożsamości przeglądarki: UA/Client Hints, platforma, WebGL/GPU, czcionki, strefa czasowa, język, IP/ASN, TLS i zachowanie.

Źródła