Lazy FPU Save/Restore漏洞指的是什么
本篇文章为大家展示了Lazy FPU Save/Restore漏洞指的是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
0x00 漏洞背景
2018年6月14日,Intel 官方披露处理器中浮点寄存器状态推迟保存的特性存在漏洞,利用此漏洞,结合推测执行和侧信道攻击可以泄露另一个进程的浮点寄存器状态,可能造成敏感信息泄露。漏洞编号为:CVE-2018-3665。
360-CERT 团队经过评估,认为漏洞风险等级高危,建议用户参照相关缓解措施进行防御。
0x01 漏洞描述
现代处理器在进程切换时可以选择推迟保存和恢复某些CPU 的上下文状态来提高系统性能。
其中FPU 为浮点单元,可用于高精度浮点运算,因为不是所有的应用程序都使用FPU,所以利用推迟保存/恢复的特性,如果新调度的进程不使用FP 指令,则不需要切换FPU 上下文状态,以此来减少执行周期,提高性能。当新进程使用FP 指令时,会触发“设备不可用(DNA)”异常,通过异常处理来切换FPU 上下文状态。
利用该特性,可以通过推测执行和侧信道攻击在触发DNA 异常前读取之前进程的浮点数寄存器缓存中的值。
同样具有该特性的还有SSE,AVX,MMX,而且AES的加密密钥通常会存放在SSE寄存器中,这可能使攻击者能够窃取更多有效信息。
0x02 影响产品
Intelő Core-basedmicroprocessors
0x03 修补方案
针对Linux,系统开发人员可以通过eagerfpu=on 参数来启动内核,使用Eager FP恢复模式来代替Lazy FP恢复模式,Eager FP恢复模式下,无论当前进程是否使用FPU,都会保存并恢复FPU 上下文状态。
针对Windows,目前Lazy restore 在Windows 上默认开启,且无法被禁用,需要微软官方提供最新补丁修复。
上述内容就是Lazy FPU Save/Restore漏洞指的是什么,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网行业资讯频道。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341