Metoda identifikacije korisničkog sistema zasnovana na GPU informacijama

Istraživači sa Univerziteta Ben-Gurion (Izrael), Univerziteta u Lilu (Francuska) i Univerziteta Adelaide (Australija) razvili su novu tehniku ​​za identifikaciju korisničkih uređaja otkrivanjem radnih parametara GPU-a u web pretraživaču. Metoda se zove "Drawn Apart" i bazira se na upotrebi WebGL-a za dobijanje profila performansi GPU-a, što može značajno poboljšati tačnost pasivnih metoda praćenja koje rade bez upotrebe kolačića i bez pohranjivanja identifikatora na korisnikov sistem.

Ranije su korištene metode koje uzimaju u obzir karakteristike renderiranja, GPU-a, grafičkog steka i drajvera, ali su bile ograničene na mogućnost razdvajanja uređaja samo na nivou različitih modela video kartica i GPU-a, tj. može se koristiti samo kao dodatni faktor za povećanje vjerovatnoće identifikacije. Ključna karakteristika nove "Drawn Apart" metode je da se ne ograničava na odvajanje različitih GPU modela, već pokušava identificirati razlike između identičnih GPU-a istog modela zbog heterogenosti procesa proizvodnje čipova dizajniranih za masovno paralelno računarstvo. Primjećuje se da varijacije koje nastaju tokom procesa proizvodnje omogućavaju formiranje odljevaka koji se ne ponavljaju za iste modele uređaja.

Metoda identifikacije korisničkog sistema zasnovana na GPU informacijama

Ispostavilo se da se ove razlike mogu identifikovati prebrojavanjem broja izvršnih jedinica i analizom njihovih performansi u GPU-u. Provjere zasnovane na skupu trigonometrijskih funkcija, logičkih operacija i kalkulacija s pomičnim zarezom korištene su kao primitivi za identifikaciju različitih GPU modela. Da bi se identifikovale razlike u istim GPU-ovima, procenjen je broj istovremeno izvršavajućih niti prilikom izvršavanja vertex shadera. Pretpostavlja se da je otkriveni efekat uzrokovan razlikama u temperaturnim uslovima i potrošnji energije različitih instanci čipova (ranije je sličan efekat demonstriran za CPU - identični procesori su pokazali različitu potrošnju energije prilikom izvršavanja istog koda).

Budući da se operacije preko WebGL-a izvode asinhrono, JavaScript API performance.now() se ne može koristiti direktno za mjerenje vremena njihovog izvršenja, pa su predložena tri trika za mjerenje vremena:

  • na ekranu — prikazivanje scene u HTML platnu, mjerenje vremena odgovora funkcije povratnog poziva, postavljeno preko Window.requestAnimationFrame API-ja i pozvano nakon što je renderiranje završeno.
  • offscreen - korištenje radnika i renderiranje scene u objekt OffscreenCanvas, mjerenje vremena izvršenja naredbe convertToBlob.
  • GPU – Renderirajte objektu OffscreenCanvas, ali koristite tajmer koji pruža WebGL za mjerenje vremena, uzimajući u obzir trajanje izvođenja skupa naredbi na strani GPU-a.

Tokom procesa kreiranja ID-a, na svakom uređaju se izvodi 50 testova, od kojih svaki pokriva 176 mjerenja 16 različitih karakteristika. Eksperiment koji je prikupio informacije o 2500 uređaja sa 1605 različitih GPU-a pokazao je povećanje efikasnosti kombinovanih metoda identifikacije od 67% kada je dodana podrška Drawn Apart. Konkretno, kombinovana metoda FP-STALKER omogućila je identifikaciju u proseku u roku od 17.5 dana, a kada se kombinuje sa Drawn Apart, trajanje identifikacije se povećalo na 28 dana.

Metoda identifikacije korisničkog sistema zasnovana na GPU informacijama

  • Preciznost razdvajanja 10 sistema sa Intel i5-3470 čipovima (GEN 3 Ivy Bridge) i Intel HD Graphics 2500 GPU u onscreen testu je bila 93%, au offscreen testu 36.3%.
  • Za 10 Intel i5-10500 sistema (GEN 10 Comet Lake) sa NVIDIA GTX1650 video karticom, tačnost je bila 70% i 95.8%.
  • Za 15 Intel i5-8500 sistema (GEN 8 Coffee Lake) sa Intel UHD Graphics 630 GPU - 42% i 55%.
  • Za 23 Intel i5-4590 (GEN 4 Haswell) sistema sa Intel HD Graphics 4600 GPU - 32.7% i 63.7%.
  • Za šest Samsung Galaxy S20/S20 Ultra pametnih telefona sa Mali-G77 MP11 GPU-om, tačnost identifikacije na testu na ekranu bila je 92.7%, a za Samsung Galaxy S9/S9+ pametne telefone sa Mali-G72 MP18 54.3%.

Metoda identifikacije korisničkog sistema zasnovana na GPU informacijama

Napominje se da je na preciznost utjecala temperatura GPU-a, a za neke uređaje je ponovno pokretanje sistema dovelo do izobličenja identifikatora. Kada se metoda koristi u kombinaciji s drugim indirektnim metodama identifikacije, tačnost se može značajno povećati. Također planiraju povećati preciznost korištenjem kompjuterskih shadera nakon stabilizacije novog WebGPU API-ja.

Intel, ARM, Google, Khronos, Mozilla i Brave bili su obaviješteni o problemu još 2020. godine, ali detalji metode se otkrivaju tek sada. Istraživači su također objavili radne primjere napisane u JavaScript-u i GLSL-u koji mogu raditi sa i bez prikazivanja informacija na ekranu. Takođe, za sisteme zasnovane na GPU Intel GEN 3/4/8/10, objavljeni su skupovi podataka za klasifikaciju ekstrahovanih informacija u sistemima mašinskog učenja.

izvor: opennet.ru

Dodajte komentar