Gipaila ang usa ka bag-ong teknik alang sa tinago nga sistema ug pag-ila sa browser

Usa ka grupo sa mga tigdukiduki gikan sa Technical University of Graz (Austria), nga nailhan kaniadto sa pagpalambo sa mga pamaagi sa pag-atake MDS, NetSpectre ΠΈ Throwammer, walay tabon Ang kasayuran bahin sa usa ka bag-ong pamaagi sa pag-analisar sa channel sa ikatulo nga partido nga nagtugot kanimo nga mahibal-an ang eksaktong bersyon sa browser, ang operating system nga gigamit, ang arkitektura sa CPU ug ang paggamit sa mga add-on aron mapugngan ang tinago nga pagkilala.

Aron mahibal-an kini nga mga parameter, igo na ang pagpadagan sa JavaScript code nga giandam sa mga tigdukiduki sa browser. Sa praktis, ang pamaagi mahimong gamiton dili lamang ingon nga usa ka dugang nga tinubdan alang sa dili direkta nga pag-ila sa user, apan usab sa pagtino sa mga parameter sa sistema sa palibot alang sa target nga paggamit sa mga pagpahimulos, sa pagkuha sa asoy sa OS, arkitektura ug browser. Epektibo usab ang pamaagi kung mogamit mga browser nga nagpatuman sa mga mekanismo sa pag-block sa tinago nga pagkilala, sama sa Tor Browser. Ang prototype sa source code nga adunay pagpatuman sa pamaagi gimantala ubos sa lisensya sa MIT.

Ang determinasyon gihimo pinasukad sa pag-ila sa mga sumbanan sa estado sa kabtangan sa JavaScript nga mga kinaiya sa lainlaing mga browser ug mga kinaiya sa oras sa pagpatuman sa mga operasyon, depende sa mga kinaiya sa JIT, CPU ug mga mekanismo sa alokasyon sa memorya. Ang pagdeterminar sa mga kabtangan gihimo pinaagi sa paghimo og lista sa tanang butang nga ma-access gikan sa JavaScript. Ingon nga kini nahimo, ang gidaghanon sa mga butang direkta nga may kalabutan sa browser engine ug sa bersyon niini.

function getProperties(o) {
var resulta = [];
samtang (o ! == null) {
resulta = resulta.concat(Reflect.ownKeys(o));
o = Object.getPrototypeOf(o);
}
sangputanan sa pagbalik;
}

Pananglitan, alang sa Firefox ang dokumentasyon nag-ingon nga suporta alang sa 2247 nga mga kabtangan, samtang ang aktwal nga gidaghanon sa gihubit nga mga kabtangan, lakip ang mga wala'y dokumento, mao ang 15709 (sa Tor Browser - 15639), alang sa Chrome 2698 nga mga kabtangan gipahayag, apan sa pagkatinuod 13570 ang gitanyag (sa Chrome alang sa Android - 13119). Ang gidaghanon ug mga kantidad sa mga kabtangan magkalainlain gikan sa bersyon sa browser hangtod sa bersyon sa browser ug sa lainlaing mga operating system.

Ang mga kantidad ug presensya sa pipila nga mga kabtangan mahimong magamit aron mahibal-an ang klase sa OS. Pananglitan, sa Kubuntu ang window.innerWidth property gitakda sa 1000, ug sa Windows 10 gibutang kini sa 1001. Ang window.navigator.activeVRDisplays property anaa sa Windows, apan dili kini magamit sa Linux. Alang sa Android, daghang mga piho nga tawag ang gihatag, apan ang window.SharedWorker dili. Aron mahibal-an ang operating system, gisugyot usab nga gamiton ang pag-analisar sa mga parameter sa WebGL, nga ang estado nagdepende sa mga drayber. Dugang pa, ang pagtawag sa WEBGL_debug_renderer_infoextension nagtugot kanimo nga makakuha og impormasyon bahin sa OpenGL rendering engine, nga lahi sa matag operating system.

Aron mahibal-an ang CPU, gigamit ang usa ka pagsusi sa mga kalainan sa oras sa pagpatuman sa lainlaing mga tipikal nga bloke sa code, ang pagproseso niini nagdepende sa arkitektura sa set sa panudlo, nga gikonsiderar ang pamatasan sa JIT (gitino kung pila ang mga rehistro sa CPU ang gamiton. ug kung asa nga mga kaso ang JIT makamugna og episyente nga kodigo nga adunay mga pag-optimize ug ang paggamit sa gipalugway nga mga instruksyon, ug kung dili ). Aron mahibal-an ang tipo sa sistema sa alokasyon sa panumduman ug operating system, gisukod usab ang kalainan sa oras sa alokasyon sa memorya alang sa lainlaing mga istruktura, nga magamit sa paghukom sa gidak-on sa mga bloke sa memorya.

Ang mga parameter nga gitino sa panahon sa pagpatuman sa script gitandi sa mga reperensiya nga mga kantidad nga kasagaran alang sa nasulayan na nga mga palibot. Atol sa pagsulay, ang naugmad nga teknik nagpaposible sa tukma nga pag-ila sa 40 ka lainlaing mga palibot sa pagsulay, pag-ila sa mga bersyon sa mga browser nga gigamit, ang tiggama sa CPU, ang operating system nga gigamit, ug ang kamatuoran nga kini nagdagan sa tinuod nga hardware o sa usa ka virtual machine. .

Gilain, nahibal-an nga posible nga ipasabut ang mga add-on sa browser ug bisan ang indibidwal nga mga setting sa pagdugang, lakip ang mga add-on nga gilaraw aron babagan ang mga tinago nga pamaagi sa pag-ila o kalihokan sa pribado nga mode sa pag-browse. Sa konteksto sa gisugyot nga pamaagi, ang maong mga pagdugang nahimong laing tinubdan sa datos alang sa pag-ila. Ang mga pagdugang gitino pinaagi sa pagtimbang-timbang sa mga pagtuis sa mga parameter sa orihinal nga palibot nga gipaila sa mga pagdugang.

Ang ubang mga paagi sa pag-ila naglakip sa pagkonsiderar sa dili direkta nga datos sama sa resolusyon sa screen, lista sa gisuportahan nga tipo sa MIME, mga kapilian nga piho sa ulohan (HTTP / 2 ΠΈ https), pagtuki sa natukod mga plugin ug mga font, pagkaanaa sa pipila ka mga Web API nga espesipiko sa mga video card Features rendering gamit ang WebGL ug Canvas, pagmaniobra uban sa CSS, pagtuki sa mga bahin sa pagtrabaho uban sa ilaga ΠΈ usa ka keyboard.

Source: opennet.ru

Idugang sa usa ka comment