写点什么

TLBleed 漏洞:通过探测 TLB 获取 CPU 秘钥

  • 2018-06-27
  • 本文字数:1022 字

    阅读完需:约 3 分钟

VUsec 安全研究员 Ben Gras 在一篇文章中写道,一个影响英特尔处理器的边信道漏洞(称为 TLBleed )可能通过窥探翻译后援缓冲器(TLB)泄漏信息。

Gras 将在接下来的 Blackhat 2018 大会上介绍他的研究发现,声称他可以提取 GPG 所使用的加密密钥:

我们的 TLBleed 漏洞攻击成功获取 libgcrypt(在 GPG 中使用)的 256 位 EdDSA 密钥,成功率为 98%,只需单独监视共驻超线程上的签名操作,分析耗时 17 秒。

TLB 是一种缓存,用于加快将常用虚拟地址转换为物理内存地址的速度。 TLBleed 通过使用 TLB 来检测 CPU 寄存器中有用的信息,为超线程访问运行在同一内核上的另一个超线程的信息提供了一种方式。此漏洞与 Spectre 和 Meltdown 无关,这两个漏洞都利用推测执行故障泄漏 CPU 缓存中的信息。

关于这个漏洞,人们最关心的是,它使用了数据访问而不是正在执行的代码路径,这意味着现有对已知边信道攻击的保护措施可能无法有效对抗 TLBleed。事实上,Gras 提到了基于 TLBleed 的第二种攻击,该攻击可能会让最近的 libgcrypt 版本发生数据位泄漏,这一版本的libgcrypt 包含了一个边信道抗RSA 实现。第二种类型的攻击利用了机器学习技术。The Register 特约作者Chris Williams 可以访问Gras 等人的白皮书,他解释说,该团队使用分类器来识别敏感操作,包括基于TLB 延迟的加密操作。

英特尔不打算解决这个漏洞,他们认为,一个能够正确保护自己免受其他类型边信道攻击的程序,例如,不管是否使用加密密钥,其数据访问模式看起来都是一样的,如果能做到这样一点,也就对TLBleed 免疫。Gras 虽然也承认这一点,但他认为,很少有程序写得这么完美,libgcrypt 泄露RSA 密钥就是最好的例子。

OpenBSD 维护者采取了不一样的立场,他们决定禁用对英特尔处理器禁用并发多线程(SMT):

由于很多现代机器不再提供在 BIOS 设置中禁用超线程的能力,因此,可以在我们的调度程序中禁用额外的处理器线程。另外,因为我们怀疑它存在严重风险,所以默认将其禁用。

OpenBSD 将在未来将此策略扩展到其他 CPU 和其他架构。

对操作系统级具有较低侵入性的缓解措施是防止在同一内核的不同进程上并发执行两个线程,不过这要对操作系统的调度器做出修改,而且不是个小改动。

目前还不清楚其他厂商是否会在操作系统级别上采取任何措施解决 TLBleed 问题,或者云提供商是否会提供阻止两个不同虚拟机共享相同内核的可能性。InfoQ 将会带来更多相关信息。

查看英文原文 TLBleed Can Leak Cryptographic Keys from CPUs Snooping on TLBs

2018-06-27 09:151656
用户头像

发布了 731 篇内容, 共 479.6 次阅读, 收获喜欢 2008 次。

关注

评论

发布
暂无评论
发现更多内容

FabFilter Total Bundle 2024 全套音频插件包

Rose

Terragen 4 mac渲染软件下载 Terragen 4安装教程

Rose

Sticky for mac 记录重要任务和事件、写下快速笔记

Rose

图像处理-Java-字深字浅

alexgaoyh

Java 图像处理 边缘检测 字深 字浅

There will be "7" later: Interpretation of next-generation Wi-Fi technology

wallysSK

一文搞懂设计模式—工厂方法模式

Java随想录

Java 设计模式

低代码开发与网络信息安全:构建高效防护体系

不在线第一只蜗牛

软件开发 低代码 网络 低代码开发

ETL数据集成工具DataX、Kettle、ETLCloud特点对比

谷云科技RestCloud

kettle ETL DataX 集成工具 ETLCloud

详解网络知识:iptables规则

华为云开发者联盟

开发 华为云 华为云开发者联盟 云容器网络

一线管理者手中有哪些牌

芃篙君

管理

GaussDB(for MySQL) Serverless全面商用:无感弹性,极致性价比

华为云开发者联盟

数据库 华为云 华为云开发者联盟 华为云Serverless 华为云GaussDB(for MySQL)

深入理解 Java 方法重载与递归应用

小万哥

Java 程序人生 编程语言 软件工程 后端开发

当我们在谈安全默认时我们在谈什么

I

安全架构师 安全设计 安全架构

Programming Abstractions in C阅读笔记:p283-p292

codists

iStat Menus for Mac CPU使用情况、内存用量、硬盘使用情况等一目了然!

Rose

[转]Arthas 3.5.1发布:神级特性!内存搜索对象

虚实的星空

转载

计算schemas/AMs 大小的函数及 \dn++ 和 \dA++

孤傲小二~阿沐

Sora给中国AI带来的真实变化

脑极体

AI

业务开发自由之路:如何打破框架束缚,实现真正的框架中立性

canonical

低代码 架构设计 Nop平台 框架中立性

云原生明星创业公司 Weaveworks 倒闭了,GitOps 该何去何从?

极狐GitLab

第39期 | GPTSecurity周报

云起无垠

全新且极易使用的视频延时制作软件Persecond for Mac

Rose

动态gif图片特效 Cinemagraph Pro for mac中文版

Rose

Mac平台上简单又好用的磁盘清理工具:BlueHarvest

Rose

mac视频转换器哪个好?Smart Converter Pro for Mac智能视频转换器专业版

Rose

Databend 开源周报第 132 期

Databend

TLBleed漏洞:通过探测TLB获取CPU秘钥_语言 & 开发_Sergio De Simone_InfoQ精选文章