Slijede razlike između dviju inačica stranice.
| Starije izmjene na obje strane Starija izmjena Novija izmjena | Starija izmjena | ||
|
racfor_wiki:seminari2025:fb53909 [2026/01/30 19:34] Filip Borić [Dobra praksa] |
racfor_wiki:seminari2025:fb53909 [2026/01/30 19:38] (trenutno) Filip Borić [Dodatne metode stvaranja otiska i korištenje modela umjetne inteligencije za stvaranje otiska] |
||
|---|---|---|---|
| Redak 17: | Redak 17: | ||
| Svaki put kada korisnik otvori internetsku stranicu, njegov preglednik šalje osnovne informacije poslužitelju kako bi se stranica mogla prikazati. Te informacije uključuju podatke poput jezika preglednika, | Svaki put kada korisnik otvori internetsku stranicu, njegov preglednik šalje osnovne informacije poslužitelju kako bi se stranica mogla prikazati. Te informacije uključuju podatke poput jezika preglednika, | ||
| - | Na temelju prikupljenih podataka moguće je stvoriti otisak internetskog preglednika (engl. browser fingerprint), | + | Na temelju prikupljenih podataka moguće je stvoriti otisak internetskog preglednika (engl. |
| Budući da se dio podataka koje preglednik šalje poslužitelju koristi za pravilno prikazivanje internetskih stranica, razvoj metoda zaštite od stvaranja jedinstvenog otiska preglednika povijesno je predstavljao izazov. Metoda trebaju biti učinkovite u zaštiti privatnosti korisnika, a da pritome ne narušavaju funkcionalnost i korisničko iskustvo preglednika. | Budući da se dio podataka koje preglednik šalje poslužitelju koristi za pravilno prikazivanje internetskih stranica, razvoj metoda zaštite od stvaranja jedinstvenog otiska preglednika povijesno je predstavljao izazov. Metoda trebaju biti učinkovite u zaštiti privatnosti korisnika, a da pritome ne narušavaju funkcionalnost i korisničko iskustvo preglednika. | ||
| - | Browser fingerprinting prisutan je i dan danas na mnogim stranicama, uključujući popularne stranice i kompanije Youtube, Microsoft, eBay, Google ads servis i druge popularne domene [1]. Propisi poput GDPR-a (engl. General Data Protection Regulation) u Europskoj uniji štite korisnike od praćenja na internetu, primjerice putem kolačića [2], dok se browser fingerprinting također smatra oblikom obrade osobnih podataka. Zbog toga je za takve oblike praćenja potrebna valjana pravna osnova ili izričiti pristanak korisnika, no mnoge internetske stranice i servisi se tih zahtjeva ne pridržavaju u potpunosti. Među njima su oglašivačke mreže te servisi za prepoznavanje automatiziranih aktivnosti (botova), koji se često oslanjaju na tehnike poput browser fingerprintinga. Centar informacijske sigurnosti već od 2012. goidne upozorava korisnike interneta na browser fingerprinting i očekuje porast korištenja browser fingerprintinga s vremenom. Ta tvrdnja se pokazala točnom nakon što su, zbog uvođenja GDPR-a | + | Browser fingerprinting prisutan je i dan danas na mnogim stranicama, uključujući popularne stranice i kompanije Youtube, Microsoft, eBay, Google ads servis i druge popularne domene [1]. Propisi poput GDPR-a (engl. |
| U ovome radu bit će objašnjen način rada browser fingerprintinga, | U ovome radu bit će objašnjen način rada browser fingerprintinga, | ||
| Redak 27: | Redak 27: | ||
| ===== Otisak internetskog preglednika ===== | ===== Otisak internetskog preglednika ===== | ||
| - | **Otisak internetskog preglednika** je bilo koji skup informacija vezan za korisnikov uređaj i/ili preglednik, koje se prikupljaju tijekom pristupa internetskoj stranici. Te informacije omogućuju jednoznačnu identifikaciju korisnika u odnosu na druge korisnike. Stvaranje otiska internetskog preglednika (engl. Browser Fingerprinting) je tehnika praćenja korisnika bez stanja (engl. // | + | **Otisak internetskog preglednika** je bilo koji skup informacija vezan za korisnikov uređaj i/ili preglednik, koje se prikupljaju tijekom pristupa internetskoj stranici. Te informacije omogućuju jednoznačnu identifikaciju korisnika u odnosu na druge korisnike. Stvaranje otiska internetskog preglednika (engl. |
| Kolačići se, za razliku od toga, koriste kako bi internetske stranice mogle spremati male količine podataka koje preglednik kasnije koristi, primjerice za održavanje prijave korisnika ili spremanje stavki u košarici internetske trgovine. Budući da ovise o pohrani na korisničkom uređaju, mogu se jednostavno obrisati, blokirati ili ograničiti. | Kolačići se, za razliku od toga, koriste kako bi internetske stranice mogle spremati male količine podataka koje preglednik kasnije koristi, primjerice za održavanje prijave korisnika ili spremanje stavki u košarici internetske trgovine. Budući da ovise o pohrani na korisničkom uređaju, mogu se jednostavno obrisati, blokirati ili ograničiti. | ||
| Otiskom internetskog preglednika prikupljaju se informacije o inačici preglednika, | Otiskom internetskog preglednika prikupljaju se informacije o inačici preglednika, | ||
| Redak 46: | Redak 46: | ||
| 2. Karakteristike preglednika: | 2. Karakteristike preglednika: | ||
| - | • Detalji proširenja za preglednik (engl. //Browser Plugin Details//): U starijim inačicama preglednika koristili su se dodaci (engl. // | + | • Detalji proširenja za preglednik (engl. //Browser Plugin Details//): U starijim inačicama preglednika koristili su se dodaci (engl. // |
| • Pomak vremenske zone: Prikazuje razliku između korisnikove vremenske zone i koordiniranog svjetskog vremena. | • Pomak vremenske zone: Prikazuje razliku između korisnikove vremenske zone i koordiniranog svjetskog vremena. | ||
| Redak 54: | Redak 54: | ||
| • Dimenzije ekrana i dubina boje: Obuhvaćaju širinu i visinu zaslona, površinu prikaza unutar preglednika, | • Dimenzije ekrana i dubina boje: Obuhvaćaju širinu i visinu zaslona, površinu prikaza unutar preglednika, | ||
| - | • Status dozvola: Preko aplikacijskog sučelja dopuštenja (engl. Permissions API) saznaje se dozvoljeni su li kamera, mikrofon i lokacija | + | • Status dozvola: Preko aplikacijskog sučelja dopuštenja (engl. |
| • Podržani MIME tipovi i kodeci: Odnosi se na informacije o vrstama datoteka i multimedijskim kodecima koje preglednik može prikazati ili reproducirati. | • Podržani MIME tipovi i kodeci: Odnosi se na informacije o vrstama datoteka i multimedijskim kodecima koje preglednik može prikazati ili reproducirati. | ||
| Redak 84: | Redak 84: | ||
| ===== Metode stvaranja otiska ===== | ===== Metode stvaranja otiska ===== | ||
| - | Najranije metode za stvaranje otiska koristile su JavaScript aplikacijska sučelja za identificiranje korisnika. Neka od tih su navigator, screen, Plugin te mimeType objekti. Poznati eksperiment u području, Panopticlick [6] analizira informacije iz HTTP zaglavlja i JavaScript aplikacijskih sučelja. Kako se razvijaju internetski preglednici, | + | Najranije metode za stvaranje otiska koristile su JavaScript aplikacijska sučelja za identificiranje korisnika. Neka od tih su navigator, screen, Plugin te mimeType objekti. Poznati eksperiment u području, Panopticlick [6] analizira informacije iz HTTP zaglavlja i JavaScript aplikacijskih sučelja. Kako se razvijaju internetski preglednici, |
| Moderne stranice još uvijek koriste JavaScript aplikacijska sučelja, metode i svojstva kako bi stvarali otiske korisnika. Autori rada u kojem je predstavljen alat FP-Inspector [4], namijenjen automatskom otkrivanju fingerprinting skripti, izdvajaju sljedeće elemente kao najpouzdanije pokazatelje da se na nekoj stranici provodi izrada otiska internetskog preglednika. | Moderne stranice još uvijek koriste JavaScript aplikacijska sučelja, metode i svojstva kako bi stvarali otiske korisnika. Autori rada u kojem je predstavljen alat FP-Inspector [4], namijenjen automatskom otkrivanju fingerprinting skripti, izdvajaju sljedeće elemente kao najpouzdanije pokazatelje da se na nekoj stranici provodi izrada otiska internetskog preglednika. | ||
| Redak 93: | Redak 93: | ||
| Najčešća podjela metoda stvaranja otiska je na aktivne i pasivne metode. Aktivne metode ispituju putem JavaScript koda preglednik ili uređaj, a pasivne metode koriste informacije koje ionako dolaze u zahtjevima, najčešće kroz zaglavlja. U ranije spomenutom istraživanju vezanom uz FP‑Inspector [4], metode stvaranja otiska podijeljene su u dvije glavne kategorije, koje se dalje dijele na više podkategorija: | Najčešća podjela metoda stvaranja otiska je na aktivne i pasivne metode. Aktivne metode ispituju putem JavaScript koda preglednik ili uređaj, a pasivne metode koriste informacije koje ionako dolaze u zahtjevima, najčešće kroz zaglavlja. U ranije spomenutom istraživanju vezanom uz FP‑Inspector [4], metode stvaranja otiska podijeljene su u dvije glavne kategorije, koje se dalje dijele na više podkategorija: | ||
| - | 1. Stvaranje otiska provjeravanjem funkcionalnosti (engl. Functionality fingerprinting): | + | 1. Stvaranje otiska provjeravanjem funkcionalnosti (engl. |
| - | • Preko aplikacijskog sučelja dopuštenja (engl. Permissions API) provjerava se status i dopuštenja za aplikacijska sučelja obavijesti, geolokacije i kamere. Ovakva tehnika zove se otisak dopuštenja (engl. Permission fingerprinting). | + | • Preko aplikacijskog sučelja dopuštenja (engl. |
| - | • Preko sučelja za komuniciranje sa perifernom opremom spojenom na stroj saznaju se informacije koje se koriste za stvaranje otiska periferije (engl. Peripheral fingerprinting). Jedan od mogućih načina stvaranja takvog otiska je koristiti funkciju „getLayoutMap“ za dobivanje informacija o veličini, prisutnim tipkama i dodatnim informacijama o tipkovnici korisnika. | + | • Preko sučelja za komuniciranje sa perifernom opremom spojenom na stroj saznaju se informacije koje se koriste za stvaranje otiska periferije (engl. |
| - | • Preko aplikacijskih sučelja koje zamjenjuju funkcionalnosti čistog JavaScript koda moguće je saznati koji preglednik i inačicu preglednika korisnik koristi. Radni alat za audio (engl. AudioWorklet) implementiran je samo u preglednicima koji su bazirani na Chromium inačicama 66 i nadalje, a funkcije kao setTimeout i mozRTCSessionDescription su nadjačane u nekim preglednicima. PrivacyBadger proširenje za preglednike također nadjača neke funkcionalnosti. Sve te informacije mogu doprinijeti stvaranju otiska. | + | • Preko aplikacijskih sučelja koje zamjenjuju funkcionalnosti čistog JavaScript koda moguće je saznati koji preglednik i inačicu preglednika korisnik koristi. Radni alat za audio (engl. |
| 2. Algoritamsko stvaranje otiska: Tehnike koje algoritamski pregledavaju kako za određeni ulaz preglednik obrađuje dobivene informacije. | 2. Algoritamsko stvaranje otiska: Tehnike koje algoritamski pregledavaju kako za određeni ulaz preglednik obrađuje dobivene informacije. | ||
| - | • Stvaranje otiska mjerenjem vremena (engl. Timing Fingerprinting) tehnika je u kojoj je ključno aplikacijsko sučelje mjerenja performansi (engl. Performance API). Aplikacijsko sučelje nudi detaljne vremenske trenutke prilikom učitavanja resursa stranice, kao što su domainLookupStart, | + | • Stvaranje otiska mjerenjem vremena (engl. |
| - | • Stvaranje otiska animacijama (engl. Animation fingerprinting) pomoću funkcionalnosti kao requestAnimationFrame računaju frekvenciju prikaza okvira (engl. framerate) prilikom prikazivanja sadržaja u pregledniku. Često se ta informacija koristi kako bi se saznala frekvencija osvježavanja ekrana korisnikovog stroja. | + | • Stvaranje otiska animacijama (engl. |
| • Stvaranje otiska putem aplikacijskih sučelja za zvuk je moguće korištenjem proizvedenih zvučnih signala sa AudioContext aplikacijskim sučeljem. Postoje razlike kako se ti signali proizvode na različitim preglednicima, | • Stvaranje otiska putem aplikacijskih sučelja za zvuk je moguće korištenjem proizvedenih zvučnih signala sa AudioContext aplikacijskim sučeljem. Postoje razlike kako se ti signali proizvode na različitim preglednicima, | ||
| Redak 117: | Redak 117: | ||
| - | PingLoc prototipni sustav [7] razvili su istraživači iz Hong Konga, a sustav uspijeva zaobići velik broj obrambenih metoda protiv stvaranja otiska internetskog preglednika. Kako se sve više preglednika tijekom vremena počinje aktivno boriti protiv prikupljanja otisaka, postupno ograničavaju količinu dostupnih podataka o pregledniku koji se mogu dohvatiti putem skripti. Zbog toga su istraživači željeli pronaći metodu koje nije ograničena postojećim metodama zaštite. Glavna ideja metode je korištenje fizičkog vremenskog kašnjenja između korisnikovog preglednika i jednog ili više poslužitelja kako bi saznali korisnikov otisak lokacije za konstrukciju profila korisnika. Za tu su se metodu odlučili zato što je fizičku poziciju korisnika mnogo teže lažirati ili njome manipulirati u odnosu na druge podatke koje sustavi za praćenje obično prikupljaju. Osim toga, ta informacija ne ovisi o samom pregledniku, | + | PingLoc prototipni sustav [7] razvili su istraživači iz Hong Konga, a sustav uspijeva zaobići velik broj obrambenih metoda protiv stvaranja otiska internetskog preglednika. Kako se sve više preglednika tijekom vremena počinje aktivno boriti protiv prikupljanja otisaka, postupno ograničavaju količinu dostupnih podataka o pregledniku koji se mogu dohvatiti putem skripti. Zbog toga su istraživači željeli pronaći metodu koje nije ograničena postojećim metodama zaštite. Glavna ideja metode je korištenje fizičkog vremenskog kašnjenja između korisnikovog preglednika i jednog ili više poslužitelja kako bi saznali korisnikov otisak lokacije za konstrukciju profila korisnika. Za tu su se metodu odlučili zato što je fizičku poziciju korisnika mnogo teže lažirati ili njome manipulirati u odnosu na druge podatke koje sustavi za praćenje obično prikupljaju. Osim toga, ta informacija ne ovisi o samom pregledniku, |
| ==== Browser Fingerprint Recognition Model ==== | ==== Browser Fingerprint Recognition Model ==== | ||
| - | Model za prepoznavanje otiska internetskog preglednika (engl. Browser Fingerprint Recognition Model) razvili su 2020. godine istraživači iz Beijinga [8], s ciljem prepoznavanja manjih promjena otiska kroz vrijeme. Razvijen je kao nastavak prijašnjih metoda stvaranja otiska. Prikuplja informacije o pregledniku i stanju računala iz JavaScript koda prisutnom na posjećenoj stranici. Kombinira prošle tehnike praćenja pomoću kolačića i stvaranja otiska putem aplikacijskog sučelja Canvas, zajedno sa informacijama o IP adresi korisnika. Autori navode kako također koriste informaciju o tome je li korisnik dopustio korištenje kolačića na stranici, zajedno i s već zastarjelom opcijom DNT zaglavlja (engl. Do Not Track). Svaka prikupljena informacija nosi određenu težinu koja određuje njezin doprinos ukupnom otisku, uzimajući u obzir i sadržaj same informacije. Koriste uspoređivanje otisaka, pri čemu, ovisno o količini informacija koje su dovoljno slične, primjenjuju različite postupke za nastavak rada. U slučajevima kada provjera dviju vrijednosti otisaka ne pokazuje preklapanje, | + | Model za prepoznavanje otiska internetskog preglednika (engl. |
| {{ : | {{ : | ||
| Redak 139: | Redak 139: | ||
| Umjetna inteligencija sve je prisutnija u svakodnevnom životu, u znanstvenim istraživanjima i u specijaliziranim primjenama. Metode strojnog učenja, dubokog učenja te veliki jezični modeli doživjeli su izniman razvoj i široku primjenu, a mnogi znanstvenici istražuju i njihove moguće primjene u području stvaranja otiska internetskog preglednika. | Umjetna inteligencija sve je prisutnija u svakodnevnom životu, u znanstvenim istraživanjima i u specijaliziranim primjenama. Metode strojnog učenja, dubokog učenja te veliki jezični modeli doživjeli su izniman razvoj i široku primjenu, a mnogi znanstvenici istražuju i njihove moguće primjene u području stvaranja otiska internetskog preglednika. | ||
| - | Istraživači iz Shanghai-ja 2021. istražuju primjenu nenadziranog učenja zajedno s autoenkoderima i postepenim grupiranjem za identifikaciju otiska preglednika [10]. Autoenkoder stvara latentni prikaz (engl. embedding) iz sirovih značajki otiska za sažimanje informacije, | + | Istraživači iz Shanghai-ja 2021. istražuju primjenu nenadziranog učenja zajedno s autoenkoderima i postepenim grupiranjem za identifikaciju otiska preglednika [10]. Autoenkoder stvara latentni prikaz (engl. |
| U istraživanju iz 2024. znanstvenici iz Wuhan-a koriste konvolucijske neuronske mreže kako bi odredili pripadaju li dva različita otiska istom korisniku [12]. Otisci internetskih preglednika modeliraju se kao strukturirani vektori značajki te se pretvaraju u pogodniji oblik za obradu konvolucijskim neuronskim mrežama. Model umjetne inteligencije sposoban je naučiti koje su promjene u otisku s vremenom normalne, a koje promjene su dovoljno značajne da upućuju na novog korisnika. | U istraživanju iz 2024. znanstvenici iz Wuhan-a koriste konvolucijske neuronske mreže kako bi odredili pripadaju li dva različita otiska istom korisniku [12]. Otisci internetskih preglednika modeliraju se kao strukturirani vektori značajki te se pretvaraju u pogodniji oblik za obradu konvolucijskim neuronskim mrežama. Model umjetne inteligencije sposoban je naučiti koje su promjene u otisku s vremenom normalne, a koje promjene su dovoljno značajne da upućuju na novog korisnika. | ||
| Redak 154: | Redak 154: | ||
| ==== EssentialFP ==== | ==== EssentialFP ==== | ||
| - | Istraživači iz Beča nastoje razviti pouzdaniju metodu prepoznavanja skripti za stvaranje otiska od uobičajenih heurističkih tehnika ili filtriranja pomoću liste domena ili skripti [13]. Proces stvaranja otiska promatraju kao prikupljanje informacija iz velikog broja različitih aplikacijskih sučelja preglednika te slanje tih prikupljenih informacija kroz mrežne zahtjeve. Tijek informacija smatraju ključnim elementom za uspješno prepoznavanje skripti za stvaranje otiska, jer upravo način na koji se podaci prikupljaju i šalju može otkriti da skripta radi fingerprinting. Stvorili su poseban preglednik EssentialFP, | + | Istraživači iz Beča nastoje razviti pouzdaniju metodu prepoznavanja skripti za stvaranje otiska od uobičajenih heurističkih tehnika ili filtriranja pomoću liste domena ili skripti [13]. Proces stvaranja otiska promatraju kao prikupljanje informacija iz velikog broja različitih aplikacijskih sučelja preglednika te slanje tih prikupljenih informacija kroz mrežne zahtjeve. Tijek informacija smatraju ključnim elementom za uspješno prepoznavanje skripti za stvaranje otiska, jer upravo način na koji se podaci prikupljaju i šalju može otkriti da skripta radi fingerprinting. Stvorili su poseban preglednik EssentialFP, |
| ===== Dobra praksa ===== | ===== Dobra praksa ===== | ||
| Redak 160: | Redak 160: | ||
| Postoji više metoda za smanjenje izloženosti tehnikama stvaranja otiska preglednika. Budući da i sama upotreba zaštitnih mjera može postati dodatni izvor podataka za stvaranje otiska, važno je pažljivo odabrati tehnike koje će se koristiti. Korisnici trebaju odlučiti koliko im je važna funkcionalnost svih stranica te koliko im je bitno da je preglednik i dalje prilagodljiv njihovim željama putem raznih proširenja i dodataka. Glavna ideja dobrih zaštita jest biti dovoljno sličan drugim korisnicima, | Postoji više metoda za smanjenje izloženosti tehnikama stvaranja otiska preglednika. Budući da i sama upotreba zaštitnih mjera može postati dodatni izvor podataka za stvaranje otiska, važno je pažljivo odabrati tehnike koje će se koristiti. Korisnici trebaju odlučiti koliko im je važna funkcionalnost svih stranica te koliko im je bitno da je preglednik i dalje prilagodljiv njihovim željama putem raznih proširenja i dodataka. Glavna ideja dobrih zaštita jest biti dovoljno sličan drugim korisnicima, | ||
| Korištenje Tor preglednika (ili alternativno Brave preglednika) bez proširenja smatra se najrealističnijim načinom zaštite, jer će postojati više sličnih korisnika, dok Tor blokira većinu tehnika prikupljanja detaljnih informacija o korisniku i pregledniku. Za uobičajene preglednike kao Firefox, koji već provode djelomičnu zaštitu, korisno je koristiti alate kao što su Privacy Badger, | Korištenje Tor preglednika (ili alternativno Brave preglednika) bez proširenja smatra se najrealističnijim načinom zaštite, jer će postojati više sličnih korisnika, dok Tor blokira većinu tehnika prikupljanja detaljnih informacija o korisniku i pregledniku. Za uobičajene preglednike kao Firefox, koji već provode djelomičnu zaštitu, korisno je koristiti alate kao što su Privacy Badger, | ||
| - | ===== Poglavlje ... ===== | ||
| ===== Zaključak ===== | ===== Zaključak ===== | ||
| + | |||
| + | U ovom radu prikazane su najvažnije metode otiskivanja preglednika te načini njihovog otkrivanja i sprječavanja. Otiskivanje je i dalje prisutno na velikom broju stranica i predstavlja značajan problem za privatnost korisnika, posebno zato što ne ovisi o kolačićima i teško ga je izbjeći. Suvremene tehnike koriste JavaScript aplikacijska sučelja, mjerenje performansi i modele strojnog učenja, što im omogućuje prikupljanje detaljnijih i stabilnijih otisaka nego prije. | ||
| + | |||
| + | Prikazane su i metode koje pokušavaju smanjiti količinu dostupnih informacija ili prepoznati skripte koje stvaraju otiske. Sustavi kao FP‑Inspector i EssentialFP pokazuju da je moguće pratiti način na koji skripte rade i otkriti pokušaje prikupljanja otisaka. S druge strane, preglednici i proširenja ograničavaju određene funkcionalnosti ili standardiziraju vrijednosti kako bi korisnike učinili manje prepoznatljivima. | ||
| + | |||
| + | Umjetna inteligencija sve se više koristi i kod stvaranja i kod otkrivanja otisaka, što pokazuje da se ovo područje i dalje brzo razvija. Budući da ne postoji potpuno učinkovita zaštita, smanjenje izloženosti moguće je korištenjem postojećih mehanizama, uz kompromis između privatnosti i funkcionalnosti. | ||
| + | |||
| + | S obzirom na to da se metode otiskivanja stalno usavršavaju, | ||
| ===== Literatura ===== | ===== Literatura ===== | ||