Kerentanan ing mekanisme MMIO prosesor Intel

Intel wis dibeberke informasi bab kelas anyar data bocor liwat struktur microarchitectural pemroses, sing ngidini, liwat manipulasi mekanisme MMIO (Memori Mapped Input Output), kanggo nemtokake informasi diproses ing inti CPU liyane. Contone, kerentanan ngidini data diekstrak saka proses liyane, enclave Intel SGX, utawa mesin virtual. Kerentanan mung khusus kanggo CPU Intel; prosesor saka pabrikan liyane ora kena pengaruh kerentanan kasebut.

Kerentanan kasebut katon ing macem-macem CPU Intel, kalebu prosesor adhedhasar Haswell, Skylake, IceLake, Broadwell, Lakefield, Kabylake, Cometlake lan Rocketlake microarchitectures, uga Xeon EP/EX, Scalable lan sawetara prosesor server Atom. Kanggo nindakake serangan, akses menyang MMIO dibutuhake, sing, contone, bisa diduweni ing sistem virtualisasi sing nyedhiyakake kemampuan kanggo ngakses MMIO kanggo sistem tamu sing dikontrol dening panyerang. A fix uga dibutuhake kanggo sistem nggunakake Intel SGX (Software Guard Extensions) diisolasi enclaves.

Watesan kerentanan mbutuhake nganyari microcode lan nggunakake metode perlindungan piranti lunak tambahan adhedhasar panggunaan instruksi VERW kanggo mbusak isi buffer microarchitectural nalika bali saka kernel menyang ruang pangguna utawa nalika nransfer kontrol menyang sistem tamu. Perlindhungan sing padha uga digunakake kanggo mblokir serangan kelas MDS (Microarchitectural Data Sampling), SRBDS (Special Register Buffer Data Sampling) lan TAA (Transactional Asynchronous Abort).

Ing sisih microcode, owah-owahan sing perlu kanggo ngleksanakake proteksi diusulake ing nganyari microcode Mei kanggo Intel CPU (IPU 2022.1). Ing kernel Linux, pangayoman marang kelas serangan anyar kalebu ing rilis 5.18.5, 5.15.48, 5.10.123, 5.4.199, 4.19.248, 4.14.284, lan 4.9.319. Kanggo mriksa cahya sistem kanggo kerentanan ing MMIO lan ngevaluasi aktivitas mekanisme proteksi tartamtu, file "/sys/devices/system/cpu/vulnerabilities/mmio_stale_data" wis ditambahake menyang kernel Linux. Kanggo ngontrol inklusi proteksi, parameter boot kernel "mmio_stale_data" wis dileksanakake, sing bisa njupuk nilai "lengkap" (mbisakake ngresiki buffer nalika pindhah menyang ruang pangguna lan ing VM), "full,nosmt" ( minangka "lengkap" + tambahan mateni SMT / Hyper- Utas) lan "mati" (proteksi dipatèni). Ndandani kapisah ditawakake kanggo hypervisor Xen lan sistem operasi Qubes.

Inti saka kerentanan kelas sing diidentifikasi yaiku sawetara operasi nyebabake nyalin utawa mindhah data sing isih ana sawise eksekusi ing inti CPU liyane saka siji buffer microarchitectural menyang liyane. Kerentanan ing MMIO ngidini data ampas iki bisa ditransfer saka buffer microarchitectural terisolasi menyang register aplikasi-katon utawa buffer CPU. Telung cara wis diidentifikasi kanggo ngekstrak data residual liwat MMIO:

  • DRPW (Device Register Partial Write, CVE-2022-21166) minangka masalah karo penanganan nulis sing salah menyang sawetara ndhaptar MMIO. Yen ukuran data sing ditulis kurang saka ukuran register, informasi residual saka buffer ngisi uga disalin menyang register. AkibatΓ©, proses sing miwiti operasi nulis sing ora lengkap menyang daftar MMIO bisa entuk data sing isih ana ing buffer mikroarsitektur saka operasi sing ditindakake ing inti CPU liyane.
  • SBDS (Shared Buffers Data Sampling, CVE-2022-21125) minangka bocor data residual saka buffer isi kernel-bound asil saka gerakan saka buffer penengah umum kanggo kabeh kernels.
  • SBDR (Shared Buffers Data Read, CVE-2022-21123) - masalah padha karo SBDS, nanging beda ing data ampas bisa mungkasi munggah ing struktur CPU katon kanggo aplikasi. Masalah SBDS lan SBDR mung katon ing prosesor kanggo sistem klien lan ing kulawarga server Intel Xeon E3.

Kerentanan ing mekanisme MMIO prosesor Intel


Source: opennet.ru

Add a comment