【AICon】探索RAG 技术在实际应用中遇到的挑战及应对策略!AICon精华内容已上线73%>>> 了解详情
写点什么

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:151007
用户头像

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

关注

评论

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

API工具常见分类

阿泽🧸

11月月更 API工具

2022 Rebase Hackathon启动

谢锐 | Frozen

区块链 defi 黑客松 web3 layer2

主成分分析PCA与奇异值分解SVD-高维数据可视化以及参数n_components

烧灯续昼2002

机器学习 算法 降维 sklearn 11月月更

Python进阶(四十七)python3使用pyinstaller实现将py文件打包成exe文件

No Silver Bullet

Python pyinstaller 11月月更

Python进阶(四十五)走进requests库

No Silver Bullet

Python requests 11月月更

Base64码常见操作(url链接文件转base64编码、本地文件转base64编码等)

共饮一杯无

Java base64 11月月更

2022-11-16:给你一个数组 nums,我们可以将它按一个非负整数 k 进行轮调, 例如,数组为 nums = [2,4,1,3,0], 我们按 k = 2 进行轮调后,它将变成 [1,3,0,

福大大架构师每日一题

算法 rust 福大大

静悄悄“双十一”背后的“喧嚣”

易观分析

双十一 消费 购物

易观分析:2022年Q3中国网络零售B2C市场交易规模达21971.5亿元

易观分析

零售 交易

JS模块化—CJS&AMD&CMD&ES6-前端面试知识点查漏补缺

loveX001

JavaScript

从零到一落地接口自动化测试

老张

自动化测试

js事件循环与macro&micro任务队列-前端面试进阶

loveX001

JavaScript

Python进阶(四十六)Python3实现SMTP发送邮件详细教程

No Silver Bullet

发送邮件 SMTP pyhton 11月月更

CSS学习笔记(八)

lxmoe

CSS 前端 学习笔记 11月月更

安装 Docker Compose

蜗牛也是牛

【愚公系列】2022年11月 微信小程序-app.json配置属性之plugins

愚公搬代码

11月月更

[力扣] 剑指 Offer 第二天 - 复杂链表的复制

陈明勇

Go 链表 数据结构与算法 11月月更

python数据分析-pandas基础(1)

AIWeker

Python 数据分析 pandas 11月月更

极速下载 docker镜像

蜗牛也是牛

常见用的设计模式以及实战

想要飞的猪

设计模式 spring设计模式

收藏|多指标时序预测方式及时序特征工程总结

云智慧AIOps社区

人工智能 机器学习 深度学习 时间序列 时间序列预测

微博系统中”微博评论“的高性能高可用计算架构

小虎

架构训练营

7.PGL图学习之图游走类metapath2vec模型[系列五]

汀丶人工智能

图神经网络 GNN GCN 11月月更

聚焦亮点,西安人工智能治理委员会成立暨产业政策白皮书正式发布

Geek_2d6073

作业-week5-设计微博系统中”微博评论”的高性能高可用计算架构

in9

JAVA逻辑运算符

默默的成长

前端 java; 11月月更

「Go易错集锦」意外的变量隐藏

Go学堂

golang 程序员 个人成长 常见错误 隐藏变量

CSS学习笔记(九)

lxmoe

CSS 前端 学习笔记 11月月更

架构实战营模块5作业

冷夫冲

架构训练营 架构实战

微博评论架构

Johnny

「架构实战营」

大厂前端面试考什么?

loveX001

JavaScript

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