
Data Recovery from “Scrubbed” NAND Flash Storage: Need for Analog Sanitization Md Mehedi Hasan and Biswajit Ray Department of Electrical and Computer Engineering, University of Alabama in Huntsville, Huntsville, AL 35899 USA Outline • Motivation and background Flash Translation Layer (FTL) NAND memory system Address Error Wear State-of-the-art sanitization methods Mapping Correction Leveling Threat model Scrubbed image • Experimental evaluation Original image Recovered image Attack demonstration Overwrite Partial Bit recovery efficiency Erase Erase • New ideas and conclusion 1. Reprogram all bits to a higher value 2. History dependent erase Page-level analog sanitization Future work Motivation: Preserving user privacy According to the Data Protection Act (DPA) 2018, the deletion of information must be real Flash is ubiquitous Unfortunately, flash users don’t have the capability for instant data sanitization Data remains in the non-volatile flash media long after user-deletion Background: NAND flash memory system Solid State Drive Memory cell File System Control Gate Blocking Oxide I/O with logical address - - - - - Floating Gate Flash Translation Layer (FTL) - - - - - Memory Tunnel Oxide Controller Address Error Wear Mapping Correction Leveling Source Drain Si- Substrate Garbage Collection I/O with physical address Vref Memory Program state Chip Erase state ….. 1 0 block page NAND Array Threshold voltage Flash is a charge based analog memory Why instant-sanitization is a problem? Bit Line Copy valid pages to a new block Select Gate 1 block WL N Deleted page 1111111111…. Valid page-1 Valid page-1 1111111111…. Valid page-2 1 page Deleted page 1111111111…. Valid page-3 Deleted WL 1111111111…. 2 pages Block erase WL1 Valid page-2 1111111111…. Empty page 1 cell Valid page-3 1111111111…. Empty page WL0 Select Old block Old block New block Gate Ground • Erase takes place block by block • Hefty overhead is involved for using block erase • Write/read happens page by page • No command is available for page deletion State-of-the-art sanitization methods 1) Logical sanitization Invalid page address 2) Encryption based sanitization Data block Key storage block 00101001001 00101001001 Encrypted page Valid page-1 Update page- Valid address Encrypted page Other file’s key 011100010101 mapping table 011100010101 Encrypted page Other files key Valid Valid pages addresses Empty page Empty page Empty page Empty page Empty page Empty page Empty page Empty page Not secure 3) Over-write based sanitization Key points: 00101001001 0x0000000.. • Logical sanitization is quick but not secure Valid page-1 Valid page-1 • Encryption techniques are used in high end 011100010101 All-zero overwrite 0x0000000.. Valid Valid system. It also needs key-sanitization. pages pages • All-zero overwrite offers page level digital Empty page Empty page sanitization Empty page Empty page Does all-zero overwrite ensure true sanitization? Digital: Old zero New zero After After Page n 1 0 1 1 1 0 1 0 1 0 0 1 1 1 0 1 1 1 0 1 0 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 few days overwriting 횫퐕퐭 Analog: 푽풓풆풇 푽풓풆풇 푽풓풆풇 Erased state Programmed state Erased state Programmed state Weak “0” Strong “0” 1 0 1 0 Threshold Voltage Threshold Voltage Threshold Voltage Key points: • Flash memory slowly loses charge due to data retention effects • All-zero overwrite crates strong and weak zeros with different threshold voltages Threat model and experimental set-up Flash memory chips Adversarial Model and Assumptions: • Adversary has physical access to the flash chip • Adversary can perform low-level memory operation Our Experimental Set-up Flash memory chip TSOP Socket Interface device Computer interface Outline • Motivation and background Flash Translation Layer (FTL) NAND memory system Address Error Wear State-of-the-art sanitization methods Mapping Correction Leveling Threat model Scrubbed image • Experimental evaluation Original image Recovered image Attack demonstration Overwrite Partial Bit recovery efficiency Erase Erase • New ideas and conclusion 1. Reprogram all bits to a higher value 2. History dependent erase Page-level analog sanitization Future work System commands to probe analog properties Method-1: Read Retry Method-2: Partial Erase Shifting the read reference level RESET command Terminate erase prematurely status 푽풓풆풇 푽풓풆풇 Erase Erase Erased state Weak “0” Strong “0” Erase Weak “0” Strong “0” 1ms 3ms Time state 1 0 1 0 Threshold Voltage Threshold Voltage Key points: Key points: • Many SLC chips do not offer this feature • Prior characterization of partial erase • Very small voltage (Vref) shifts are allowed time is needed Results: Data recovery process Data recovery process Original image Image after bake Scrubbed image Recovered image (inverted) Digital 3 hrs bake All-zero Partial @120 0C Scrubbing Erase (a) (b) (c) (d) Vref Programmed state ref ref Vref V Erased (after DR) V Weak “0” Erased Programmed state Strong “0” Weak “0” Analog state state Strong “0” 0 1 0 1 0 0 1 0 V V V (a’) V (b’) (c’) (d’) Results: Bit accuracy of recovered image Bit accuracy (%) accuracy Bit Bit accuracy (%) accuracy Bit Micron 8Gb SLC chip Toshiba 2Gb SLC chip Micron 4Gb SLC chip Partial erase time (ms) Bake time (hour) Key points: • Approximately 70% bits are correct in the recovered image • Higher the bake time more is recovery efficiency • All the bits are not recoverable due to overlap in Vt distribution Outline • Motivation and background Flash Translation Layer (FTL) NAND memory system Address Error Wear State-of-the-art sanitization methods Mapping Correction Leveling Threat model Scrubbed image • Experimental evaluation Original image Recovered image Attack demonstration Overwrite Partial Bit recovery efficiency Erase Erase • New ideas and conclusion 1. Reprogram all bits to a higher value 2. History dependent erase Page-level analog sanitization Future work Ideas for analog sanitization Idea-1: Reprogram all the bits to a higher threshold voltage level Vref Vref Key points: Weak Strong New “0” Erase • Need design change of flash chip “0” “0” Analog sanitization • Not possible with current chips state 1 0 0 0 Threshold Voltage Threshold Voltage Idea-2: Create weak zeros during all-zero overwrite using page creation history Vref Key points: Vref Old “0” Weak Strong • Use partial program for weak-zero Erase “0” “0” Analog sanitization New “0” creation 1 0 state 0 • Partial program time depends on state-decay model Threshold Voltage Threshold Voltage Conclusion and future work 1) All-zero overwrite is vulnerable Future Work: 횫퐕 푽풓풆풇 퐭 1. Attack demonstration on MLC, TLC and 3D NAND Weak “0” Strong “0” 2. Experimental evaluation of the new ideas Threshold Voltage 2) New ideas for page-level analog sanitization 1. Reprogram all bits to high voltage 2. History dependent weak-zero erase Thank You Mr. Md Mehedi Hasan Dr. Biswajit Ray email: [email protected] email: [email protected].
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages16 Page
-
File Size-