Нууц систем болон хөтчийг таних шинэ техникийг нэвтрүүлсэн

Өмнө нь халдлагын аргыг боловсруулдгаараа алдартай Грацын Техникийн Их Сургуулийн хэсэг судлаачид (Австри) MDS, NetSpectre и Шидэх алх, таггүй Хөтчийн яг хувилбар, ашигласан үйлдлийн систем, CPU-ийн бүтэц, далд танихтай тэмцэх нэмэлт хэрэгслүүдийг тодорхойлох боломжийг олгодог гуравдагч талын сувгийн шинжилгээний шинэ аргын тухай мэдээлэл.

Эдгээр параметрүүдийг тодорхойлохын тулд судлаачдын бэлтгэсэн JavaScript кодыг хөтөч дээр ажиллуулахад хангалттай. Практикт энэ аргыг хэрэглэгчийг шууд бусаар таних нэмэлт эх сурвалж болохоос гадна үйлдлийн систем, архитектур, хөтчийг харгалзан мөлжлөгийг зорилтот түвшинд ашиглах системийн орчны параметрүүдийг тодорхойлоход ашиглаж болно. Энэ арга нь Tor Browser гэх мэт далд танихыг хориглох механизмыг хэрэгжүүлдэг хөтчүүдийг ашиглахад үр дүнтэй байдаг. Аргын хэрэгжилт бүхий эх кодын прототип Нийтлэгдсэн MIT лицензийн дагуу.

Тодорхойлолтыг JIT, CPU болон санах ойн хуваарилах механизмын шинж чанараас хамааран өөр өөр хөтчүүдийн онцлог шинж чанартай JavaScript-ийн шинж чанарын төлөв байдал, үйлдлийн гүйцэтгэлийн хугацааны шинж чанарыг тодорхойлох үндсэн дээр хийгддэг. Шинж чанарыг тодорхойлох нь JavaScript-ээс хандах боломжтой бүх объектын жагсаалтыг гаргах замаар хийгддэг. Үүнээс харахад объектын тоо нь хөтөчийн хөдөлгүүр болон түүний хувилбартай шууд хамааралтай байдаг.

функц getProperties(o) {
var үр дүн = [];
байхад (o!== null) {
үр дүн = үр дүн.concat(Reflect.ownKeys(o));
o = Object.getPrototypeOf(o);
}
буцаах үр дүн;
}

Жишээлбэл, Firefox-д зориулсан баримт бичигт 2247 шинж чанарыг дэмждэг гэж заасан бол тодорхойлсон шинж чанаруудын бодит тоо, түүний дотор баримтжуулаагүй нь 15709 (Tor Browser-д - 15639), Chrome-д 2698 шинж чанарыг зарласан боловч бодит байдал дээр 13570 шинж чанарыг санал болгож байна. Android-д зориулсан Chrome - 13119). Шинж чанаруудын тоо, утга нь хөтчийн хувилбараас хөтчийн хувилбар болон өөр өөр үйлдлийн системд өөр өөр байдаг.

OS-ийн төрлийг тодорхойлохын тулд тодорхой шинж чанаруудын утга, оршихуйг ашиглаж болно. Жишээ нь, Kubuntu-д window.innerWidth шинж чанарыг 1000, Windows 10-д 1001 гэж тохируулсан байна. window.navigator.activeVRDisplays шинж чанар нь Windows дээр байдаг ч Linux дээр байхгүй. Андройдын хувьд олон тусгай дуудлага хийх боломжтой боловч window.SharedWorker нь тийм биш юм. Үйлдлийн системийг тодорхойлохын тулд төлөв байдал нь драйверуудаас хамаардаг WebGL параметрүүдийн шинжилгээг ашиглахыг санал болгож байна. Нэмж дурдахад, WEBGL_debug_renderer_infoextension руу залгаснаар үйлдлийн систем бүрт өөр өөр байдаг OpenGL rendering engine-ийн талаар мэдээлэл авах боломжтой.

CPU-ийг тодорхойлохын тулд янз бүрийн ердийн кодын блокуудын гүйцэтгэлийн хугацааны зөрүүний үнэлгээг ашигладаг бөгөөд боловсруулалт нь JIT-ийн зан төлөвийг харгалзан зааврын багцын архитектураас хамаардаг (хэчнээн CPU регистр ашиглахыг тодорхойлдог) ямар тохиолдолд JIT нь оновчлол, өргөтгөсөн зааврыг ашиглан үр ашигтай код үүсгэх ба хэзээ ). Санах ойн хуваарилалтын систем ба үйлдлийн системийн төрлийг тодорхойлохын тулд янз бүрийн бүтцэд санах ой хуваарилах хугацааны зөрүүг хэмждэг бөгөөд үүнийг санах ойн блокуудын хэмжээг шүүж болно.

Скриптийг гүйцэтгэх явцад тодорхойлсон параметрүүдийг өмнө нь туршиж үзсэн орчин дахь жишиг утгуудтай харьцуулдаг. Туршилтын явцад боловсруулсан техник нь 40 өөр туршилтын орчныг үнэн зөв тодорхойлох боломжтой болсон бөгөөд ашигласан хөтөчийн хувилбарууд, CPU үйлдвэрлэгч, ашигласан үйлдлийн систем, бодит техник хангамж эсвэл виртуал машин дээр ажиллаж байгааг тодорхойлох боломжтой болсон.

Хөтчийн нэмэлтүүд, тэр ч байтугай хувийн нэмэлт тохиргоо, түүний дотор далд таних аргууд эсвэл хувийн хайлтын горимын үйл ажиллагааг хаахад зориулагдсан нэмэлтүүдийг тусад нь тодорхойлох боломжтой гэдгийг тэмдэглэв. Санал болгож буй аргын хүрээнд ийм нэмэлтүүд нь таних мэдээллийн өөр эх сурвалж болдог. Нэмэлтийг нэмэлтээр оруулсан анхны орчны параметрүүдийн гажуудлыг үнэлэх замаар тодорхойлно.

Бусад таних аргууд нь шууд бус өгөгдлийг харгалзан үзэх явдал юм Дэлгэцийн нягтрал, дэмжигдсэн MIME төрлүүдийн жагсаалт, толгой хэсэгт тодорхой параметрүүд (HTTP / 2 и HTTPS), суулгасан шинжилгээ залгаасууд болон фонтууд, видео картуудад зориулсан тодорхой вэб API-ийн бэлэн байдал Онцлог WebGL ашиглан дүрслэх ба Canvas, заль мэх CSS-тэй ажиллах, ажиллах онцлог шинж чанаруудын дүн шинжилгээ хулгана и гар.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх