Ubuntu创始人: 专有固件存安全威胁

Mark Shuttleworth是流行的Ubuntu Linux发行版的创始人。他认为专有及不可验证的固件代码对用户构成严重的安全威胁,他鼓励硬件厂商通过改用Linux内核来实现对创新的支持。

“如果你翻翻爱德华·斯诺登为我们提供的间谍工具和数字化武器目录,你会看到你的设备上的固件是国家安全局的最好朋友,”Shuttleworth周一在一篇博客文章中表示。

“一个最大的错误有可能是认为国家安全局是唯一滥用信任的机构——事实上,完全可以合理的假设,所有的固件只不过是一条不安全的臭水沟,一方面是拜一些糟糕的厂家的无能所赐,另一方面太多的如国安局一类的机构又相当地能干,“他说。

Shuttleworth认为,制造商的习惯是通过固件增加对新功能的支持,因为在过去,他们是连带Windows操作系统一起卖计算机的,他们是不能改变Windows操作系统的。他表示,然而,Linux的情况不是这样,而且,Linux在在嵌入式设备新世界里“几乎可以肯定是重要的平台”。

ACPI(Advanced Configuration and Power Interface,高级配置和电源接口)是一个使操作系统能够发现配置和监视硬件组件的规范。据Shuttleworth说,这样的规范是不应该在未来的设备设计中再出现的一个例子。

“主张在下一代设备上再用ACPI无异于主张在你的客厅和在数据中心装一个巨大的洛伊特木马,”他说。“我去过特洛伊,那里所剩无几。”

多年来,安全研究人员在许多设备的专有固件里发现过漏洞,从信用卡读卡器到路由器和工业控制系统。他们普遍认为,那些软件在开发时没有考虑到安全。

十一月,来自Rapid7的安全研究人员透露,服务器制造商Supermicro的主板IPMI(智能平台管理接口)固件有严重的安全漏洞。IPMI允许系统管理员通过BMC(基板管理控制器)从他们的主要操作系统之外远程地直接连接到主板的南桥和各种传感器,以管理和监视服务器。

上周,Replicant(一款基于Android的操作系统)开发者声称,他们发现了三星Galaxy设备的一个后门,是由于固件上处理控制调制解调器和Android操作系统之间通信的专有代码(又名基带固件)的一个漏洞引起的。

其他安全研究人员也在过去就基带固件漏洞提出过警告,在移动设备中这些漏洞可以用来绕过主操作系统设置的安全控制。

“专有固件可以在本来安全的平台上引入漏洞,”伦敦安全公司MWR InfoSecurity公司的安全顾问Henry Hoggard周二通过电子邮件表示。“固件本身也可能含有后门程序,因而会给予攻击者以高权限访问系统。”

Shuttleworth表示,相比之下,Ubuntu以及一般的Linux的情况是,在代码中发现任何问题时有适当的的流程确保问题得到修正,相应的补丁会及时地发送给数百万用户,“发现和解决固件问题的流程是不存在的,而且也没有改善“。

Ubuntu创始人认为,正因为如此,硬件制造商应该开始增加新特性里直接进入Linux内核的支持,并且应该只提供 “描述硬件之间的联系和依存关系的陈述性固件,而不包括可执行代码。”

Hoggard表示,这在理论上是一个很好的做法,因为这样之下,代码可以让更广泛的人查看,漏洞就更容易被发现并进行修正。“这样用户知道自己的系统上没有恶意组件就会更安心些。”

Hoggard指,不过,实行时的具体安排还是有一些问题,供应商可能不希望花时间等待他们的代码被接受进入Linux内核里,而且他们可能发现现存的模式更简单更易于管理而会继续坚持用现存的模式。供应商还可能因为涉及到暴露自己的知识产权(例如内部开发的算法)而不愿意使用这种方法。