Panaliti di Universitas Maryland di AS sareng Universitas Tsinghua di China parantos nyebarkeun makalah ilmiah anu ngadokumentasikeun metode serangan saluran sisi anyar anu ngeksploitasi kerentanan hardware anu teu dipikanyaho dina prosesor Intel. Sanaos kerentanan sigana mangaruhan prosesor pangénggalna chipmaker, éta paling efektif ngalawan modél anu langkung lami anu ogé kapangaruhan ku kerentanan Meltdown. Tulisan ieu tiasa janten minat ilmiah murni upami sanés pikeun hiji aspék: panyerang maok inpormasi sénsitip ku cara ngarobih data daptar bandéra.
Punten nganggo basa Inggris
Kerentanan prosésor hardware anu aya hubunganana sareng palaksanaan instruksi spekulatif parantos janten subyek sababaraha kajian salami langkung ti lima taun. Pikeun nyederhanakeun sabisa-bisa, sadaya serangan anu diusulkeun tiasa diringkeskeun kieu: CPU kumaha waé kapaksa maca data anu henteu kedah diaksés ku pangguna. Bayangkeun skénario téoritis ieu: program panyerang teu gaduh aksés kana konci énkripsi anu dianggo pikeun ngajagi data sénsitip. Lamun urang maréntahkeun CPU pikeun “maca konci enkripsi dina alamat nu tangtu”, parentah moal dituturkeun. Bantuan datang (ka panyerang) dina bentuk palaksanaan instruksi spekulatif – hiji fitur penting tina CPUs modern, nu geus sabudeureun pikeun ampir tilu puluh taun: pikeun nyepetkeun hal-hal, tinimbang ngantosan hiji instruksi rengse, processor executes salajengna dina. sajajar.
Lamun parentah kahiji cek hak aksés ka informasi sénsitip, sakuduna dina téori ngalarang palaksanaan parentah di handap pikeun maca inpo ieu. Tapi éta telat: parentah di handap ieu dieksekusi spekulatif. Catet yén kami henteu acan gaduh aksés kana data ieu – tapi CPU gaduh. Dina kasus kerentanan anu dipikanyaho sapertos Specter, data samentawis dimuat kana cache CPU, tapi teu tiasa dibaca. Sanajan kitu, eta bisa dibaca ngaliwatan saluran samping; contona, ku ngajalankeun parentah sababaraha kali – waktu ngolah nu beda-beda gumantung kana data dina cache nu. Ngulang operasi sapertos kitu sababaraha kali (rébuan!) kali ngamungkinkeun panyerang cageur data ngan saukur ku ningali kumaha gancang atanapi ngalambatkeun sababaraha paréntah anu sigana teu bahaya dieksekusi.
Urang nyadar yén gambar “basajan” ieu masih disada pajeulit. Makalah anyar malah leuwih ngabingungkeun, utamana saprak pangarang mutuskeun teu méakkeun waktu dina pedaran lengkep serangan. Diagram di handap ngajelaskeun éta lengkep:

Tinjauan saluran samping tina timing palaksanaan samentara. Sumber.
Hayu urang coba pikeun manggihan. EFLAGS mangrupikeun daptar bandéra dina prosesor Intel anu ngalacak kaayaan operasi CPU. Bisa nyimpen hasil itungan, utamana lamun sarua jeung nol (anu disebut null bandéra atawa ZF). Salajengna nyaéta sihir: bayangkeun batur sapagawean anjeun mikirkeun nomer ti 1 dugi ka 10 sareng dipenta pikeun ngahemat pikeun dirina. Anjeun terus nelepon nomer 1 nepi ka 10 (néangan tanda naon pasangan Anjeun tiasa masihan anjeun), tapi maranéhna teu hayang babagi jawaban nu bener sareng anjeun, sarta ngajawab kalawan kecap “chrysanthemum” unggal waktu. Nanging, nalika anjeun ngucapkeun nomer anu leres, aranjeunna peryogi langkung lami pikeun nyarios “chrysanthemum” tibatan waktos anu sanés.
Hal anu sami kajantenan dina serangan anyar ieu: urang ngalakukeun seueur komputasi sareng data sénsitip. Sadaya itungan ieu dilakukeun sacara spekulatif. Hasilna ditulis kana bandéra ZF (sarua atawa henteu sarua jeung nol). Urang teu bisa langsung nyaho status bandéra ieu. Tapi lajeng urang ngajalankeun parentah JCC rada gunana (husus JZ – “luncat lamun enol”) parentah, nu ngajalankeun bit laun lamun guesses urang bener! Sareng telat anu tiasa diukur ieu mangrupikeun kerentanan.
Teu masalah acan
Aspék anu paling narik tina serangan ieu nyaéta yén éta henteu tiasa dianggo nyalira. Pikeun mastikeun palaksanaan spekulatif paréntah anu diperyogikeun tiasa dilaksanakeun, penjahat kedah ngamangpaatkeun hiji deui kerentanan. Makalah anu urang bahas nganggo kerentanan Meltdown, kapanggih dina 2018, anu kalayan senang masihan aksés kana inpormasi anu dilarang pikeun urang luar. Hasilna, data sénsitip dibaca kalawan 100% reliabiliti dina sakabéh CPUs warisan kapangaruhan ku kerentanan ieu (ulikan ieu dipaké 6th jeung 7 generasi Intel Core i7). Sanajan percobaan gagal dina CPUs generasi kasapuluh, maranéhanana ogé encountered reureuh nalika executing parentah nu tangtu ti JCC set.
Kanyataanna, jenis serangan leuwih serbaguna kayaning Spectre, nu maok informasi tina caches CPU, boga aplikasi rada sempit. Tapi sahenteuna dina hal maranéhanana, éta jelas yén hal kudu dipigawé kalayan aranjeunna: kamungkinan serangan nurutan-up nargetkeun data kritis non-enol. Sedengkeun pikeun makalah anyar, urang nuju langkung seueur ngeunaan ideu yén, upami suksés, éta manglaku ka prosesor Intel anu langkung lami.
Tapi warta sorangan penting: ayeuna aya mékanisme saluran sisi anyar pikeun nimba data nganggo daptar status bandéra. Teu bisa maréntah kaluar yén dina mangsa nu bakal datang pendekatan ieu, digabungkeun jeung sababaraha vulnerabilities séjén, ogé bakal dampak CPUs anyar. Atawa meureun sagalana bakal direngsekeun saméméh urang ningali serangan anyar: sanggeus kabeh, gumantungna waktu palaksanaan instruksi on data masalah geulis serius. Aya sakabéh subdisiplin kriptografi anu ngurusan ngajaga algoritma enkripsi tina serangan timing.
Dina sagala hal, panalungtikan ngeunaan spésifikasi CPU modéren lumangsung. Kabeneran, narajang kerentanan hardware sesah ngartos aranjeunna. Sareng bari urang henteu acan ningali naon waé anu tiasa disebarkeun dina skala, infosec di perusahaan anu nanganan data anu sénsitip kedah mertimbangkeun ancaman sareng, sahenteuna, ngawas évolusina.
#Kerentanan #hardware #dina #prosesor #Intel