Varian serangan Foreshadow baharu yang mempengaruhi pemproses Intel, AMD, ARM dan IBM

Sekumpulan penyelidik dari Universiti Teknikal Graz (Austria) dan Pusat Keselamatan Maklumat Helmholtz (CISPA), didedahkan (PDF) vektor baharu untuk menggunakan serangan saluran sisi Bayang-bayang (L1TF), yang membolehkan anda mengekstrak data daripada memori enklaf Intel SGX, SMM (Mod Pengurusan Sistem), kawasan memori kernel OS dan mesin maya dalam sistem virtualisasi. Tidak seperti serangan asal yang dicadangkan pada 2018 Bayang-bayang Varian baharu ini tidak khusus untuk pemproses Intel dan menjejaskan CPU daripada pengeluar lain seperti ARM, IBM dan AMD. Di samping itu, varian baharu tidak memerlukan prestasi tinggi dan serangan boleh dilakukan walaupun dengan menjalankan JavaScript dan WebAssembly dalam pelayar web.

Serangan Foreshadow mengambil kesempatan daripada fakta bahawa apabila memori diakses pada alamat maya yang mengakibatkan pengecualian (kesalahan halaman terminal), pemproses secara spekulatif mengira alamat fizikal dan memuatkan data jika ia tersedia dalam cache L1. Akses spekulatif dilakukan sebelum carian jadual halaman memori selesai dan tanpa mengira keadaan kemasukan jadual halaman memori (PTE), i.e. sebelum menyemak kehadiran data dalam ingatan fizikal dan kebolehbacaannya. Selepas semakan ketersediaan memori selesai, jika tiada bendera Present dalam PTE, operasi dibuang, tetapi data kekal dalam cache dan boleh diambil menggunakan kaedah untuk menentukan kandungan cache melalui saluran sampingan (dengan menganalisis perubahan dalam masa akses kepada data cache dan uncache).

Penyelidik telah menunjukkan bahawa kaedah perlindungan sedia ada terhadap Bayang Bayangan adalah tidak berkesan dan dilaksanakan dengan tafsiran yang salah terhadap masalah tersebut. Keterdedahan
Bayangan hadapan boleh dieksploitasi tanpa mengira mekanisme keselamatan kernel yang sebelum ini dianggap mencukupi. Akibatnya, para penyelidik menunjukkan kemungkinan untuk melakukan serangan Bayang-bayang pada sistem dengan kernel yang agak lama, di mana semua mod perlindungan Bayang-bayang yang tersedia didayakan, serta dengan kernel baharu, di mana hanya perlindungan Spectre-v2 dilumpuhkan (menggunakan pilihan kernel Linux nospectre_v2).

Didapati bahawa kesan pramuat tidak berkaitan dengan arahan prefetch perisian atau kesan perkakasan
prefetch semasa capaian memori, tetapi berlaku apabila dereference spekulatif ruang pengguna mendaftar dalam kernel. Salah tafsir punca kelemahan ini pada mulanya membawa kepada andaian bahawa kebocoran data dalam Bayang Bayangan hanya boleh berlaku melalui cache L1, manakala kehadiran coretan kod tertentu (alat prefetch) dalam kernel boleh menyumbang kepada kebocoran data di luar cache L1, contohnya, dalam cache L3.

Ciri yang dikenal pasti juga membuka kemungkinan untuk mencipta serangan baharu yang bertujuan untuk proses menterjemah alamat maya kepada alamat fizikal dalam persekitaran terpencil dan menentukan alamat dan data yang disimpan dalam daftar CPU. Sebagai demonstrasi, penyelidik menunjukkan kemungkinan menggunakan kesan yang dikenal pasti untuk mengekstrak data dari satu proses ke proses yang lain dengan prestasi kira-kira 10 bit sesaat pada sistem dengan CPU Intel Core i7-6500U. Kemungkinan membocorkan kandungan daftar daripada enklaf Intel SGX juga ditunjukkan (ia mengambil masa 32 minit untuk menentukan nilai 64-bit yang ditulis pada daftar 15-bit). Beberapa jenis serangan ternyata boleh dilaksanakan dalam JavaScript dan WebAssembly, sebagai contoh, adalah mungkin untuk menentukan alamat fizikal pembolehubah JavaScript dan mengisi daftar 64-bit dengan nilai yang dikawal oleh penyerang.

Untuk menyekat serangan Foreshadow melalui cache L3, kaedah perlindungan Spectre-BTB (Branch Target Buffer) yang dilaksanakan dalam set patch reppoline adalah berkesan. Oleh itu, para penyelidik percaya adalah perlu untuk membiarkan reppoline didayakan walaupun pada sistem dengan CPU baharu yang sudah mempunyai perlindungan terhadap kelemahan yang diketahui dalam mekanisme pelaksanaan spekulatif CPU. Pada masa yang sama, wakil Intel menyatakan bahawa mereka tidak bercadang untuk menambah langkah perlindungan tambahan terhadap Foreshadow kepada pemproses dan menganggapnya mencukupi untuk memasukkan perlindungan terhadap serangan Spectre V2 dan L1TF (Foreshadow).

Sumber: opennet.ru

Tambah komen