Meltdown халдлагыг зөвшөөрдөг AMD процессоруудад өөр нэг эмзэг байдал илэрсэн

Грацын Техникийн Их Сургууль (Австри) болон Хелмгольцын Мэдээллийн Аюулгүй Байдлын Төв (CISPA)-ийн судлаачдын баг бүх AMD процессоруудад Meltdown зэрэглэлийг гүйцэтгэх боломжтой болгодог эмзэг байдлын (CVE-2021-26318) талаарх мэдээллийг ил болгов. хажуугийн сувгийн халдлага (эхэндээ AMD процессорууд Meltdown-ийн эмзэг байдалд өртөөгүй гэж таамаглаж байсан). Практикаар бол уг халдлагыг далд холбооны сувгийг бий болгох, цөм дэх үйл ажиллагааг хянах, цөмийн санах ой дахь хаягуудын талаарх мэдээллийг олж авахад ашиглаж, цөмийн сул талыг ашиглахын зэрэгцээ KASLR хамгаалалтыг давж гарах боломжтой.

8-р сард илрүүлсэн ижил төстэй халдлагатай адил эмзэг байдал нь бодит нөхцөлд төдийлөн ашиггүй, үйл явцын хаягийн орон зайн одоогийн хил хязгаараар хязгаарлагдаж, тодорхой хаягтай байх шаардлагатай тул AMD асуудлыг хаахын тулд тусгай арга хэмжээ авах нь зохисгүй гэж үзэж байна. цөм дэх зааврын (гаджет) бэлэн дараалал. Довтолгоог харуулахын тулд судлаачид өөрсдийн цөмийн модулийг зохиомлоор нэмсэн гаджетаар ачааллаа. Бодит нөхцөлд халдагчид шаардлагатай дарааллыг орлуулахын тулд жишээлбэл, eBPF дэд системд байнга гарч ирдэг эмзэг байдлыг ашиглаж болно.

Энэхүү шинэ төрлийн халдлагаас хамгаалахын тулд AMD нь LFENCE зааврыг ашиглах гэх мэт Meltdown халдлагыг блоклоход тусалдаг аюулгүй кодчиллын техникийг ашиглахыг зөвлөж байна. Асуудлыг тодорхойлсон судлаачид өмнө нь зөвхөн Intel процессоруудад ашиглагдаж байсан санах ойн хуудасны хүснэгтийн тусгаарлалтыг (KPTI) илүү хатуу болгохыг зөвлөж байна.

Туршилтын явцад судлаачид цөмд “if (offset < data_len) tmp = гэсэн үйлдлийг гүйцэтгэх гаджет байгааг харгалзан хэрэглэгчийн орон зай дахь процесс руу секундэд 52 байт хурдтайгаар мэдээлэл дамжуулж чадсан. LUT[өгөгдөл[офсет] * 4096];” . Таамаглалын гүйцэтгэлийн явцад кэшэд ордог хажуугийн сувгуудаар дамжуулан мэдээллийг олж авах хэд хэдэн аргыг санал болгосон. Эхний арга нь процессорын "PREFETCH" (Prefetch+Time) командын гүйцэтгэлийн хугацааны хазайлтыг шинжлэхэд, хоёр дахь нь "PREFETCH" (Prefetch+Power) гүйцэтгэх үед эрчим хүчний зарцуулалтын өөрчлөлтийг өөрчлөхөд суурилдаг.

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

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

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

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