~/talk

Reverse Engineering Flash Memory for Fun and Benefit

Talkat Black Hat USA 2014 · 2014-08-02..08-07· [security, embedded-and-hardware]
name:Matt Oh
links:none on file
slides:none on file

Desolder NAND with hot air, attach a cheap SOIC socket and FTDI breakout to talk the NAND bus, and use a Python tool to dump raw pages including OOB, ECC and bad‑block markers. Practical results include 50 KB/s page reads versus 240 KB/s block read with a Samsung mode, extracted U-Boot and JFFS2 images mountable on Linux, and a one‑byte patch that defeats tamper detection. Hardware reflow and resoldering prove reliable for recovery. FTDI MCU-host bus emulation

AI-written summary · about

  1. 0:00Intro
  2. 1:38The targeted device
  3. 4:19Equipment & Supplies
  4. 5:24Too much heat?
  5. 7:53FTDI FT2232H breakout board
  6. 8:40MCU Host Bus Emulation Mode
  7. 10:17Data control lines
  8. 11:04Read operation example
  9. 11:52Basic command sets for usual NAND Flash memory (small blocks)
  10. 14:17Reading a small block page
  11. 21:01Write operation pin states
  12. 21:48ECC (Error Correction Code)
  13. 23:20Example - P8 calculation
  14. 23:53Example - P2 calculation
  15. 24:08ECC calculation code
  16. 25:13Example bad block check routine
  17. 27:41An example of Flash memory layout
  18. 29:01U-boot boot code
  19. 29:14Custom boot code
  20. 30:20Kernel image disassembly
  21. 34:27Mounting JFFS2 file system using a MTD
  22. 36:22Bridge & damaged pins
  23. 38:35Tamper detection
  24. 43:07Conclusion
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.