SSD Rentan terhadap Serangan Korupsi Data Tingkat Rendah yang Disengaja

Flash NAND

Selama dekade terakhir, solid state drive (SSD) telah beralih dari alternatif yang sangat langka (dan mahal) ke hard drive menjadi pilihan penyimpanan pilihan bagi para penggemar dan pengguna seluler. SSD adalah salah satu cara terbaik untuk meningkatkan kinerja sistem lama dengan hard drive tradisional, dan biayanya turun di bawah 50 sen per GB. Namun makalah baru dari Carnegie Mellon University, Seagate, dan ETH Zurich telah menunjukkan bahwa cara data diprogram ke dalam MLC SSD membuatnya rentan terhadap serangan kerusakan data, yang berarti mengurangi masa pakai hard disk dalam prosesnya. Itu penting, karena drive MLC merupakan sebagian besar SSD dalam pasar.

Sebelum kita menyelami temuan, (PDF) mari luangkan waktu sejenak untuk mendefinisikan beberapa istilah. SSD pertama yang dikembangkan menyimpan satu bit data per sel dan disebut sel level tunggal (SLC). Perangkat ini diprogram dalam satu tahap dan tidak rentan terhadap metode serangan yang akan kita diskusikan.

Jenis NAND berikutnya menyimpan dua bit informasi per sel dan disebut sebagai sel multi-level, atau MLC. 'Level' mengacu pada jumlah status tegangan di dalam setiap sel. Perangkat MLC bekas untuk menggunakan pemrograman satu tahap, tetapi beralih ke metode pemrograman dua tahap di bawah node proses 40nm (sebagian besar hard disk 2D planar NAND diproduksi di bawah 40nm hari ini).



Terakhir, ada SSD sel tingkat tiga, yang menyimpan tiga bit data di setiap sel. Meskipun makalah ini tidak membahas apakah drive TLC rentan terhadap strategi serangan ini, semua yang saya temukan pada proses pemrograman TLC menunjukkan bahwa memang demikian, karena TLC NAND menggunakan siklus pemrograman tiga tahap.

TLCNAND

Tegangan pemrograman NAND, untuk SLC, MLC, dan TLC.

Namun, satu kabar baik adalah serangan yang akan kita diskusikan berhasil tidak bekerja melawan NAND 3D saat ini dari Samsung dan produsen lain, namun. NAND 3D saat ini diprogram dengan sekali pengambilan dan dibangun di atas node proses yang lebih lama (40nm, dalam kasus Samsung). Penulis studi mengharapkan 3D NAND untuk kembali ke pemrograman dua tahap karena teknologi node proses bergerak di bawah 40nm sekali lagi di masa depan. NAND planar 2D modern dibangun pada berbagai node, yang didefinisikan agak berbeda oleh masing-masing pabrikan. Seseorang dapat mengasumsikan 20nm sebagai perkiraan keseluruhan.

Bagaimana serangan itu bekerja

Alasan bahwa MLC NAND diprogram dalam proses dua tahap di bawah node proses 40nm adalah untuk mengurangi kemungkinan perubahan tegangan yang diperlukan untuk menulis data ke dalam satu blok NAND akan merambat ke baris kata yang berdekatan dalam blok yang sama. Ini dikenal sebagai interferensi program sel-ke-sel dan terjadi karena kopling kapasitansi parasit dalam blok memori. Kedua masalah ini adalah salah satu alasan utama mengapa 3D NAND menjadi diperlukan - semakin kecil node proses tempat NAND dibangun, semakin sulit untuk mencegah penulisan ke satu sel agar tidak merusak data di sel lain.

MLC NAND berisi dua bit informasi, atau halaman - bit paling signifikan dan bit paling signifikan (LSB dan MSB). Dalam proses dua langkah, sel pada awalnya disetel ke keadaan sementara di mana tegangan ambangnya kira-kira setengah dari nilai akhir. Tegangan LSB sementara ini kemudian dibaca menjadi buffer di dalam chip flash, kemudian diprogram lagi, memindahkan tegangan ambang batas ke keadaan akhir yang diharapkan untuk sel NAND yang terprogram sepenuhnya. Pengontrol SSD menyisipkan langkah-langkah pemrograman dari setiap sel tertentu dengan langkah-langkah pemrograman sel yang berdekatan untuk meminimalkan kemungkinan kerusakan data.

