黑基Web安全攻防班
安基网 首页 资讯 安全报 查看内容

PortSmash超线程漏洞可能导致私钥被盗

2018-11-7 06:52| 投稿: lofor |来自: 互联网


免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!

摘要: 研究者发现了一个名为PortSmash的新的侧道漏洞,它使用定时攻击来窃取同一CPU核心中运行SMT /超线程的其他进程的信息。利用这种攻击,研究人员能够从与其利用相同的核心运行的OpenSSL线程窃取私人密钥。SMT/Hyper-th ...

研究者发现了一个名为PortSmash的新的侧道漏洞,它使用定时攻击来窃取同一CPU核心中运行SMT /超线程的其他进程的信息。利用这种攻击,研究人员能够从与其利用相同的核心运行的OpenSSL线程窃取私人密钥。

SMT/Hyper-threading是指一个物理CPU内核被分割为两个虚拟逻辑内核,可以同时使用两个运行两个独立进程线程的虚拟逻辑内核。这种方法可以提高性能,因为两个线程将更有效地利用空闲CPU资源,以更快地执行指令。侧通道定时攻击是指攻击者分析线程迅速执行特定指令,并利用这些信息逆向查找输入数据。

PortSmash漏洞由研究人员Billy Bob Brumley,Cesar Pereida Garcia,Sohaib ul Hassan和来自芬兰坦佩雷理工大学的Nicola Tuveri和古巴哈瓦那大学的Alejandro Cabrera Aldaya发现。 他们向OSS-Sec邮件列表提供了一份报告,他们的研究报告已经作为一份题为“娱乐和利润的端口争用”的论文提交,IACR eprint目前正在等待审核。

Tuveri向媒体解释,端口争用被用于衡量OpenSSL执行操作所需的时间。通过这些测量数据,研究人员能够逆向查找以恢复私钥。

在一个线程上运行的进程会拥有自己的指令和数据,但它将与在并行线程上运行的进程共享一些硬件资源。

指令将在更简单的操作中独立解码,并在CPU中流水线化到相应的执行单元。每个核心都有一个完整的一组执行单元支持整个指令集,同一核心的线程共享访问执行单元。执行单元被捆绑在一起,每个单元都可以通过一个端口访问:来自两个线程的微型组件被分配到(一个)可用端口,而另一个微组件,即核心调度器,当相同的微型组件被分配到不同的等效执行单元时,可以优化公平性和性能端口。

这些端口是就争用的对象。例如,假设在特定加密操作期间受害者进程使用端口5:当受害者进程未使用端口5时,在另一个线程上运行的间谍进程将具有在端口5上重复执行的访问; 一旦受害者进程在端口5上进行操作,调度程序就会将操作从间谍进程中延迟以确保公平。因此,间谍过程可以测量端口5的操作执行的延迟,并确定受害者进程何时使用相同的端口。这象征着输入信息可被处理,恢复私钥。

虽然研究人员只在英特尔Skylake和KabyLake处理器测试了此漏洞,但他们预计它也可以在AMD Ryzen处理器上运行,将PoC移植到其他应用程序中窃取信息只是时间问题

目前针对攻击的修复程序已经被添加到OpenSSL 1.1.1中,对于那些需要旧版本的人,>= 1.1.0i版本可以使用补丁。

缓解此攻击的唯一方法是在计算机上禁用SMT /超线程。但是超线程不会就此消失,因为许多组织已经在支持SMT /超线程的硬件上投入了大量资金,以便为企业应用程序提供更好的性能,从这些环境中完全删除超线程的代价太大。

 

本文由 黑客视界 综合网络整理,图片源自网络;转载请注明“转自黑客视界”,并附上链接。


小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里 注册账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!



免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!


鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

最新

返回顶部