Tunnistaminen analysoimalla selaimen ulkoisia protokollakäsittelijöitä

Fingerprintjs-kirjaston, jonka avulla voit luoda selaintunnisteita passiivisessa tilassa epäsuorien ominaisuuksien, kuten näytön resoluution, WebGL-ominaisuuksien, asennettujen lisäosien ja fonttien luetteloiden, kehittäjät esittelivät uuden tunnistusmenetelmän, joka perustuu tyypillisten asennettujen sovellusten arviointiin. käyttäjässä ja tarkistamalla selaimen lisäprotokollakäsittelijöiden tuki. Skriptikoodi menetelmän toteutuksella on julkaistu MIT-lisenssillä.

Tarkastus perustuu analyysiin käsittelijöiden sitoutumisesta 32 suosittuun sovellukseen. Esimerkiksi määrittämällä URL-järjestelmän käsittelijöiden telegram://, slack:// ja skype:// läsnäolon selaimessa, voit päätellä, että järjestelmässä on sähke-, slack- ja skype-sovelluksia, ja käyttää näitä tietoja merkkinä. luodessaan järjestelmätunnistetta. Koska käsittelijöiden luettelo on sama kaikille järjestelmän selaimille, tunniste ei muutu selainta vaihdettaessa ja sitä voidaan käyttää Chromessa, Firefoxissa, Safarissa, Bravessa, Yandex Browserissa, Edgessä ja jopa Tor-selaimessa.

Menetelmällä voit luoda 32-bittisiä tunnisteita, ts. Yksittäin ei mahdollista saavuttaa suurta tarkkuutta, mutta se on järkevä lisäominaisuus yhdessä muiden parametrien kanssa. Menetelmän havaittava haittapuoli on tunnistusyrityksen näkyvyys käyttäjälle - ehdotetulle esittelysivulle tunnistetta luotaessa oikeaan alakulmaan avautuu pieni mutta selvästi havaittava ikkuna, jossa käsittelijät rullaavat melko pitkään. Tämä haitta ei näy Tor-selaimessa, jossa tunniste voidaan laskea huomaamatta.

Sovelluksen olemassaolon määrittämiseksi komentosarja yrittää avata ulkoiseen käsittelijään liittyvän linkin ponnahdusikkunassa, minkä jälkeen selain näyttää valintaikkunan, jossa sinua pyydetään avaamaan liitetyn sovelluksen sisältö, jos tarkistettava sovellus on tai näyttää virhesivun, jos sovellus ei ole järjestelmässä. Tyypillisten ulkoisten käsittelijöiden peräkkäisen haun ja virheiden palautusten analysoinnin avulla voidaan päätellä, että järjestelmä sisältää testattavat ohjelmat.

Chrome 90 for Linux -käyttöjärjestelmässä menetelmä ei toiminut ja selain näytti normaalin toiminnan vahvistusikkunan kaikissa yrityksissä tarkistaa käsittelijä (Chrome for Windowsissa ja macOS:ssä menetelmä toimii). Firefox 88 for Linux, sekä normaalitilassa että incognito-tilassa, komentosarja havaitsi asennettujen lisäsovellusten olemassaolon luettelosta, ja tunnistustarkkuuden arvioitiin olevan 99.87 % (35 vastaavaa osumaa 26 tuhannesta suoritetusta testistä). Samassa järjestelmässä toimivassa Tor-selaimessa luotiin tunniste, joka vastasi Firefoxin testiä.

Mielenkiintoista on, että Tor-selaimen lisäsuojaus oli julma vitsi ja muuttui mahdollisuudeksi suorittaa tunnistaminen käyttäjän huomaamatta. Koska Tor-selaimen ulkoisten käsittelijöiden käytön vahvistusikkunat poistettiin käytöstä, kävi ilmi, että vahvistuspyynnöt voidaan avata iframe-kehyksessä eikä ponnahdusikkunassa (käsittelijöiden läsnäolon ja poissaolon erottamiseksi saman alkuperän säännöt estää pääsyn sivuille, joissa on virheitä, ja salli pääsyn about:blank pages). Tulvasuojan vuoksi Tor-selaimen tarkistaminen kestää huomattavasti kauemmin (10 sekuntia sovellusta kohden).

Lähde: opennet.ru

Lisää kommentti