Jurutera Google mencadangkan perlindungan perisian pemproses daripada serangan LVI

Beberapa ketika dahulu ia telah diketahui tentang kelemahan baru dalam seni bina spekulatif pemproses Intel, yang dipanggil Suntikan Nilai Beban (LVI). Intel mempunyai pendapat sendiri tentang bahaya LVI dan cadangan untuk mengurangkannya. Versi perlindungan anda sendiri terhadap serangan sedemikian ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΠ» jurutera di Google. Tetapi keselamatan datang dengan kos pengurangan purata 7% dalam prestasi pemproses.

Jurutera Google mencadangkan perlindungan perisian pemproses daripada serangan LVI

Kami menyatakan sebelum ini bahawa bahaya LVI bukan terletak pada mekanisme khusus yang ditemui oleh penyelidik, tetapi pada prinsip serangan saluran sisi LVI, yang ditunjukkan buat kali pertama. Oleh itu, arah baru dibuka untuk ancaman yang tidak pernah disyaki oleh sesiapa sebelum ini (sekurang-kurangnya, ini tidak dibincangkan di ruang awam). Oleh itu, nilai pembangunan pakar Google Zola Bridges terletak pada hakikat bahawa tampungnya mengurangkan bahaya serangan baharu yang tidak diketahui berdasarkan prinsip LVI.

Sebelum ini dalam GNU Project Assembler (Penyusun GNU) perubahan telah dibuat yang mengurangkan risiko kelemahan LVI. Perubahan ini terdiri daripada menambah arahan penghalang LFENCE, yang mewujudkan urutan yang ketat antara akses memori sebelum dan selepas halangan. Menguji tampalan pada salah satu pemproses generasi Intel Kaby Lake menunjukkan penurunan prestasi sehingga 22%.

Pembangun Google mencadangkan tampungnya dengan penambahan arahan LFENCE pada set pengkompil LLVM, dan memanggil perlindungan SESES (Speculative Execution Side Effect Suppression). Pilihan perlindungan yang dicadangkannya mengurangkan kedua-dua ancaman LVI dan ancaman lain yang serupa, contohnya, Spectre V1/V4. Pelaksanaan SESES membolehkan pengkompil menambah arahan LFENCE di lokasi yang sesuai semasa penjanaan kod mesin. Sebagai contoh, masukkannya sebelum setiap arahan untuk membaca dari ingatan atau menulis ke ingatan.

Arahan LFENCE menghalang preemption semua arahan seterusnya sehingga bacaan memori sebelumnya telah selesai. Jelas sekali, ini menjejaskan prestasi pemproses. Penyelidik mendapati bahawa secara purata, perlindungan SESES mengurangkan kelajuan menyelesaikan tugas menggunakan perpustakaan yang dilindungi sebanyak 7,1%. Pengurangan prestasi adalah antara 4 hingga 23%. Ramalan awal penyelidik adalah lebih pesimis, memerlukan penurunan prestasi sehingga 19 kali ganda.



Sumber: 3dnews.ru

Tambah komen