Peneliti dari Google: untuk melindungi dari Specter memerlukan perubahan dalam arsitektur prosesor, tambalan perangkat lunak tidak akan membantu

Pada Januari 2018, para peneliti Google menyediakan informasi kepada publik tentang kerentanan perangkat keras mendasar pada sebagian besar prosesor modern dengan eksekusi instruksi spekulatif. Vulnerability Specter (dan Meltdown yang berdekatan) mengeksploitasi mekanisme prediksi cabang di CPU dan memungkinkan membaca data melalui saluran eksternal dalam bentuk hierarki cache umum. Dengan kata lain, aplikasi apa pun di komputer bisa mendapatkan akses baca ke lokasi memori arbitrer, yang melanggar isolasi program, memicu kebocoran data, penolakan layanan, dan masalah lainnya.

Yang paling parah, hampir semua prosesor modern (kecuali RISC dan Rusia Elbrus) rentan, karena prediksi cabang telah menjadi bagian mendasar dari arsitektur CPU modern , yang tidak dapat ditinggalkan tanpa kehilangan kinerja yang signifikan.

Bahkan, para peneliti menemukan kerentanan kembali pada pertengahan 2017, mereka hanya tidak memberi tahu masyarakat umum tentang hal itu sehingga produsen prosesor dan sistem memiliki kesempatan untuk mempersiapkan pembaruan kode mikro dan perangkat lunak.

Oleh karena itu, segera setelah pengumuman resmi pada awal Januari, Intel merilis pembaruan mikrokode untuk sejumlah besar model prosesor saat ini dan yang sudah ketinggalan zaman. Pembaruan tersedia sebagai paket untuk Red Hat Enterprise Linux, SUSE Linux Enterprise Server, CentOS, Fedora, Ubuntu, Debian dan Chrome OS, memungkinkan Anda untuk memperbarui firmware tanpa memperbarui BIOS. Memperbarui mikrokode tidak menghilangkan kebutuhan untuk menerapkan patch KPTI ke kernel Linux. Benar, versi pertama Linus Torvalds disebut "sampah absolut" , dan Intel meminta untuk berhenti menginstalnya, dan kemudian dirilis ulang.

Pembaruan dirilis oleh produsen lain untuk produk mereka, tambalan yang sesuai dirilis untuk sebagian besar sistem operasi. Sebuah tambalan untuk Windows 10 tidak luput dari petualangan: Microsoft merilisnya, memanggilnya kembali, lalu merilisnya lagi.

Tetapi setelah semua petualangan ini, cerita itu tampaknya berakhir: versi tambalan yang stabil dirilis dan semua orang yang ingin menginstalnya. Tampaknya Anda dapat mengakhiri ini. Tapi tidak. Setahun kemudian, pada 14 Februari 2019, sekelompok peneliti dari Google menerbitkan laporan dengan mengatakan, "Spectre akan tetap bersama kami. Analisis serangan melalui saluran pihak ketiga dan eksekusi spekulatif . " Para peneliti menyimpulkan bahwa tidak mungkin untuk sepenuhnya menutup kerentanan hanya dengan tambalan perangkat lunak. Ini akan membutuhkan "pemrosesan prosesor yang signifikan."

Dari laporan itu dapat disimpulkan bahwa kerentanan itu benar-benar mendasar. Para penulis menulis bahwa semua prosesor dengan eksekusi spekulatif akan selalu rentan terhadap berbagai serangan saluran samping, terlepas dari metode perlindungan parsial yang dapat diterapkan di masa depan .

Laporan itu mengatakan: "Kami percaya bahwa dengan peralatan modern, kerentanan spekulatif merusak kerahasiaan tingkat perangkat lunak. Pada saat yang sama, tidak ada perlindungan perangkat lunak yang komprehensif, karena kami menemukan bahwa kode berbahaya dapat membuat mekanisme universal untuk membaca semua memori di ruang alamat yang sama melalui saluran pihak ketiga. "

Intel mengatakan bermaksud untuk mengimplementasikan beberapa perubahan perangkat keras pada prosesor untuk melindungi dari Specter. Tetapi masalahnya adalah Spectre bukan hanya bug. Para peneliti percaya ini adalah kelas kerentanan yang luas yang mengeksploitasi mekanisme prediksi cabang. Karena itu, tambalan sederhana tidak bisa dilakukan di sini.

Para peneliti telah menyarankan beberapa solusi potensial, yaitu:

  • penonaktifan total eksekusi spekulatif;
  • menurunnya akurasi timer;
  • cabang penyamaran (karena setiap pemeriksaan keamanan yang tertanam dalam kode sebagai cabang dapat dihindari dengan sifat prediksi cabang, penulis mengusulkan untuk tidak mempertimbangkan cabang dalam merancang mekanisme keamanan sama sekali).

Para peneliti membuat kesimpulan yang mengecewakan: β€œModel kita, model mental kita salah; kami mengorbankan keamanan untuk kinerja dan kompleksitas, dan tidak mengetahuinya. Ironi yang pahit sekarang adalah bahwa perlindungan membutuhkan pengenalan kompleksitas yang lebih besar dengan menggunakan perangkat lunak, yang sebagian besar, seperti yang kita ketahui, tidak lengkap ... Tampaknya Specter mendapat nama yang terlalu bagus karena ditakdirkan untuk menghantui kita untuk waktu yang lama. ”

Source: https://habr.com/ru/post/id441378/


All Articles