Google-ийн инженер процессоруудыг LVI халдлагаас хамгаалах програм хангамжийг санал болгосон

Хэсэг хугацааны өмнө Intel процессоруудын таамаглалын архитектурт шинэ эмзэг байдлын талаар мэдэгдэж байсан Ачааллын утгыг шахах (LVI). Intel нь LVI-ийн аюулын талаар өөрийн гэсэн бодолтой байдаг бөгөөд үүнийг багасгах зөвлөмжүүд байдаг. Ийм халдлагаас хамгаалах өөрийн хувилбар санал болгосон Google-ийн инженер. Гэхдээ та процессорын гүйцэтгэлийг дунджаар 7% бууруулж аюулгүй байдлын төлбөр төлөх шаардлагатай болно.

Google-ийн инженер процессоруудыг LVI халдлагаас хамгаалах програм хангамжийг санал болгосон

LVI-ийн аюул нь судлаачдын нээсэн тодорхой механизмд биш, харин анх удаа харуулсан LVI-ийн хажуугийн сувгийн довтолгооны зарчимд оршдог гэдгийг бид өмнө нь тэмдэглэсэн. Тиймээс өмнө нь хэн ч сэжиглэж байгаагүй аюул заналхийллийн шинэ чиглэл нээгдэв (ядаж олон нийтийн газар энэ талаар яригдаагүй). Тиймээс Google-ийн мэргэжилтэн Зола Бриджсийн хөгжлийн үнэ цэнэ нь түүний нөхөөс нь LVI зарчим дээр тулгуурлан үл мэдэгдэх шинэ халдлагын аюулыг багасгадагт оршдог.

Өмнө нь GNU Төслийн Ассемблерт (GNU угсрагч) LVI-ийн эмзэг байдлын эрсдлийг бууруулах өөрчлөлтүүд хийгдсэн. Эдгээр өөрчлөлтүүд нь нэмэхээс бүрдсэн саад тотгорын заавар LFENCE нь хаалтаас өмнө болон дараа санах ойн хандалтын хооронд хатуу дарааллыг тогтоосон. Intel-ийн Kaby Lake үеийн процессоруудын нэг дээр засварыг туршиж үзэхэд гүйцэтгэл 22% хүртэл буурсан байна.

Google-ийн хөгжүүлэгч LLVM хөрвүүлэгчийн багцад LFENCE зааврыг нэмсэн нөхөөсийг санал болгосон бөгөөд хамгаалалтыг SESES (Speculative Execution Side Effect Suppression) гэж нэрлэсэн. Түүний санал болгож буй хамгаалалтын сонголт нь LVI аюул болон бусад ижил төстэй аюулуудыг аль алиныг нь багасгадаг, жишээ нь Spectre V1/V4. SESES-ийн хэрэгжилт нь хөрвүүлэгчид машины код үүсгэх үед тохирох газруудад LFENCE зааврыг нэмэх боломжийг олгодог. Жишээлбэл, санах ойноос унших эсвэл санах ой руу бичих заавар бүрийн өмнө тэдгээрийг оруулна уу.

LFENCE заавар нь өмнөх санах ойг уншиж дуустал дараагийн бүх зааврыг урьдчилан авахаас сэргийлдэг. Мэдээжийн хэрэг, энэ нь процессоруудын гүйцэтгэлд нөлөөлдөг. Судлаач SESES-ийн хамгаалалт нь хамгаалагдсан номын санг ашиглан даалгавруудыг гүйцэтгэх хурдыг дунджаар 7,1%-иар бууруулдаг болохыг тогтоожээ. Энэ тохиолдолд бүтээмжийн бууралтын хүрээ 4-23% байна. Судлаачдын анхны таамаглал нь илүү гутранги байсан бөгөөд гүйцэтгэлийг 19 дахин бууруулахыг шаардсан.



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

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