TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Hard disk hacking

275 pointsby dil8over 10 years ago

17 comments

mojoeover 10 years ago
I am very curious about how long this hack took to complete. I write firmware for SSD controllers for a living, and this would probably take me many months of full-time work to pull off with an unknown controller (granted, I generally work on algorithms at a slightly higher abstraction layer in the firmware, and some of my colleagues who are more focused on the hardware interfaces could figure something like this out much faster than me). I am incredibly impressed by this effort.<p>Also, I want to mention that it&#x27;s common to have multiple processors in storage controllers. I can&#x27;t talk about the specifics of the drives that I work on, but for SSDs at least there are several layers of abstraction: the host interface to receive the data, a middle layer to perform management of the data (SSDs require things like wear leveling, garbage collection etc in the background, to ensure long life and higher I&#x2F;O speeds), and a low level media interface layer to actually write to the media. These tasks are often done by different processors (and custom ASICs).
评论 #8666730 未加载
评论 #8666798 未加载
评论 #8666387 未加载
评论 #8666468 未加载
userbinatorover 10 years ago
I think it&#x27;s rather unfortunate that the workings of modern HDDs (and other storage devices, like SSDs, microSD cards, etc.) are all hidden behind a wall of proprietariness, as this is mainly a form of security through obscurity; and government agencies probably know about such means of access already, while not many others do.<p>Although they&#x27;re largely obsolete today, for many years the most well-documented and open storage device that could be connected to a standard PC was the floppy drive. The physical format was standardised by ECMA, the electrical interface to the drive nothing more than analog read&#x2F;write data and &quot;dumb&quot; head-positioning commands, the controller ICs (uPD765 and compatible) interfacing it to the PC were based on simple gate arrays (no need for any firmware), and all the processing was otherwise handled in software. The documentation for the earliest PCs included the schematics for the drive, and the ICs on it were documented elsewhere too - e.g. <a href="https://archive.org/details/bitsavers_westernDigorageManagementProductsHandbook_23366933" rel="nofollow">https:&#x2F;&#x2F;archive.org&#x2F;details&#x2F;bitsavers_westernDigorageManagem...</a> A lot of the technical details of early HDDs were relatively open too. I&#x27;ve interfaced a floppy drive to a microcontroller before, and being able to see how the whole system works, to understand and control how data is read&#x2F;written all the way down to the level of the magnetic pulses on the disk, is a very good feeling.<p>(Many earlier systems that came before the PC, like the C64, also had more-or-less completely open storage devices, enabling such interesting things as <a href="http://www.linusakesson.net/programming/gcr-decoding/index.php" rel="nofollow">http:&#x2F;&#x2F;www.linusakesson.net&#x2F;programming&#x2F;gcr-decoding&#x2F;index.p...</a> )
评论 #8666733 未加载
schoenover 10 years ago
There were several amazing talks at hacker conferences last year about reprogramming storage devices so that they can tamper with their contents. This researcher&#x27;s talk was one of those. Another significant one was<p><a href="http://events.ccc.de/congress/2013/Fahrplan/events/5294.html" rel="nofollow">http:&#x2F;&#x2F;events.ccc.de&#x2F;congress&#x2F;2013&#x2F;Fahrplan&#x2F;events&#x2F;5294.html</a><p>and I think there were at least two others that I can&#x27;t find right now (plus recent stuff on USB devices that attack their hosts in various ways). In light of these and other firmware and hardware-borne threats, a good overview of the bigger verification and transparency problems is<p><a href="http://www.slideshare.net/hashdays/why-johnny-cant-tell-if-he-is-compromised" rel="nofollow">http:&#x2F;&#x2F;www.slideshare.net&#x2F;hashdays&#x2F;why-johnny-cant-tell-if-h...</a>
jarekover 10 years ago
Also might be of interest: Bunnie&#x27;s hack of SD cards last year <a href="http://www.bunniestudios.com/blog/?p=3554" rel="nofollow">http:&#x2F;&#x2F;www.bunniestudios.com&#x2F;blog&#x2F;?p=3554</a><p>&quot;An Arduino, with its 8-bit 16 MHz microcontroller, will set you back around $20. A microSD card with several gigabytes of memory and a microcontroller with several times the performance could be purchased for a fraction of the price. While SD cards are admittedly I&#x2F;O-limited, some clever hacking of the microcontroller in an SD card could make for a very economical and compact data logging solution for I2C or SPI-based sensors.&quot;<p>&quot;The embedded microcontroller is typically a heavily modified 8051 or ARM CPU. In modern implementations, the microcontroller will approach 100 MHz performance levels, and also have several hardware accelerators on-die.&quot;<p>Was discussed on HN, but Algolia search looks to be down at the moment.
评论 #8668137 未加载
评论 #8669369 未加载
评论 #8671729 未加载
dslover 10 years ago
Most people are surprised when I tell them that their computer is a lot of little computers working together on a sort of internal network.<p>This is why if your machine is compromised, and you have a threat model that involves serious (state or otherwise well funded) attackers, you really should just send it off to be recycled.
评论 #8666900 未加载
评论 #8666672 未加载
评论 #8666506 未加载
larrysover 10 years ago
I learned today what a jellybean part was:<p><a href="http://en.wikipedia.org/wiki/J%E2%80%93Machine" rel="nofollow">http:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;J%E2%80%93Machine</a><p>&quot;cheap and multitudinous commodity parts, each with a processor, memory, and a fast communication interface&quot;<p>This reminds me of when I first went into business and bought some machinery. It actually surprised me (at that young age) to learn that the production machine I bought used standard parts that I could buy anywhere (bolts, screws and the like) and that if I needed one I didn&#x27;t have to order it from the company that I bought the machine from. That seems obvious to me today but it wasn&#x27;t obvious back then (&quot;back then&quot; was way before the web of course where info was not readily available)
pronoiacover 10 years ago
The server is overwhelmed. Coral cache: <a href="http://spritesmods.com.nyud.net/?art=hddhack&amp;page=1" rel="nofollow">http:&#x2F;&#x2F;spritesmods.com.nyud.net&#x2F;?art=hddhack&amp;page=1</a>
评论 #8666805 未加载
评论 #8666700 未加载
bajsejohannesover 10 years ago
This reminds me of a quite wonderful talk at Oscon earlier this year: <a href="http://www.oscon.com/oscon2014/public/schedule/detail/33943" rel="nofollow">http:&#x2F;&#x2F;www.oscon.com&#x2F;oscon2014&#x2F;public&#x2F;schedule&#x2F;detail&#x2F;33943</a> (slides available, but I don&#x27;t recognize the file format)<p>The high point for me is where he installs Linux on the hard drive. In the sense that the hard drive itself is running Linux.<p>There are quite a few venues for attacks like these: A single computer is sprawling with processors.
评论 #8672113 未加载
yohaover 10 years ago
Here is the previous discussion for those interested: <a href="https://news.ycombinator.com/item?id=6148347" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=6148347</a>
kev009over 10 years ago
This is really interesting stuff. Any pointers for getting into this kind of thing?
评论 #8666214 未加载
rasz_plover 10 years ago
Similar project for Samsung SE-506CB external Blu-Ray<p><a href="https://github.com/scanlime/coastermelt/" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;scanlime&#x2F;coastermelt&#x2F;</a><p>very cool live hack video diary<p><a href="http://vimeo.com/channels/coastermelt/110257380" rel="nofollow">http:&#x2F;&#x2F;vimeo.com&#x2F;channels&#x2F;coastermelt&#x2F;110257380</a><p><a href="http://vimeo.com/channels/coastermelt/111417458" rel="nofollow">http:&#x2F;&#x2F;vimeo.com&#x2F;channels&#x2F;coastermelt&#x2F;111417458</a>
pingecover 10 years ago
I really like his article about dumb to managed switch conversion. I wonder if more projects like this exist perhaps with some existing community. Would be really cool if one could buy a cheapo switch and hack it to a managed one in a similar fashion like you can flash OpenWrt on some cheap routers and make them 100x better.
jeffhuysover 10 years ago
Aw... Was reading, clicked to page 5:<p>&gt;Warning: mysql_connect(): Can&#x27;t connect to MySQL server on &#x27;127.0.0.1&#x27; (111) in &#x2F;var&#x2F;www&#x2F;spritesmods&#x2F;connectdb.php on line 2<p>Edit: seems to work again!
评论 #8666986 未加载
TheLoneWolflingover 10 years ago
So... what&#x27;s the Cortex used for?
评论 #8667679 未加载
评论 #8668764 未加载
评论 #8667505 未加载
themoogleover 10 years ago
I want to take this and go further. Have a mini linux distro running on my drives :D
teknotusover 10 years ago
I really like the idea of using this as a defensive measure.
jrockwayover 10 years ago
I wouldn&#x27;t trust the data on a hard drive anyway, since the hard drive can be removed and the data changed. If you want to make sure you&#x27;re reading _your_ &#x2F;etc&#x2F;shadow, it needs a message authentication code. If you want to prevent others from reading your disk, it needs to be encrypted.
评论 #8669218 未加载
评论 #8666704 未加载