Brugersystemidentifikationsmetode baseret på GPU-oplysninger

Forskere fra Ben-Gurion University (Israel), University of Lille (Frankrig) og University of Adelaide (Australien) har udviklet en ny teknik til at identificere brugerenheder ved at detektere GPU-driftsparametre i en webbrowser. Metoden kaldes "Drawn Apart" og er baseret på brugen af ​​WebGL til at opnå en GPU-performanceprofil, som markant kan forbedre nøjagtigheden af ​​passive sporingsmetoder, der fungerer uden brug af cookies og uden at gemme en identifikator på brugerens system.

Metoder, der tager højde for funktionerne ved rendering, GPU, grafikstak og drivere ved identifikation, blev brugt tidligere, men de var begrænset til muligheden for kun at adskille enheder på niveau med forskellige modeller af videokort og GPU'er, dvs. kun kunne bruges som en yderligere faktor for at øge sandsynligheden for identifikation. Nøgletræk ved den nye "Drawn Apart"-metode er, at den ikke begrænser sig til at adskille forskellige GPU-modeller, men forsøger at identificere forskelle mellem identiske GPU'er af samme model på grund af heterogeniteten i fremstillingsprocessen af ​​chips designet til massivt parallel edb. Det bemærkes, at variationer, der opstår under produktionsprocessen, gør det muligt at danne ikke-gentagne aftryk for de samme enhedsmodeller.

Brugersystemidentifikationsmetode baseret på GPU-oplysninger

Det viste sig, at disse forskelle kan identificeres ved at tælle antallet af udførelsesenheder og analysere deres ydeevne i GPU'en. Kontrol baseret på et sæt trigonometriske funktioner, logiske operationer og flydende kommaberegninger blev brugt som primitiver til at identificere forskellige GPU-modeller. For at identificere forskelle i de samme GPU'er blev antallet af samtidig eksekverende tråde ved udførelse af vertex shaders vurderet. Det antages, at den detekterede effekt er forårsaget af forskelle i temperaturforhold og strømforbrug for forskellige forekomster af chips (tidligere blev en lignende effekt demonstreret for CPU'er - identiske processorer viste forskelligt strømforbrug, når de udførte den samme kode).

Fordi operationer gennem WebGL udføres asynkront, kan JavaScript API performance.now() ikke bruges direkte til at måle deres eksekveringstid, så tre tricks er blevet foreslået til at måle tiden:

  • onscreen — gengivelse af scenen i et HTML-lærred, måling af responstiden for tilbagekaldsfunktionen, indstillet via Window.requestAnimationFrame API og kaldet efter gengivelsen er fuldført.
  • offscreen - brug af en arbejder og gengivelse af scenen til et OffscreenCanvas-objekt, måling af udførelsestiden for convertToBlob-kommandoen.
  • GPU - Tegn til et OffscreenCanvas-objekt, men brug en WebGL-leveret timer til at måle tid, der tager højde for varigheden af ​​et sæt kommandoer på GPU-siden.

Under ID-oprettelsesprocessen udføres 50 tests på hver enhed, der hver dækker 176 målinger af 16 forskellige karakteristika. Et eksperiment, der indsamlede oplysninger om 2500 enheder med 1605 forskellige GPU'er, viste en 67% stigning i effektiviteten af ​​kombinerede identifikationsmetoder, når der blev tilføjet Drawn Apart-understøttelse. Især gav den kombinerede FP-STALKER-metode identifikation inden for 17.5 dage i gennemsnit, og kombineret med Drawn Apart steg identifikationen til 28 dage.

Brugersystemidentifikationsmetode baseret på GPU-oplysninger

  • Separationsnøjagtigheden af ​​10 systemer med Intel i5-3470-chips (GEN 3 Ivy Bridge) og Intel HD Graphics 2500 GPU i skærmtesten var 93 %, og i offscreen-testen var den 36.3 %.
  • For 10 Intel i5-10500-systemer (GEN 10 Comet Lake) med et NVIDIA GTX1650-skærmkort var nøjagtigheden 70 % og 95.8 %.
  • Til 15 Intel i5-8500-systemer (GEN 8 Coffee Lake) med Intel UHD Graphics 630 GPU - 42% og 55%.
  • Til 23 Intel i5-4590 (GEN 4 Haswell) systemer med Intel HD Graphics 4600 GPU – 32.7 % og 63.7 %.
  • For seks Samsung Galaxy S20/S20 Ultra-smartphones med Mali-G77 MP11 GPU var identifikationsnøjagtigheden i skærmtesten 92.7 %, og for Samsung Galaxy S9/S9+-smartphones med Mali-G72 MP18 var den 54.3 %.

Brugersystemidentifikationsmetode baseret på GPU-oplysninger

Det bemærkes, at nøjagtigheden blev påvirket af temperaturen på GPU'en, og for nogle enheder førte genstart af systemet til en forvrængning af identifikatoren. Ved anvendelse af metoden i kombination med andre indirekte identifikationsmetoder kan nøjagtigheden øges væsentligt. De planlægger også at øge nøjagtigheden ved at bruge compute shaders efter stabilisering af den nye WebGPU API.

Intel, ARM, Google, Khronos, Mozilla og Brave blev underrettet om problemet tilbage i 2020, men detaljer om metoden afsløres først nu. Forskerne publicerede også arbejdseksempler skrevet i JavaScript og GLSL, som kan fungere med og uden at vise information på skærmen. Også for systemer baseret på GPU Intel GEN 3/4/8/10 er datasæt blevet offentliggjort til klassificering af udtrukket information i maskinlæringssystemer.

Kilde: opennet.ru

Tilføj en kommentar