转载

美国国家安全局硬盘固件入侵技术揭秘

近期发现的间谍网络“方程小组(Equation Group)”最令人震惊的部分就是其能用恶意代码对硬盘固件进行重编程的神秘模块。曝光此事的卡巴斯基研究人员称,这一颠覆计算机胃肠道一样的存在——硬盘固件的能力,他们“闻所未闻”。

这种黑客工具被认为是美国国家安全局(NSA)的杰作,它通过重写硬盘固件获得对计算机系统神一般的控制权,即使软件更新都不能阻止它长期潜伏。模块被命名为“nls_933w.dll”,在卡巴斯基发现的间谍平台“方程毒药(EquationDrug)”和“角鲨(GrayFish)”中都有用到,是此类模块中第一个被发现的。

它还具备另一个能力:在硬盘上开辟隐藏存储空间以备攻击者在一段时间后取回盗取的数据。这一能力使得像方程小组一类的间谍,通过将想要获取的文档藏入不会被加密的存储空间来规避硬盘加密。

卡巴斯基目前为止已发现了500个方程小组的受害者,但只有5个在其系统上留存有固件重写模块。重写模块似乎仅在有特殊监视价值的重要系统上留存。卡巴斯基全球研究与分析团队主管科斯廷·拉尤认为,这些是未接入互联网且用硬盘加密进行了保护的高价值计算机。

关于固件重写模块,目前了解的有如下几点:

工作原理

硬盘都有一个控制器,基本上相当于一台微型电脑,包含了一块存储芯片或是闪存ROM(只读存储器)用以存放驱动硬盘的固件代码。

美国国家安全局硬盘固件入侵技术揭秘

当电脑感染了方程毒药或角鲨代码,固件重写模块就被植入到系统,并与主控服务器连接获取恶意代码,然后将之写入固件,代替原本的固件代码。研究人员发现了两种版本的重写模块:一个是2010年编译的,用在方程毒药中;另一个是2013编译的,用于角鲨。

被植入木马的固件使攻击者可以潜伏在系统中,即使软件更新升级都影响不到它。受害者就算怀疑自己的电脑被感染了,想抹掉旧操作系统再全新安装一个以清除恶意代码,恶意固件代码模块还是能够留存在系统中不受波及。它可以再次连接上主控服务器,将系统中被清除掉的其他恶意组件再行安装回来。

甚至就算厂商发布了固件自身的升级更新,恶意固件代码也有可能依然存续。因为有些固件更新只替换固件的某些部分,意味着存放了恶意代码的部分很可能没有被更新重写。受害者唯一的解决办法就是扔掉被感染的硬盘,换块新的。

这种攻击之所以会奏效,是因为固件在设计的时候就根本没考虑过安全性。硬盘生产商不会像软件厂商给软件加签名一样在安装在硬盘中的固件上也来个加密签名。自然,也没有内建的对签名固件进行的核查的验证机制。这也就给他人留下了修改固件的可能。而且固件也是隐藏恶意软件的最佳地点,因为反病毒扫描根本不检查这块地方。用户也没有什么好方法可以读取固件手工检查它是否被篡改了。

这一固件重写模块可以对十几家厂商的硬盘固件进行重编程,包括IBM、希捷、西部数据(Western Digital)和东芝。

拉尤说:“你知道仅仅染指一种硬盘的固件就有多难吗?你需要清楚很多细节,CPU、固件架构,还有它们的运行机制。”这位卡巴斯基的研究员称之为“一项令人震惊的技术成就,充分证明了‘方程式小组’的能力。”

一旦固件被替换成植入了木马的版本,重写模块便会创建能与系统中其他恶意模块通信的应用程序接口(API),并访问硬盘上攻击者想藏匿所盗数据的隐藏扇区。他们将这些数据放在硬盘上所谓的“服务区”中,也就是硬盘为自身内部操作存储数据的地方。

正文到此结束
Loading...