Akses memori adalah Sangat lambat. Agar CPU dapat bekerja pada kecepatan yang dapat diterima, perlu untuk “memprediksi” apa yang akan terjadi pada Data diperlukan – Program yang membaca alamat 0x001, 0x002, dan 0x003 kemungkinan besar akan membutuhkan 0x004 dan 0x005 dalam waktu dekat, sehingga Anda benar-benar dapat membacanya dari memori.
Keuntungannya adalah akses 0x004 jauh lebih cepat sehingga CPU tidak perlu menunggu memori. Kelemahannya adalah akses 0x004 lebih cepat – sehingga penyerang dapat mengatur waktu program dan menyimpulkan bahwa program tersebut menggunakan nilai rahasia 0x002 dan 0x003.
Apa yang disebut “serangan saluran sampingan” telah dikenal sejak lama. Solusi yang biasa dilakukan adalah dengan sengaja menulis kode secara tidak efisien sehingga selalu memiliki runtime yang sama dan CPU tidak dapat memprediksi data apa yang dibutuhkan. Hal ini membuat serangan waktu menjadi tidak mungkin.
Masalah yang dihadapi Apple saat ini adalah CPU-nya berusaha menjadi terlalu “pintar”: alih-alih hanya melihat akses memori, Apple juga melihat tanggal Dalam memori: Sesuatu seperti alamat memori kemungkinan akan digunakan sebagai alamat memori di masa depan – sehingga data benar-benar dapat dimuat.
Dalam serangan ini, penyerang memberikan nilai yang ditentukan secara khusus kepada program korban, membuat CPU berpikir bahwa nilai perantara tersebut terlihat seperti alamat memori. Dengan memilih nilai yang benar, Anda dapat membaca kunci rahasia sepotong demi sepotong berdasarkan waktu komputasi.
Ini mungkin tidak dapat diperbaiki di firmware, karena ini merupakan kelemahan mendasar dalam desain chip. Pada prinsipnya memang demikian setiap orang Kode kriptografi yang berjalan pada SoC Apple rentan — makalah ini menjelaskan bahwa serangan tersebut dapat dilakukan bahkan dengan koneksi SSL standar ke server web, misalnya, namun dua aplikasi yang berjalan pada perangkat yang sama juga dapat saling menyerang. Selama masih ada hanya satu Salah satu bentuk enkripsi menyangkut data yang berasal dari pihak ketiga, dan serangan mungkin saja terjadi.
“Solusinya” adalah menulis ulang kode sehingga CPU tidak dapat melihat data sebagai alamat memori – yang pada dasarnya menipu CPU. Ini “membutakan”. Atau Anda bisa menjalankannya di CPU yang tidak memiliki indikator “pintar”.
[Reactie gewijzigd door laurxp op 21 maart 2024 23:30]
More Stories
Membayar iklan di Facebook dari Indonesia menjadi lebih mudah: Pelajari cara melakukannya
Corsair meluncurkan monitor Xeneon 34 inci dengan panel QD OLED dengan resolusi 3440 x 1440 piksel – Komputer – Berita
Microsoft menyumbangkan Project Mono kepada komunitas Wine – IT – Berita