Kerentanan Reptar menjejaskan pemproses Intel

Tavis Ormandy, seorang penyelidik keselamatan di Google, telah mengenal pasti kelemahan baharu (CVE-2023-23583) dalam pemproses Intel, diberi nama kod Reptar, yang terutamanya menimbulkan ancaman kepada sistem awan yang menjalankan mesin maya pengguna yang berbeza. Kerentanan membolehkan sistem hang atau ranap apabila operasi tertentu dilakukan pada sistem tetamu yang tidak mempunyai hak istimewa. Untuk menguji sistem anda, utiliti telah diterbitkan yang mewujudkan keadaan untuk manifestasi kelemahan.

Secara teorinya, kerentanan boleh digunakan untuk meningkatkan keistimewaan daripada yang ketiga kepada cincin perlindungan sifar (CPL0) dan melarikan diri daripada persekitaran terpencil, tetapi senario ini masih belum disahkan dalam amalan kerana kesukaran menyahpepijat di peringkat mikroarkitektur. Kajian dalaman di Intel juga menunjukkan potensi untuk mengeksploitasi kelemahan untuk meningkatkan keistimewaan dalam keadaan tertentu.

Menurut penyelidik, kelemahan itu terdapat dalam keluarga pemproses Intel Ice Lake, Rocket Lake, Tiger Lake, Raptor Lake, Alder Lake dan Sapphire Rapids. Laporan Intel menyebut bahawa masalah itu muncul bermula dari generasi ke-10 (Ice Lake) pemproses Intel Core dan generasi ketiga pemproses Xeon Scalable, serta dalam pemproses Xeon E/D/W (Ice Lake, Skylake, Haswell, Broadwell , Skylake, Sapphire Rapids, Emerald Rapids, Cascade Lake, Cooper Lake, Comet Lake, Rocket Lake) dan Atom (Apollo Lake, Jasper Lake, Arizona Beach, Alder Lake, Parker Ridge, Snow Ridge, Elkhart Lake dan Denverton). Kerentanan yang dipersoalkan telah diperbaiki dalam kemas kini mikrokod semalam 20231114.

Kerentanan ini disebabkan oleh fakta bahawa dalam keadaan mikroarkitektur tertentu, pelaksanaan arahan "REP MOVSB" dikodkan dengan awalan "REX" yang berlebihan, yang membawa kepada tingkah laku yang tidak ditentukan. Masalahnya ditemui semasa ujian awalan berlebihan, yang secara teorinya harus diabaikan, tetapi dalam praktiknya membawa kepada kesan pelik, seperti mengabaikan cawangan tanpa syarat dan memecahkan penjimatan penunjuk dalam xsave dan arahan panggilan. Analisis lanjut menunjukkan bahawa menambah awalan berlebihan pada arahan "REP MOVSB" menyebabkan kerosakan kandungan penimbal ROB (ReOrder Buffer) yang digunakan untuk memesan arahan.

Adalah dipercayai bahawa ralat itu disebabkan oleh pengiraan saiz arahan "MOVSB" yang tidak betul, yang membawa kepada pelanggaran alamat arahan yang ditulis kepada penampan ROB selepas MOVSB ​​​​dengan awalan yang berlebihan, dan pengimbangan daripada penunjuk arahan. Penyahsegerakan sedemikian boleh dihadkan kepada gangguan pengiraan perantaraan dengan pemulihan seterusnya keadaan kamiran. Tetapi jika anda ranap berbilang teras atau benang SMT pada masa yang sama, anda boleh merosakkan keadaan seni bina mikro sehingga ranap.

Sumber: opennet.ru

Tambah komen