硬件骇客 Bunnie Huang在 Chaos计算机俱乐部大会上进行了一次演讲,道出了一些好消息和坏消息。想听好消息么? SD卡包含功能强大、便携的的微控制器,这对骇客和这方面爱好者而言非常有用。那坏消息呢? SD卡远不如想象的安全。 在一篇详细,且可读性好的 文章中, Huang介绍了有关闪存的精度问题。为了降低价格并增加存储空间,工程师们不得不面对内部永无止境的信息熵,它们会缓慢而稳步的打乱每一个闪存驱动器上的数据。 Huang写道: Flash 存储非常便宜。事实上,这么便宜,真是让人难以置信。在现实中,flash存储有很多漏洞——无一例外。持续可靠的存储媒介的假象是通过复杂的错误修正和 坏块管理功能打造的。这是工程师和自然力量之间持续的军备竞赛的结果;通过缩短制作工艺,存储变得更加便宜,但更加不可靠。同样的,通过每次升级,工程师 们提出了更加复杂的算法,在原子级别上补偿自然力量的熵和随机的习性。 为了与这些错误做斗争,SD卡必须过度工程化来保证数据保持能力在一个可接受的级别。它们也包 含固件,比如,这些固件可以在没有改变真实可用空间的情况下,改变可见的可用空间。这意味着你可以把2GB的卡当作4GB的卡卖——你的电脑在没有开始填 充那些虚假空间之前,无法发现其中的区别。此外,你可以使用这个工具检测你的卡。 下面是更坏的消息:因为这些卡包含固件,这个固件可以升级。Huang报告称大多数生产厂商不管这个升级特性的不安全性。换句话说,千万不要在你清 空一个Flash设备的内容后,就认为它是空的。例如,这些卡可以在隐藏的存储区域制作一个内容的拷贝,或者它在闲置时运行恶意的软件。 好消息是:Huang也提到这些卡可以重编程变为Arduino式的开源微控制器和存储系统。 “一个Arduino,拥有8位16MHz微控制器,需要花费大约20$。一个microSD卡,拥有几个G的存储空间和几倍性能的微控制器,可以只花费 相当于Arduino零点几的价钱。”他写道。 所以,简单来说,如果你在SD卡上有什么不干净的信息,那就销毁它,并注意那些超小、超快的Arduino的hack行为。 |