Identifikācija, analizējot ārējos protokolu apstrādātājus pārlūkprogrammā

Fingerprintjs bibliotēkas izstrādātāji, kas ļauj ģenerēt pārlūkprogrammas identifikatorus pasīvā režīmā, pamatojoties uz tādiem netiešiem līdzekļiem kā ekrāna izšķirtspēja, WebGL līdzekļi, instalēto spraudņu un fontu saraksti, iepazīstināja ar jaunu identifikācijas metodi, kuras pamatā ir tipisko instalēto lietojumprogrammu novērtējums. lietotājam un pārbaudot atbalstu pārlūkprogrammas papildu protokolu apdarinātājos. Skripta kods ar metodes ieviešanu tiek publicēts saskaņā ar MIT licenci.

Pārbaude tiek veikta, pamatojoties uz analīzi par apstrādātāju saistīšanu ar 32 populārām lietojumprogrammām. Piemēram, nosakot URL shēmas apstrādātāju telegram://, slack:// un skype:// klātbūtni pārlūkprogrammā, var secināt, ka sistēmai ir telegrammas, slack un skype lietojumprogrammas, un izmantot šo informāciju kā zīmi. ģenerējot sistēmas identifikatoru. Tā kā apdarinātāju saraksts ir vienāds visām sistēmas pārlūkprogrammām, identifikators nemainās, mainot pārlūkprogrammas, un to var izmantot pārlūkprogrammās Chrome, Firefox, Safari, Brave, Yandex Browser, Edge un pat Tor Browser.

Metode ļauj ģenerēt 32 bitu identifikatorus, t.i. atsevišķi neļauj sasniegt lielu precizitāti, bet ir jēga kā papildu funkcija kombinācijā ar citiem parametriem. Manāms metodes trūkums ir identifikācijas mēģinājuma redzamība lietotājam - ģenerējot identifikatoru piedāvātajā demonstrācijas lapā, apakšējā labajā stūrī atveras neliels, bet skaidri pamanāms logs, kurā apstrādātāji ritina diezgan ilgu laiku. Šis trūkums neparādās Tor Browser, kurā identifikatoru var aprēķināt nemanot.

Lai noteiktu lietojumprogrammas klātbūtni, skripts uznirstošajā logā mēģina atvērt saiti, kas saistīta ar ārēju apdarinātāju, pēc tam pārlūkprogramma parāda dialoglodziņu, kurā tiek lūgts atvērt saturu saistītajā lietojumprogrammā, ja pārbaudāmā lietojumprogramma ir klāt vai parāda kļūdas lapu, ja lietojumprogramma nav sistēmā. Secīgi veicot tipisku ārējo apdarinātāju meklēšanu un kļūdu atdeves analīzi, var secināt, ka sistēma satur testējamās programmas.

Operētājsistēmā Chrome 90 operētājsistēmai Linux šī metode nedarbojās, un pārlūkprogrammā tika parādīts standarta darbības apstiprinājuma dialoglodziņš visiem mēģinājumiem pārbaudīt apdarinātāju (Chrome operētājsistēmai Windows un macOS šī metode darbojas). Operētājsistēmā Firefox 88 for Linux gan parastajā režīmā, gan inkognito režīmā skripts noteica instalēto papildu lietojumprogrammu klātbūtni no saraksta, un identifikācijas precizitāte tika novērtēta 99.87% (35 līdzīgas atbilstības no 26 tūkstošiem veikto testu). Tor pārlūkprogrammā, kas darbojas tajā pašā sistēmā, tika ģenerēts identifikators, kas atbilda Firefox testam.

Interesanti, ka Tor Browser papildu aizsardzība izspēlēja nežēlīgu joku un pārvērtās par iespēju veikt identifikāciju lietotājam nepamanot. Tā kā Tor pārlūkā tika atspējoti apstiprinājuma dialoglodziņi ārējo apdarinātāju lietošanai, izrādījās, ka verifikācijas pieprasījumus var atvērt iframe, nevis uznirstošajā logā (lai nošķirtu apdarinātāju esamību un neesamību, jāievēro vienas izcelsmes noteikumi bloķēt piekļuvi lapām ar kļūdām un atļaut piekļuvi about:blank pages). Aizsardzības pret plūdiem dēļ pārbaude Tor Browser aizņem ievērojami ilgāku laiku (10 sekundes vienai lietojumprogrammai).

Avots: opennet.ru

Pievieno komentāru