Intel CPU 千疮百孔:又有新的安全漏洞 PortSmash

本贴最后更新于 1979 天前,其中的信息可能已经水流花落

据外媒 ZDnet 报道,英特尔 CPU 受到新的 PortSmash 侧通道安全漏洞的影响!该漏洞在 Skylake 和 Kaby Lake CPU 系列上已得到了确认。研究人员怀疑 AMD 处理器也受到了影响。

英特尔处理器受到了一个新漏洞的影响,该漏洞让攻击者可以从 CPU 的内部进程泄漏加密的数据。

由芬兰坦佩雷理工大学和古巴哈瓦那理工大学的五名学者共同组成的一个团队发现了这个新漏洞,该漏洞的代号为 PortSmash。

研究人员将 PortSmash 归类为一种侧通道攻击(https://en.wikipedia.org/wiki/Side-channel_attack)。在计算机安全术语中,侧通道攻击是指一种用于从计算机的内存或 CPU 泄漏加密数据的手法;具体工作原理是,记录并分析操作时间、功耗、电磁泄漏甚至声音等方面的差异,以获得额外信息,从而有助于破坏加密算法,获取 CPU 的处理数据。

研究人员表示,PortSmash 影响使用同步多线程(SMT)架构的所有 CPU,SMT 这种技术允许多个计算线程在一个 CPU 核心上同时执行。

通俗点来说,攻击的工作原理是,使用 SMT 的并行线程运行功能,在合法进程旁边运行恶意进程。恶意 PortSmash 进程随后泄漏来自合法进程的少量数据,帮助攻击者重新构建在合法进程内部处理的加密数据。

研究人员表示,他们已证实,PortSmash 影响支持英特尔超线程(HT)技术的英特尔 CPU,这项技术是英特尔以专有的方式实现的 SMT。

五位研究人员中的比利•布伦利(Billy Brumley)提到影响 SMT 架构和英特尔 HT 实现方法的之前的侧通道攻击时说:“我们发现的攻击与内存子系统或缓存毫无关系。”

布伦利补充道:“泄漏的本质是由于 SMT(比如超线程)架构上的执行引擎共享。更具体地说,我们发现端口竞争构建时序侧通道,以便从同一个物理核心上并行运行的进程泄露信息。”

IT 外媒 ZDnet 联系想了解更多的详细信息时,布伦利今天早些时候通过电子邮件表示,今后几天会在 Cryptology ePrint Archive 门户网站上发表一篇研究论文,向专业的技术读者更深入地介绍 PortSmash 漏洞。

POC 代码现已发布

他所在的团队还在 GitHub 上发布了概念证明(PoC)代码(https://github.com/bbbrumley/portsmash),演示了对英特尔 Skylake 和 Kaby Lake CPU 发动的 PortSmash 攻击。

PoC 成功地钻了 PortSmash 的空子,因而从 TLS 服务器窃取了一个 OpenSSL(<= 1.1.0h)P-384 私钥,不过攻击手法稍加变动,就可以泄露任何类型的数据。

PortSmash PoC 还需要恶意代码在与受害者相同的物理核心上运行,但这对攻击者来说不是很大的障碍。

布伦利告诉 ZDNet:“IaaS[基础设施即服务]是一种相对‘偏远’的场景。在 IaaS 上,攻击者会试图让虚拟机与受害者待在同一个地方,最终在与受害者相同的物理核心上运行漏洞,但逻辑核心不是同一个。”

他说:“[PortSmash]绝对不需要 root 权限,只需要用户空间。”

研究人员表示,他们上个月即 10 月 1 日就通知了英特尔的安全团队,但该公司直到昨天才提供补丁,这群研究人员在昨天公布了研究结果。我们联系不上英特尔的发言人,因而也就不清楚 PortSmash 补丁过程在本文发表之前的状态。

是时候停止支持 SMT/HT 了

去年,另一组研究人员发现了一个名为 TLBleed 的类似的侧通道漏洞,它影响英特尔的超线程(SMT)技术。继发现 TLBleed 之后,OpenBSD 项目决定出于安全方面的考虑,在即将发布的 OpenBSD 操作系统版本中禁用对英特尔 HT 技术的支持。

布伦利告诉我们:“这是我们发布漏洞的主要原因,表明它多么易于再现,终止芯片中的 SMT 支持大有帮助。”

他补充道:“安全和 SMT 是两个互为排斥的概念。我希望,我们的工作鼓励用户在 BIOS 中禁用 SMT,或者决定把钱花在不采用 SMT 功能的架构上。”

按照 CVE 漏洞跟踪系统的命名方法,PortSmash 被命名为 CVE-2018-5407。

  • CPU
    14 引用 • 10 回帖
  • 漏洞
    15 引用 • 27 回帖 • 1 关注
  • Intel
    6 引用 • 7 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • someone

    Intel 的 CPU 到底有多少漏洞。。。。。。

推荐标签 标签

  • 博客

    记录并分享人生的经历。

    270 引用 • 2386 回帖
  • Angular

    AngularAngularJS 的新版本。

    26 引用 • 66 回帖 • 511 关注
  • uTools

    uTools 是一个极简、插件化、跨平台的现代桌面软件。通过自由选配丰富的插件,打造你得心应手的工具集合。

    5 引用 • 13 回帖
  • React

    React 是 Facebook 开源的一个用于构建 UI 的 JavaScript 库。

    192 引用 • 291 回帖 • 441 关注
  • 游戏

    沉迷游戏伤身,强撸灰飞烟灭。

    169 引用 • 799 回帖 • 1 关注
  • Oracle

    Oracle(甲骨文)公司,全称甲骨文股份有限公司(甲骨文软件系统有限公司),是全球最大的企业级软件公司,总部位于美国加利福尼亚州的红木滩。1989 年正式进入中国市场。2013 年,甲骨文已超越 IBM,成为继 Microsoft 后全球第二大软件公司。

    103 引用 • 126 回帖 • 447 关注
  • Scala

    Scala 是一门多范式的编程语言,集成面向对象编程和函数式编程的各种特性。

    13 引用 • 11 回帖 • 107 关注
  • 996
    13 引用 • 200 回帖 • 1 关注
  • GitBook

    GitBook 使您的团队可以轻松编写和维护高质量的文档。 分享知识,提高团队的工作效率,让用户满意。

    3 引用 • 8 回帖 • 1 关注
  • 微软

    微软是一家美国跨国科技公司,也是世界 PC 软件开发的先导,由比尔·盖茨与保罗·艾伦创办于 1975 年,公司总部设立在华盛顿州的雷德蒙德(Redmond,邻近西雅图)。以研发、制造、授权和提供广泛的电脑软件服务业务为主。

    8 引用 • 44 回帖
  • Ant-Design

    Ant Design 是服务于企业级产品的设计体系,基于确定和自然的设计价值观上的模块化解决方案,让设计者和开发者专注于更好的用户体验。

    17 引用 • 23 回帖 • 1 关注
  • BAE

    百度应用引擎(Baidu App Engine)提供了 PHP、Java、Python 的执行环境,以及云存储、消息服务、云数据库等全面的云服务。它可以让开发者实现自动地部署和管理应用,并且提供动态扩容和负载均衡的运行环境,让开发者不用考虑高成本的运维工作,只需专注于业务逻辑,大大降低了开发者学习和迁移的成本。

    19 引用 • 75 回帖 • 619 关注
  • SMTP

    SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP 协议属于 TCP/IP 协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。

    4 引用 • 18 回帖 • 588 关注
  • GitLab

    GitLab 是利用 Ruby 一个开源的版本管理系统,实现一个自托管的 Git 项目仓库,可通过 Web 界面操作公开或私有项目。

    46 引用 • 72 回帖
  • 以太坊

    以太坊(Ethereum)并不是一个机构,而是一款能够在区块链上实现智能合约、开源的底层系统。以太坊是一个平台和一种编程语言 Solidity,使开发人员能够建立和发布下一代去中心化应用。 以太坊可以用来编程、分散、担保和交易任何事物:投票、域名、金融交易所、众筹、公司管理、合同和知识产权等等。

    34 引用 • 367 回帖 • 2 关注
  • CloudFoundry

    Cloud Foundry 是 VMware 推出的业界第一个开源 PaaS 云平台,它支持多种框架、语言、运行时环境、云平台及应用服务,使开发人员能够在几秒钟内进行应用程序的部署和扩展,无需担心任何基础架构的问题。

    5 引用 • 18 回帖 • 152 关注
  • OkHttp

    OkHttp 是一款 HTTP & HTTP/2 客户端库,专为 Android 和 Java 应用打造。

    16 引用 • 6 回帖 • 53 关注
  • 自由行
  • RIP

    愿逝者安息!

    8 引用 • 92 回帖 • 290 关注
  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3168 引用 • 8207 回帖
  • NGINX

    NGINX 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 NGINX 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日。

    311 引用 • 546 回帖 • 34 关注
  • 生活

    生活是指人类生存过程中的各项活动的总和,范畴较广,一般指为幸福的意义而存在。生活实际上是对人生的一种诠释。生活包括人类在社会中与自己息息相关的日常活动和心理影射。

    228 引用 • 1450 回帖
  • HTML

    HTML5 是 HTML 下一个的主要修订版本,现在仍处于发展阶段。广义论及 HTML5 时,实际指的是包括 HTML、CSS 和 JavaScript 在内的一套技术组合。

    103 引用 • 294 回帖
  • OpenResty

    OpenResty 是一个基于 NGINX 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。

    17 引用 • 39 关注
  • 黑曜石

    黑曜石是一款强大的知识库工具,支持本地 Markdown 文件编辑,支持双向链接和关系图。

    A second brain, for you, forever.

    10 引用 • 85 回帖
  • 安全

    安全永远都不是一个小问题。

    189 引用 • 813 回帖
  • jQuery

    jQuery 是一套跨浏览器的 JavaScript 库,强化 HTML 与 JavaScript 之间的操作。由 John Resig 在 2006 年 1 月的 BarCamp NYC 上释出第一个版本。全球约有 28% 的网站使用 jQuery,是非常受欢迎的 JavaScript 库。

    63 引用 • 134 回帖 • 741 关注