Objavljeno: 28.2.2017 | Avtor: Matej Huš | Monitor Marec 2017

Goli brez piškotkov

Namestili smo svežo kopijo operacijskega sistema in nov brskalnik ter se odpravili v internet. Brez dodatne programske opreme, brez vtičnikov in piškotkov bi pričakovali, da smo v njem brezimni in da nam spletne strani ne morejo slediti. Ne bi se mogli bolj motiti.

Sledenje prek spleta (web tracking) predstavlja ugotavljanje, ali se neki obiskovalec spletne strani vrača ali je na strani prvikrat. To pot se ne bomo ukvarjali z ugotavljanjem identitete tega obiskovalca, čeprav je mogoče tudi to. Zanima nas le, ali lahko uporabniku sledimo, četudi redno briše piškotke, menjava naslove IP in celo zamenja brskalnik. Izkazalo se je, da z zelo veliko verjetnostjo!

Nekaj značilnosti, ki jih UniqueMachine preveri za izračun enoličnega prstnega odtisa brskalnika.

Prva generacija sledenja je uporabljala identifikatorje, ki jih je obiskovalcu posredoval strežnik: piškotke. Še vedno se množično uporablja, saj je 100-odstotno enolična, obenem pa ima uporabnik nadzor, saj lahko piškotke zbriše. V spletni trgovini ali e-banki želimo, da nam stran sledi. Druga generacija je uporabljala identifikatorje, ki so del brskalnika: različica, nameščeni vtičniki in razširitve ipd. Ta dobro deluje, četudi pobrišemo piškotke, seveda pa nam ne more slediti v drug brskalnik. Poznamo tudi tretjo generacijo sledenja, ko poizkušamo obiskovalcem slediti tudi med različnimi napravami (osebni računalnik, pametni telefon, tablica), recimo z uporabo prikritih zvokov visokih frekvenc in mikrofonov.

Sledenje uporabnikom je kot vsaka tehnologija, ki jo lahko uporabimo v dobro ali v slabo. Koristna je pri preverjanju, ali je v spletno trgovino, elektronsko banko ali poštni predal prijavljen legitimen uporabnik. V tem primeru navadno rabi kot dodaten nadzor – če se prijavljamo z novega računalnika v čudnem časovnem pasu in z drugim jezikom, bo vstopna stran od nas zahtevala potrditev istovetnosti. Po drugi strani pa je sledenje sporno, kadar se uporablja za zbiranje podatkov o navadah uporabnikov, od koder lahko sledi ciljano oglaševanje ali pa celo prodaja podatkov. Napadalci pa lahko z analizo sistema pri sledenju tudi preverjajo, ali ima uporabnik nameščeno kakšno luknjičasto programsko opremo, in to izkoristijo za vdor.

Preizkusite se

Avtorji so praktični preizkus svoje tehnike postavili v internet: uniquemachine.org, kodo pa si lahko ogledate na github.com/Song-Li/cross browser/. Podobni strani, ki vam prav tako razkrijeta, kako enolično prepoznavni ste, sta še panopticlick.eff.org in amiunique.org.

Yinzhi Cao, Song Li in Erik Wijmans z Univerze Lehigh v Pensilvaniji so pokazali, kako je mogoče učinkovito izvesti sledenje generacije 2,5. Gre za sledenje uporabniku na istem računalniku, četudi uporablja različne brskalnike in iz njih briše vse prepoznave podatke (piškotke, trajne piškotke, vtičnike, razširitve, shranjena gesla itd.). Tudi v tem primeru je uporabnikom uspelo prepoznati z 99,24-odstotno uspešnostjo na istem brskalniku in s 83,24 odstotki med različnimi brskalniki. Svoj sistem so poimenovali UniqueMachine.

Trik je z modernimi funkcijami brskalnikov iz računalnika izvleči čim več podatkov o strojni opremi, ki niso odvisni od brskalnika. Medtem ko je računalnikov s štirimi jedri in nameščenim Windows 7 na tem svetu na milijone, se natančnost določitve z dodajanjem parametrov strmo povečuje. Pogledamo lahko še, katere pisave so nameščene, kako hitra je grafična kartica, kakšno zvočno kartico ima računalnik in marsikaj drugega.

Tako deluje tudi UniqueMachine. Ob obisku strani strežnik odjemalcu pošlje kup opravil, med njimi izris nekaterih značilnih krivulj, črt in objektov, ter pridobi čim več informacij o sistemu, kot so operacijski sistem, ločljivost zaslona, časovni pas. Odjemalec te zahteve izvede s klicem številnih specifičnih knjižnic API. Rezultate, ki so primerno obdelani – denimo izris slik je pretvorjen v zgoščeno vrednost (hash) – potem pošlje nazaj k strežniku. Iz tega izračuna enoličen 32 znakov dolg podpis.

In kaj vse opazuje UniqueMachine? Skupno spremlja 36 značilnosti, ki so neodvisne od brskalnika, in še nekaj odvisnih. Med njimi je nekaj starih: brskalnik (user agent), jezik, vtičniki, sprejem piškotkov, uporaba časovnega pasu, ločljivost, pisave, platforma, zastavica Do Not Track, WebGL, nameščen AdBlock itn. Nekatere od teh so morali nekoliko popraviti, denimo ločljivost. Ta podatek ni enoličen, saj je v nekaterih brskalnikih podana ločljivost odvisna od povečave (zoom) strani. Avtorji UniqueMachina pa so dodali analizo nekaterih novih značilnosti. To so, denimo, izris številnih struktur, ki jih opravita Canvas (2D) in WebGL, kodiranje in dekodiranje slik, podpora vnosu nelatiničnih znakov in še nekaj drugih, večinoma povezanih z grafično kartico.

Pa deluje? Odvisno. Na 12 let starem prenosniku z 32-bitno linuxno distribucijo Lubuntu in brskalnikom Pale Moon stran UniqueMachine.org ni delovala, ker ni podpiral WebGL. Na službenem Windows 7 pa smo UniqueMachine obiskali z Internet Explorerjem 11, Firefoxom, Chromom, Opero in Vivaldijem. Prstni odtis brskalnika je bil seveda različen, prstni odtis računalnika pa enak. In to čeprav na strani poleg rezultata piše v razvoju, ni dokončan. Kaj šele bo!

Tehnične podrobnosti so v članku Cao, Li, Wijmans: (Cross-)Browser Fingerprinting via OS and Hardware Level Features.

Naroči se na redna tedenska ali mesečna obvestila o novih prispevkih na naši spletni strani!

Komentirajo lahko le prijavljeni uporabniki

 
  • Polja označena z * je potrebno obvezno izpolniti
  • Pošlji