jenhaoliu
|
分享:
x0
|
[资讯教学] HT易遭攻击 Intel暂不修正
超执行绪(Hyper-Threading)技术爆发资讯安全疑虑,日前英国牛津大学电脑系学生Colin Percival提出研究报告,指此类架构处理器易受名为时序攻击(Timing Attack)的间碟程序监视,导致加密资料外泄。Intel认为此问题的安全疑虑不大,希望透过系统软体商更新程式来避免;事实上此类攻击已发生千余次,而彻底解决的方式是更改处理器设计。据了解,目前Intel并无修正处理器的相关计画。
时序攻击是透过相异执行绪监视共享快取中的特定资料完成,这个可能性早在2002年底就已被初步讨论过,2004年10月,Percival针对同步多执行绪(Simultaneous Multithreading)处理器进行研究,并在2005年2月底与Intel及其他软硬体制造商展开相关问题商讨;至2005年5月中旬正式公布报告前,多数Unix系统供应商及组织已提出对策或回应。Precival接受本刊访问时指出,自从与Intel联系后,该公司据悉已和系统供应商讨论,但并未提供进一步对策或讯息。
由于Intel是目前市场上最大的处理器供应商,而多数产品和未来规画产品、包括64位元与Dual Core处理器都将支援Hyper-Threading同步多执行绪功能,因此所受影响相对较大。Intel对本刊询问时十分低调,认为此问题与特定平台无关,只要共享单一处理器资源的处理器架构上都会发生,可由修正系统软体解决;该公司已在数个平台上测试,但并不方便以书面方式提供已测平台等详细的测试资讯。
基本上,时序攻击的原理是藉由观察快取记忆体里未清除的资料,来达到撷取如OpenSSL加解密资讯等特定资料的目的。在处理器架构上,因为同步多执行绪功能可将单一实体处理器模拟成两个以上共用暂存器、快取记忆体的个别处理器,所以更容易完成时序攻击。在时序攻击发生时,间碟程式计算加/解密执行绪特定快取资料的执行时间,以得知欲撷取资料何时会出现在快取记忆体中,然后就能偷得解密讯息。
重点是,间碟程式进行此工作并不需要保护模式下的核心执行特权(Privilege),也就是一般程式都有可能监视快取记忆体内容。在多人使用的系统上,不怀好意的使用者可以利用这类方法,偷取其他使用者的加密资料;即使在个人使用的系统,也可能有间碟程式进行同类资料窃取工作。除了用时序攻击盗取资料外,此系统弱点被发现后,也有其他骇客级专家开始研究在无特权状态下干扰其他执行绪的方法。
虽然时序攻击理论上在任何处理器都能存在,但仅有共享内部记忆快取的多执行绪处理器架构最易实践。除了Intel处理器外,部分IBM的POWER晶片及Sun的SPARC处理器也有同类架构,但后两者似乎并没有同类漏洞。在x86平台上,包括单核心、双核心、64位元等处理器,目前仅Intel具HyperThreading的处理器支援同步多执行绪功能;不具此类功能的多处理器平台受同类攻击实现可能性极低。
Percival指出,他所研究的时序攻击问题的确可藉修改作业系统软体来避免,但至目前为止,所有的系统都是以「关闭HyperThreading」来确保安全。Percival认为要真正解决可能发生的安全漏洞,改变硬体设计是较为彻底的方式,任何执行绪所使用的快取资料应有不被其他执行绪读取的独占性;而作业系统执行应用程式时,也能以更复杂的方法判定程式执行动作。
虽然含Intel在内所有的厂商都强调此类攻击机率不大,但确实发生过却是不争的事实,除了Intel外,目前所知相关厂商多半建议彻底关闭HyperThreading功能,以免在问题确实解决前遭到不测。
|