Sebuah tim akademisi baru-baru ini mengungkapkan metode serangan baru yang dapat mengekstrak data dari CPU Intel. Dijuluki Platypus, singkatan dari “Power Leakage Attacks: Targeting Your Protected User Secrets“, serangan tersebut menargetkan antarmuka RAPL dari prosesor Intel.
RAPL, yang merupakan singkatan dari Running Average Power Limit, adalah komponen yang memungkinkan firmware atau aplikasi perangkat lunak untuk memantau konsumsi daya di CPU dan DRAM.
RAPL, yang secara efektif memungkinkan firmware dan aplikasi perangkat lunak membaca berapa banyak daya listrik yang ditarik CPU untuk melakukan tugasnya, adalah sistem yang telah digunakan selama bertahun-tahun untuk melacak serta men-debug aplikasi dan kinerja perangkat keras.
Mencuri Kunci Enkripsi Melalui RAPL Intel
Dalam makalah penelitian yang diterbitkan, akademisi dari Graz University of Technology, University of Birmingham, dan CISPA Helmholtz Center for Information Security telah mengungkapkan bagaimana serangan Platypus dapat digunakan untuk menentukan data apa yang sedang diproses di dalam CPU dengan melihat nilai-nilai yang dilaporkan melalui antarmuka RAPL.
“Dengan menggunakan PLATYPUS, kami menunjukkan bahwa kami dapat mengamati variasi dalam konsumsi daya untuk membedakan instruksi yang berbeda dan bobot Hamming yang berbeda dari operan dan beban memori, memungkinkan inferensi nilai yang dimuat,” kata peneliti.
“Nilai yang dimuat” ini mengacu pada data yang dimuat di CPU. Ini bisa berupa kunci enkripsi, kata sandi, dokumen sensitif, atau jenis informasi lainnya.
Mengakses jenis data ini biasanya dilindungi oleh banyak sistem keamanan, seperti kernel address space layout randomization (KASLR) atau hardware-isolated trusted execution environments (TEEs), seperti Intel SGX.
Namun, para peneliti mengatakan bahwa Platypus memungkinkan penyerang untuk melewati semua sistem keamanan ini dengan melihat variasi nilai konsumsi daya.
Dalam pengujiannya, peneliti mengatakan mereka me-bypass KASLR dengan mengamati nilai konsumsi daya RAPL hanya selama 20 detik, dan kemudian mereka mengambil data dari kernel Linux. Dalam pengujian lain, mereka juga mengambil data yang sedang diproses di dalam secure enclaves Intel SGX.
Serangan Platypus yang mengambil kunci pribadi RSA dari enclave SGX mengharuskan penyerang untuk memantau data RAPL selama 100 menit, sementara serangan yang mengambil kunci enkripsi AES-NI dari enclave SGX dan dari ruang memori kernel Linux membutuhkan waktu 26 jam.
Linux Dinyatakan Lebih Rentan
Menurut tim peneliti, serangan Platypus bekerja paling baik di sistem Linux. Ini karena kernel Linux dikirim dengan framework powercap, driver universal untuk berinteraksi dengan antarmuka RAPL dan API pembatasan daya lainnya, yang memungkinkan pembacaan nilai konsumsi daya dengan mudah.
Serangan pada Windows dan macOS juga dimungkinkan, tetapi dalam kasus ini, aplikasi Intel Power Gadget harus diinstal terlebih dahulu pada perangkat target untuk memungkinkan penyerang berinteraksi dengan antarmuka RAPL.
Serangan Platypus yang ditujukan untuk enclave Intel SGX bekerja terlepas dari OS yang mendasarinya, karena para penyerang mengejar enclave SGX (terpisah) dan bukan OS yang mendasarinya juga memori CPU (terpisah).
Baca Juga: “Kerentanan CPU Intel Akan Serangan LVI Membuat Banyaknya Data Center Berisiko”
Serangan Jarak Jauh Pertama Dari Jenisnya
Serangan Platypus, dinamai sesuai dengan kemampuan hewan platipus untuk merasakan arus listrik dengan paruhnya.
Sementara penelitian lain telah berhasil mengamati pembacaan daya CPU dengan menghubungkan osiloskop ke CPU, serangan Platypus dapat dilakukan dari jarak jauh.
Misalnya, kode serangan dapat dikemas di dalam aplikasi berbahaya (malware) yang diinstal atau ditanam di perangkat yang ditargetkan. Hal ini memungkinkan serangan untuk dilakukan tanpa membutuhkan akses fisik ke sistem yang diserang.
Platypus juga berbeda dari PlunderVolt, serangan lain terhadap antarmuka tegangan daya CPU Intel. Namun, kedua serangan itu berbeda, kata Moritz Lipp, salah satu peneliti yang mengerjakan Platypus dan PlunderVolt.
Bedanya, PlunderVolt adalah serangan aktif yang mengubah nilai daya, sedangkan Platypus adalah serangan pasif yang menyimpulkan data hanya dengan melihat data konsumsi daya.
Perbaikan Sudah Tersedia
Para peneliti mengatakan bahwa Platypus dapat bekerja pada CPU Intel baik di server, desktop, maupun laptop. Intel juga telah mengonfirmasi bahwa beberapa CPU seluler dan tanam juga terpengaruh.
Pembuat chip telah merilis pembaruan microcode (firmware CPU) untuk memblokir serangan Platypus, yang telah disediakan oleh perusahaan kepada mitra industri untuk disertakan dalam pembaruan keamanan produk mereka berikutnya.
Kernel Linux juga telah mengirimkan pembaruan. Pembaruan membatasi akses ke antarmuka RAPL hanya untuk aplikasi dengan hak istimewa yang tinggi, membuat serangan lebih sulit untuk dilakukan dari dalam aplikasi dengan hak akses tingkat rendah.
Pembaruan untuk serangan Platypus akan berisi referensi untuk CVE-2020-8694 (Linux + Intel), CVE-2020-8695 (Intel), dan CVE-2020-12912 (Linux + AMD), tiga pengidentifikasi untuk masalah yang dieksploitasi selama pengujian serangan Platypus.
Daftar CPU yang terpengaruh tersedia dalam security advisory yang diterbitkan Intel.
CPU Lain Juga Ikut Terdampak
Selain Intel, hampir semua chip lainnya yang juga menyertakan antarmuka RAPL dengan produknya terdampak. Tim peneliti mengatakan bahwa produk ini juga mungkin terkena dampak; namun, mereka belum menguji semua perangkat yang tersedia di pasaran saat ini karena waktu penelitian dan anggaran yang mahal.
“Kami telah menjalankan beberapa eksperimen pada AMD di mana kami mengamati kebocoran melalui konsumsi energi juga (ada di lampiran makalah),” kata peneliti. Sementara itu, AMD juga telah merilis pembaruan untuk driver Linux-nya.
“Kami [juga] membahas perangkat berbasis ARM tetapi tidak punya waktu untuk mengevaluasinya secara menyeluruh.”
Rincian tambahan tentang serangan Platypus, termasuk makalah penelitiannya, tersedia di situs web khusus serangan Platypus.