![]()
Peneliti Universitas telah menemukan kelemahan keamanan yang tidak dapat ditambal di Apple Silicon Mac, yang memungkinkan penyerang memecahkan enkripsi dan mendapatkan akses ke kunci kriptografi.
Cacatnya terdapat pada chip M1, M2, dan M3, dan karena kegagalan tersebut adalah bagian dari arsitektur chip, tidak ada cara bagi Apple untuk memperbaikinya di perangkat saat ini…
Cacatnya ada pada proses yang dikenal sebagai DMP
Sebelum menjelaskan kelemahan ini, kita perlu memahami proses yang digunakan pada chip paling canggih saat ini, yang dikenal sebagai Data Memory-dependent Prefetchers (DMP). Begini cara ArsTechnica menjelaskan konsepnya:
Ancaman terletak pada prefetcher yang bergantung pada memori data chip, pengoptimalan perangkat keras yang memprediksi alamat memori data yang kemungkinan akan diakses oleh kode yang berjalan dalam waktu dekat. Dengan memuat konten ke dalam cache CPU sebelum benar-benar dibutuhkan, DMP, sebutan untuk fitur tersebut, mengurangi latensi antara memori utama dan CPU, yang merupakan hambatan umum dalam komputasi modern. DMP adalah fenomena yang relatif baru yang hanya ditemukan pada chip seri M dan mikroarsitektur Intel Raptor Lake generasi ke-13, meskipun bentuk prefetcher lama sudah umum digunakan selama bertahun-tahun.
Masalah timbul karena adanya bug pada DMP.
Kelemahan keamanan yang tidak dapat ditambal
Tujuh peneliti dari enam universitas berbeda bekerja sama untuk mengidentifikasi kerentanan dan membuat aplikasi yang berhasil mengeksploitasinya: GoFetch.
Detailnya cukup teknis, tetapi versi singkatnya adalah data yang disimpan dalam chip terkadang disalahartikan sebagai alamat memori, dan di-cache. Jika aplikasi jahat memaksa kesalahan ini terjadi berulang kali, lama kelamaan aplikasi tersebut dapat mendekripsi kuncinya.
Berikut cara peneliti mendeskripsikannya secara lebih detail:
Prefetcher biasanya melihat alamat data yang diakses (mengabaikan nilai data yang diakses) dan mencoba menebak alamat masa depan yang mungkin berguna. DMP berbeda dalam hal ini karena selain alamat, DMP juga menggunakan nilai data untuk membuat prediksi (memprediksi alamat yang akan dituju dan diambil terlebih dahulu). Secara khusus, jika suatu nilai data “terlihat seperti” sebuah pointer, maka nilai tersebut akan diperlakukan sebagai “alamat” (padahal sebenarnya tidak!) dan data dari “alamat” ini akan dibawa ke cache. Masuknya alamat ini ke dalam cache terlihat, bocor melalui saluran samping cache.
Serangan kami mengeksploitasi fakta ini. Kita tidak bisa membocorkan kunci enkripsi secara langsung, tapi yang bisa kita lakukan adalah memanipulasi data perantara di dalam algoritma enkripsi agar terlihat seperti penunjuk melalui serangan masukan yang dipilih. DMP kemudian melihat bahwa nilai data “tampak seperti” sebuah alamat, dan membawa data dari “alamat” ini ke dalam cache, yang kemudian membocorkan “alamat” tersebut. Kami tidak peduli dengan nilai data yang diambil sebelumnya, namun fakta bahwa data perantara tampak seperti alamat terlihat melalui saluran cache dan cukup untuk mengungkap kunci rahasia seiring waktu.
Ini bukan pertama kalinya kerentanan DMP ditemukan di Apple Silicon. Pada tahun 2022, tim peneliti berbeda menemukan satu yang mereka beri nama Augury.
Solusi mungkin dilakukan, tetapi akan berdampak pada kinerja
Para peneliti mengatakan bahwa karena masalah tidak dapat ditambal, hal terbaik yang dapat dilakukan Apple adalah menerapkan solusi – tetapi ini akan sangat merugikan kinerja.
Salah satu mitigasi paling efektif, yang dikenal sebagai ciphertext blinding, adalah contoh yang bagus. Blinding bekerja dengan menambahkan/menghapus masker ke nilai sensitif sebelum/sesudah disimpan ke/dimuat dari memori. Hal ini secara efektif mengacak keadaan internal algoritma kriptografi, mencegah penyerang mengendalikannya dan dengan demikian menetralkan serangan GoFetch. Sayangnya, kata para peneliti, pertahanan ini bersifat spesifik pada algoritma dan seringkali mahal, bahkan berpotensi menggandakan sumber daya komputasi yang diperlukan dalam beberapa kasus, seperti untuk pertukaran kunci Diffie-Hellman.
Salah satu pertahanan lainnya adalah dengan menjalankan proses kriptografi pada inti efisiensi yang disebutkan sebelumnya, juga dikenal sebagai inti Icestorm, yang tidak memiliki DMP. Salah satu pendekatannya adalah dengan menjalankan semua kode kriptografi pada inti ini. Pertahanan ini juga tidak ideal. Perubahan mendadak tidak hanya memungkinkan penambahan fungsionalitas DMP ke inti efisiensi, menjalankan proses kriptografi di sini juga kemungkinan akan meningkatkan waktu yang diperlukan untuk menyelesaikan operasi dengan selisih yang tidak sepele.
Namun risiko di dunia nyata rendah
Untuk mengeksploitasi kerentanan, penyerang harus membodohi pengguna agar memasang aplikasi berbahaya, dan aplikasi Mac yang tidak ditandatangani diblokir secara default.
Selain itu, waktu yang dibutuhkan untuk melakukan serangan cukup signifikan, berkisar antara 54 menit hingga 10 jam dalam pengujian yang dilakukan oleh peneliti, sehingga aplikasi harus berjalan dalam waktu yang cukup lama.
Apple sejauh ini memilih untuk tidak menerapkan perlindungan terhadap eksploitasi Augury DMP, kemungkinan karena penurunan kinerja tidak dapat dibenarkan oleh rendahnya tingkat serangan di dunia nyata. Para peneliti di sini berbagi temuan mereka dengan Apple pada bulan Desember, dan sejauh ini belum ada solusi yang diterapkan, mungkin karena alasan yang sama. Perusahaan belum berkomentar secara publik.
Solusi jangka panjang bagi Apple adalah mengatasi kerentanan di DMP i
Itulah konten tentang Kelemahan keamanan yang tidak dapat ditambal di Apple Silicon Mac merusak enkripsi, semoga bermanfaat.