Joined: 23 Jun 2012 Posts: 2
Location: Mountain View, CA
Posted: Mon Jun 25, 2012 11:47 Post subject: Recovery at home -- a tale of SD cards and woe...
I've been browsing the web for the past few days, and it seems like there really is precious little information out there on on-flash formats...
A few weeks ago, I dropped my laptop, and it landed on the SD card sticking out of the side of it, resulting in
a pretty ghastly scene. I figured that since I didn't care about the data all *that* much, I wasn't worried about make things worse, and so I got to work building some hardware to dump the NAND flash out. A bunch of hacking later, I have what seems like a reasonable looking dump of the flash -- the entropy level looks right, and there are definite patterns to it -- but it appears to be arranged in a way that makes very little sense to me, and there are not any of the strings that I expect in it. (You can see the full set of photos from what I did here, if anyone is wondering what people do when they *don't* have real labs to do this all in )
Looking around the web, it looks like a handful of these cards are XORed, but when I tried XORing the first 32MB or so with all single-byte combinations, I still didn't get the 'FAT32' string that I expected to be in there. This is using an EN2683B-BA controller; it seems like it's a something along the lines of http://flash-extractor.com/library/SM/EN2683/EN2683__ec_de_d5_7a__2x1 , though I'm not sure exactly what the above maps to. How does the wear leveling work on these? Am I wrong in expecting the 'FAT32' string to be at the beginning? Also, has anyone ever managed to extract a datasheet for the controller out of Silicon Motion?
If anyone can give me a hand with this, I'd be more than happy to share my RTL for the FPGA so that people can dump even tougher flash devices.
(bonus in the link above: my attempts to reconnect with the original flash controller. I bought another two of the same type of SD card -- the same SKU from Amazon, even! -- but it was too late, and they had switched to two packages, presumably with a different firmware on the flash controller. I also attempted to reuse the original flash controller, but I think it probably got fried by a pin-to-pin short when the card originally got crumpled.)
Best regards, and thanks to anyone who might be able to help!