CROSSTalk - kelemahan dalam CPU Intel yang membawa kepada kebocoran data antara teras

Satu pasukan penyelidik dari Vrije Universiteit Amsterdam telah mengenal pasti yang baru kelemahan (CVE-2020-0543) dalam struktur mikroarkitektur pemproses Intel, yang ketara kerana ia membolehkan anda memulihkan hasil pelaksanaan beberapa arahan yang dilaksanakan pada teras CPU yang lain. Ini adalah kelemahan pertama dalam mekanisme pelaksanaan arahan spekulatif yang membenarkan kebocoran data antara teras CPU individu (sebelum ini kebocoran terhad kepada benang berbeza daripada teras yang sama). Para penyelidik menamakan masalah itu CROSSTalk, tetapi dokumen Intel Kerentanan itu dirujuk sebagai SRBDS (Pensampelan Data Penampan Daftar Khas).

Kerentanan itu berkaitan dengan dibentangkan setahun yang lalu kepada kelas masalah MDS (Microarchitectural Data Sampling) dan berdasarkan aplikasi kaedah analisis saluran sisi kepada data dalam struktur mikroarkitektur. Prinsip operasi CROSSTalk hampir kepada kelemahan RIDL, tetapi berbeza dalam sumber kebocoran.
Kerentanan baharu memanipulasi kebocoran penimbal perantaraan yang tidak didokumenkan sebelum ini yang dikongsi oleh semua teras CPU.

CROSSTalk - kelemahan dalam CPU Intel yang membawa kepada kebocoran data antara teras

Intipati masalah ialah beberapa arahan mikropemproses, termasuk RDRAND, RDSEED dan SGX EGETKEY, dilaksanakan menggunakan operasi SRR (Bacaan Daftar Khas) dalaman. Pada pemproses yang terjejas, data yang dikembalikan untuk SRR didepositkan dalam penimbal perantaraan yang biasa kepada semua teras CPU, selepas itu ia dipindahkan ke penimbal isian yang dikaitkan dengan teras CPU fizikal tertentu yang mana operasi baca dimulakan. Seterusnya, nilai daripada penimbal isian disalin ke dalam daftar yang boleh dilihat oleh aplikasi.

Saiz penimbal kongsi perantaraan sepadan dengan garisan cache, yang biasanya lebih besar daripada saiz data yang dibaca, dan bacaan berbeza mempengaruhi offset berbeza dalam penimbal. Memandangkan penimbal kongsi disalin sepenuhnya ke penimbal isian, bukan sahaja bahagian yang diperlukan untuk operasi semasa dipindahkan, tetapi juga data yang tinggal daripada operasi lain, termasuk yang dilakukan pada teras CPU lain.

CROSSTalk - kelemahan dalam CPU Intel yang membawa kepada kebocoran data antara teras

CROSSTalk - kelemahan dalam CPU Intel yang membawa kepada kebocoran data antara teras

Jika serangan itu berjaya, pengguna tempatan yang disahkan dalam sistem boleh menentukan hasil pelaksanaan arahan RDRAND, RDSEED dan EGETKEY dalam proses asing atau di dalam enklaf Intel SGX, tanpa mengira teras CPU di mana kod itu dilaksanakan.
Penyelidik yang mengenal pasti masalah diterbitkan Eksploitasi prototaip yang menunjukkan keupayaan untuk membocorkan maklumat tentang nilai rawak yang diperoleh melalui arahan RDRAND dan RDSEED untuk memulihkan kunci persendirian ECDSA yang diproses dalam enklaf Intel SGX selepas hanya melakukan satu operasi tandatangan digital pada sistem.


masalah mudah terdedah rangkaian luas pemproses Intel desktop, mudah alih dan pelayan, termasuk Core i3, i5, i7, i9, m3, Celeron (siri J, G dan N), Atom (siri C, E dan X), Xeon (E3, E5, Keluarga E7 , W dan D), Xeon Scalable, dsb. Perlu diperhatikan bahawa Intel telah dimaklumkan tentang kerentanan pada September 2018, dan pada Julai 2019 prototaip eksploitasi telah disediakan yang menunjukkan kebocoran data antara teras CPU, tetapi pembangunan pembetulan telah ditangguhkan kerana kerumitan pelaksanaannya. Kemas kini mikrokod yang dicadangkan hari ini menangani isu ini dengan menukar gelagat arahan RDRAND, RDSEED dan EGETKEY untuk menulis ganti data dalam penimbal kongsi untuk menghalang maklumat sisa daripada diselesaikan di sana. Di samping itu, akses penimbal dijeda sehingga kandungan dibaca dan ditulis semula.

Kesan sampingan jenis perlindungan ini ialah peningkatan kependaman apabila melaksanakan RDRAND, RDSEED dan EGETKEY serta mengurangkan daya pengeluaran apabila cuba melaksanakan arahan ini secara serentak pada pemproses logik yang berbeza. Melaksanakan RDRAND, RDSEED dan EGETKEY juga menggantung akses memori daripada pemproses logik lain. Ciri ini mungkin menjejaskan prestasi sesetengah aplikasi pelayan secara negatif, jadi perisian tegar menyediakan mekanisme (RNGDS_MITG_DIS) untuk melumpuhkan perlindungan untuk arahan RDRAND dan RDSEED yang dilaksanakan di luar enklaf Intel SGX.

Sumber: opennet.ru

Tambah komen