TONTOU: Serangan Spectre v2 baharu terhadap AMD dan Intel

Perkara utama:
  • TONTOU memanfaatkan jurang masa antara pembersihan penimbal ramalan dan penggunaannya.
  • Penyerang menggunakan "Interrupt Injection" untuk mengalihkan aliran kernel dan mencemari jentera ramalan.
  •  Ia menjejaskan seni bina AMD Zen 1 hingga 4 dan pelbagai generasi pemproses Intel.
  • Tampalan mitigasi telah pun digabungkan ke dalam kemas kini kernel Linux terkini (5 Ogos).

Serangan TONTOU

Adakah mungkin kelajuan pemproses anda yang menjejaskan keselamatan anda? Untuk memahami bagaimana pemproses mencapai kelajuannya , kita mesti mempertimbangkan bahawa ia berfungsi dengan "meramalkan masa depan"... Tidak, ia bukan sihir atau mempunyai bola kristal kecil...

Cara pemproses berfungsi adalah, daripada menunggu untuk melihat laluan yang akan diambil oleh program, cip tersebut meramalkan laluan yang mungkin dan menjangkakannya. Jika ramalan itu salah, kerja tersebut akan dibuang, tetapi jejak kekal dalam ingatan. Di sinilah Spectre memainkan peranan , salah satu kelemahan paling ketara yang ditemui dalam beberapa tahun kebelakangan ini. Sejak penemuannya, penyerang telah belajar cara membaca jejak ini, mencipta varian yang semakin canggih; TONTOU adalah salah satu kelemahan baharu ini.

Penyelidik MIT telah menemui TONTOU (Masa-Peneutralisasi kepada Masa-Penggunaan), satu teknik baharu yang canggih untuk mengeksploitasi kerentanan Spectre v2 , yang membolehkan memori kernel dibaca dari ruang pengguna.

Walaupun pengeluar dan pembangun telah mereka bentuk pelbagai mekanisme perlindungan terhadap serangan ramalan selama bertahun-tahun, penyerang telah berjaya menemui laluan baharu, dan kajian CSAIL baharu ini menunjukkan cara untuk memintas perlindungan ini.

Para penyelidik mendapati terdapat jurang masa yang tidak dapat dielakkan antara saat penimbal dibersihkan dan saat ramalan digunakan, dan dalam jurang kecil inilah kod (kadangkala hanya segelintir arahan) disuntik melalui gangguan sistem, memungkinkan untuk mencemarkan semula perkakasan dan mengekstrak data penting.

Berkenaan Serangan: Gangguan dan Pelanggaran dalam Safe-RET

AMD mempunyai pertahanan terhadap kerentanan SRSO (Speculative Return Stack Overflow) yang dipanggil Saferet, yang membersihkan jentera ramalan sebaik sebelum setiap penggunaan. Ini meninggalkan tetingkap kerentanan yang boleh dieksploitasi dalam beberapa puluh nanosaat. Untuk menyerang tetingkap sekecil itu, para penyelidik telah membangunkan teknik yang mereka panggil Interrupt Injection.

Pemproses sentiasa menjeda tugas mereka untuk mengendalikan gangguan, dan program biasa boleh mengkonfigurasi pemasa ini . Dengan ini, penyelidik melaraskan pemasa dengan tepat dan, menggunakan teknik untuk memperlahankan CPU, menyebabkan pemproses terganggu pada saat yang salah . Semasa gangguan ini, penyerang boleh memaksa sebilangan besar panggilan dilaksanakan, melimpahi tindanan alamat. Apabila pelaksanaan yang salah tamat, pemproses membuang proses tersebut, tetapi data yang diakses kekal dalam cache kongsi , dari mana ia boleh diekstrak dengan menganalisis masa akses.

Pengekstrakan dan Pengujian Kata Laluan pada Sistem Sebenar

Untuk menunjukkan tahap keterukan TONTOU, pasukan tersebut membina eksploit yang berfungsi pada sistem AMD yang menjalankan kernel Linux semasa. Halangan pertama adalah memintas pertahanan yang mengacak kedudukan sistem pengendalian dalam memori, yang berjaya mereka lakukan dalam sepuluh percubaan, mengambil masa kira-kira sembilan minit setiap ujian.

Seterusnya, mereka menunjukkan serangan tempatan sebagai pengguna yang tidak berkemampuan untuk menentukan hash kata laluan root, berjaya mengekstrak data pada kadar 5.47 bait sesaat dengan ketepatan 91.97%. Dalam 50% ujian (yang purata 18 minit), mereka berjaya mengesan dan mengekstrak kandungan fail kata laluan. Walaupun kelajuan ini perlahan, ia lebih daripada mencukupi untuk menjejaskan pelayan secara kritikal.

Kesan terhadap Intel, AMD dan tampalan mitigasi

Pasukan ini telah menguji empat generasi pemproses Intel dan AMD, dan mencapai kegagalan ramalan pada kedua-dua seni bina. Walaupun teknik ini terbukti berdaya maju pada keluarga Zen 1 hingga 4 AMD , pada cip Intel, serangan tersebut memintas dua perlindungan yang berbeza , walaupun tingkah laku yang tidak konsisten diperhatikan antara generasi Intel yang berbeza, menunjukkan bahawa pertahanan nominal dilaksanakan secara berbeza dalam perkakasan.

Sebagai penyelesaian, para penyelidik mencadangkan untuk membersihkan jentera ramalan buat kali kedua selepas gangguan selesai. Walaupun langkah ini nampaknya berdaya maju untuk AMD, ia mungkin tidak produktif untuk Intel, kerana serangan itu bergantung pada gangguan yang meninggalkan keadaan yang konsisten dan boleh menjadikan serangan itu lebih andal.

Para penyelidik telah memaklumkan AMD dan Intel pada awal Februari dan penyelenggara kernel Linux pada bulan Mac. Hasilnya, penyekatan kod untuk mengurangkan kerentanan telah disepadukan ke dalam kernel Linux pada 5 Ogos.

Akhir sekali, jika anda berminat untuk mengetahui lebih lanjut, anda boleh mendapatkan butiran lanjut di pautan berikut.


Tambahkan sebagai sumber pilihan dalam Google