Gambar5

Inilah masalahnya. Data dimuat ke buffer LSB untuk pemrograman MSB akhir dimuat langsung dari sel flash untuk diprogram, tidak pengontrol flash. Ini mengurangi latensi dan meningkatkan kinerja, karena perutean pekerjaan melalui pengontrol SSD akan memerlukan transfer data. Namun itu juga berarti bahwa jika data yang dimuat dari buffer LSB memiliki kesalahan, kesalahan tersebut secara definis tidak dapat diperbaiki oleh pengontrol SSD - ia tidak pernah 'melihat' data tersebut. Para penulis melaporkan bahwa “tegangan sel akhir bisa salah diatur selama pemrograman MSB, merusak secara permanen data LSB ”(penekanan asli).

Sepupu Rowhammer yang berbasis flash

Kita telah membahas Rowhammer sebelumnya - eksploitasi yang merusak data di RAM dengan membaca dan menulis ke bagian DRAM tertentu untuk membalik bit di area target. Proses pemrograman dua langkah membuat NAND rentan terhadap jenis serangan serupa. Calon penyerang dapat mengeksploitasi gangguan program sel-ke-sel, yang mengeksploitasi kopling kapasitansi parasit untuk memperkenalkan kesalahan dalam sel yang berdekatan, atau dengan menggunakan teknik yang dikenal sebagai gangguan membaca, yang berulang kali membaca kumpulan sel yang sama. Hal ini dapat membuat efek pemrograman lemah yang mampu membalik bit sel yang bahkan tidak sedang dibaca. Sebut saja Cellhammer, jika Anda suka, tetapi hasilnya sama - data rusak dan SSD rusak.

Gambar3

Jenis serangan ini secara signifikan dapat mengurangi umur SSD dengan menimbulkan kesalahan tambahan, seperti yang ditunjukkan pada Gambar 3 di atas. Menurut tim peneliti, saat ini tidak ada satu pun dari berbagai teknik manajemen yang dimasukkan ke dalam SSD yang cukup untuk mencegah serangan ini, meskipun ada beberapa cara agar serangan ini dapat dimitigasi dan satu opsi yang akan mencegahnya sama sekali.

Meja 2

Cara paling langsung untuk menghentikan Cellhammer adalah dengan menyangga data LSB secara langsung di pengontrol SSD. Ini akan mencegah serangan berfungsi dengan mengizinkan pengontrol SSD untuk memperbaiki kesalahan dalam data LSB, daripada mempercayai bahwa data ini akurat dan tidak mengandung kesalahan.

Gambar 10

Namun, ini akan menyebabkan sedikit peningkatan dalam latensi (tim memperkirakannya ~ 5 persen). Tampaknya itu harga yang pantas untuk dibayar sebagai imbalan untuk mengamankan sistem dari serangan semacam ini. Namun tidak jelas apakah ada produsen NAND yang akan mengadopsi kebijakan ini jika menurut mereka hal itu dapat merusak posisi kompetitif mereka terhadap industri lainnya. SSD konsumen dan perusahaan hidup dan mati dengan kemampuannya untuk menampilkan kinerja terbaik di kelasnya.

Kemudian lagi, fitur semacam ini dapat digunakan di perusahaan, di mana perusahaan bersedia membayar untuk keamanan data, bukan hanya kecepatan. Serentetan serangan ransomware baru-baru ini dan kebocoran berbagai alat peretasan NSA dapat memberikan penekanan baru pada memastikan sistem tetap aman dari berbagai macam vektor serangan, termasuk serangan tingkat rendah seperti ini.

Copyright © Seluruh Hak Cipta | 2007es.com