聚焦源代码安全,网罗国内外最新资讯!

编译:奇安信代码卫士团队

英国伯明翰大学的研究人员发现了另外一种攻陷 Intel SGX 安全enclave 机密性的方法。而 Intel SGX 安全 enclave 本应是敏感计算的 “安全屋“。

几年来,SGX (用于设置所谓安全 enclave 的安全指令) 一直以来被信息安全圈子抨击。这些 enclave 意在托管甚至连计算机的管理员、操作系统、应用程序、用户和所有人能够访问的软件和数据:我们讨论软件就像反剽窃即 DRM 措施(解码云服务器中的加密媒体柳和敏感加密)。这些 enclave 应确保没人能够窃听代码和信息,不管它们是在人们的卧室还是云环境中运行。

2016年对 enclave 的批评发生在 Prime + Probe 和 Rowhammer 攻击发生之后,这些攻击削弱了 SGX 的防护措施。之后迎来了2018年的 Spectre 攻击以及其它一系列破坏 enclave 防护措施的技术。

伯明翰大学的研究人员设法找到了其中一些研究人员在去年开发的攻击 Plundervolt 的一个变种。Plundervolt 时针对近期运行 SGX enclave 的 Intel 处理器的基于软件的攻击,它可降低电压以引发故障或错误,从而使诸如加密密钥之类的秘密得以恢复。去年12月披露该攻击后,Intel 发布微码和 BIOS 更新,删除了降低处理器电压的能力,缓解了该漏洞。

如今,研究人员已在硬件中实现了类似的攻击,而且只需使用价值36美元的现成可用的电子产品即可。他们计划于明年在 Usenix Security 2021 大会上发布自己的研究成果。

VoltPillager 攻击

他们新发现的技术被称为 VoltPillager,适用于 SGX 系统,即使已收到 Intel  Plundervolt 补丁 (CVE-2019-11157) 的系统也不例外。该攻击技术涉及在 CPU 和稳压器之间的串行电压识别总线上注入信息,以控制 CPU 内核中的电压。

由于它并非远程攻击,因此并不要求管理员或用户立即打补丁。攻击要求物理访问服务器(打开服务器添加恶意电路板),因此它主要是针对多租户计算场景的威胁。尽管 SGX 的一半作用是在服务器无法触及以及位于别人的数据中心(如云提供商)时,保护敏感代码和数据免遭恶意服务器管理员操纵,但在云提供商处工作的人员如具有物理访问权限,则可导致 Intel 服务器破坏其 SGX 防护措施。

伯明翰大学的安全隐私部讲师兼该论文的合著者 David Oswald 表示,“该攻击的相关性很高,因为人们常生成 SGX 能够防御恶意内部人员/云提供商。” Oswald 提到在 Intel Xeon E 处理器上运行的微软 Azure DCsv2系列的虚拟机,表示,“即使云管理员和数据中心操作人员能够物理访问服务器,但也无法访问受 SGX 保护的数据。”他表示,”我们展示了事实并非如此,即只需非常低的成本(约30美元),就可对 SGX 发动物理攻击。而且和之前的 SGX 攻击活动不同,我们的研究成果无法被轻易修复(比如微码)。“

缓解措施

论文提到了多种可能的缓解措施,如在 SVID 协议中增加加密认证,使 CPU 监控器成为被注入程序包的 SVID 总线,以及在 enclave 代码中部署应对措施。但论文指出这些措施都不是那么有效。基于硬件的缓解措施如在智能卡中的电压监控电流,但论文认为这种方式要求改变芯片涉及并可能会导致额外开销。

Intel 或不打算修复

但 Intel 公司似乎并不打算尝试这些缓解措施。研究人员在3月份将攻击活动告知 Intel 后得到的回应是“打开箱子篡改内部硬件以攻陷 SGX 并不在 SGX 威胁模型范围内。CVE-2019-11157 (Plundervolt) 的补丁并不是为了保护威胁模型中提到的基于硬件的攻击。“

Intel 公司的一名发言人的发言一摸一样,并表示,“建议将系统更新至最新状态并维护对设备的物理拥有状态。如果数据中心能放在一个口袋中的话,这个建议或者更有意义。

Intel 公司或许并非唯一一家遭遇 VoltPillager 挑战的公司。虽然研究人员并未在其它厂商的处理器上尝试该攻击,但在论文中表示,AMD 依赖于类似的处理器设计中,包括通过 SVI 总线将稳压器连接到 CPU 等。

研究人员总结称,从研究成果来看,依靠第三方和安全enclave 的方法来保护计算机密或许并不明智。论文指出,“论文结果以及厂商不打算缓解这类攻击的决定,让我们重新审视这一承诺是否可行:将敏感计算外包给不受信任的远程平台进行封装执行。”

论文地址:https://www.usenix.org/system/files/sec21summer_chen-zitai.pdf

推荐阅读

Win10发布微码,修复Intel CPU内核数据泄漏新漏洞 (含视频)

Spectre 攻击变体 SgxSpectre 现身 能从 Intel SGX 封装中提取数据

研究人员展示因特尔SGX如何泄露密钥

原文链接

https://www.theregister.com/2020/11/14/intel_sgx_protection_broken/

题图:Pixabay License

本文由奇安信代码卫士编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。

奇安信代码卫士 (codesafe)

国内首个专注于软件开发安全的

产品线。

 觉得不错,就点个 “在看” 吧~

30美元攻陷Intel SGX enclave,Intel 不打算修复相关推荐

  1. 详细介绍Intel SGX开发环境搭建和Hello Enclave程序运行

    这里记录Windows10下搭建Intel SGX开发环境和编写第一个Hello World程序的过程. 总共分为两部分,第一是环境搭建,第二是hello world程序编写.每一步都有截图,希望以通 ...

  2. Intel SGX开发者参考书(四)—— Enclave开发基础(三)

    @Intel SGX 读书笔记- Enclave配置文件 Enclave配置文件是一个XML文件,包含用户定义的Enclave参数,此文件是Enclave项目的一部分.sgx_sign使用这个文件作为 ...

  3. 研究员使用新型CPU攻击技术 “SmashEx” 攻破 Intel SGX

     聚焦源代码安全,网罗国内外最新资讯! 编译:代码卫士 攻击者可滥用影响英特尔处理器中的漏洞 (CVE-2021-0186) 访问存储在enclaves 中的敏感信息,甚至在易受攻击系统上运行任意代码 ...

  4. 小谈Intel SGX

    目录 Intel SGX简介 背景 为什么要Intel SGX? Intel SGX尚处于学术讨论 Intel SGX和可信启动什么关系? 开发者眼中SGX长什么样子? SGX访问控制是什么? MEE ...

  5. Intel SGX入门教程(二)在windows环境搭建intel sgx环境并运行helloworld程序

    一 .环境要求 1.1 实验环境不低于一下要求 64 位 Microsoft Windows 操作系统 Microsoft Visual Studio 2015 英特尔软件防护扩展 SDK 注意:Vi ...

  6. Intel SGX开发者参考书(五)—— Intel SGX SDK示例代码(一)

    @Intel SGX 读书笔记- Intel SGX SDK示例代码 安装Intel SGX SDK后,你可以在[Intel SGX SDK Install Path]src下找到示例代码. 你可以在 ...

  7. Intel SGX入坑必读——《Intel SGX Explained》(个人翻译,持续更新中)

    写在最前 入坑Intel SGX之前先打好基础.<Intel SGX Explained>就是入坑必读之一,有助于理解Intel SGX的原理.这里仅作个人翻译,便于加深理解,也方便感兴趣 ...

  8. Windows10 Intel SGX 环境配置

    1.enable SGX in BIOS 开始 → 设置 → 更新和安全 → 恢复 → 高级启动 - 立即重新启动 → 疑难解答 → 高级选项 → UEFI固件设置 → 重启 Advance 菜单下 ...

  9. Intel SGX开发者参考书(四)—— Enclave开发基础(一)

    @Intel SGX 读书笔记- Enclave开发基础 本章节介绍以下Enclave开发工具: 编写Enclave函数 调用函数到Enclave内 调用函数到Enclave外 将Enclave与库连 ...

最新文章

  1. modified: xxx(modified content, untracked content)
  2. 纷纷布局的全光网,是你所熟知的吗?
  3. 收件箱的邮箱发件人可以批量导出吗_企业邮箱常用技巧,高效处理邮件
  4. C#操作Access数据库 增删改查
  5. 一款已上市MMO手游地图同步方案总结
  6. Nginx + php
  7. 三、spring boot 1.5.4 web容器定制(端口号等修改)
  8. python substr_python数据分析-数据对象(一)
  9. anaconda如何更改环境配置_手把手教新手安装Anaconda配置开发环境
  10. android studio类似软件,使Android Studio更高效的几款插件推荐
  11. 虚函数和虚表指针的例子
  12. 【贪心】蓝桥2020:答疑
  13. 阿里云服务器ECS云盾提醒网站被WebShell木马后门分析与对策
  14. 双一流2020年调整时间_“双一流”调整名单预测,985大学两升一降,两校退出名校阵营...
  15. 一篇真正教会你开发移动端页面的文章(一)
  16. 超实用的大学网课答案搜题软件及公众号有哪些?
  17. 人像优化效果Lr预设
  18. 使用Bootstrap框架写的一个小实例
  19. 人工智能到底是啥_到底什么是人工智能
  20. React.js -学习总结1

热门文章

  1. PHPCMS内容模块标签
  2. Google App Engine已经支持JAVA了
  3. C++ Exercises(十六)---Ethernet帧包结构解析
  4. 用MySQL-zrm来备份和恢复MySQL数据库
  5. ajax异步session值不唯一 总是改变 解决办法
  6. MySQL utf8mb4字符集配置,支持emoji表情存储
  7. Servlet多线程机制
  8. php网站用框架与不用的区别,做前端网页是不是必须要用网页框架
  9. mysql连接被拒绝 密码也对_解决Mysql数据库拒绝远程连接和忘记密码的问题
  10. 路由器截获微信消息_小白智慧微信小程序无法打印的解决方案