当前位置: 首页 > news >正文

现代 GPU 容易受到新 GPU.zip 侧通道攻击

来自四所美国大学的研究人员开发了一种新的 GPU 侧通道攻击,该攻击利用数据压缩在访问网页时泄露现代显卡中的敏感视觉数据。

研究人员通过 Chrome 浏览器执行跨源 SVG 过滤器像素窃取攻击,证明了这种“ GPU.zip ”攻击的有效性。

研究人员于 2023 年 3 月向受影响的显卡制造商披露了该漏洞。但是,截至 2023 年 9 月,尚未有受影响的 GPU 供应商(AMD、Apple、Arm、NVIDIA、高通)或 Google (Chrome) 推出补丁来解决该问题。

德克萨斯大学奥斯汀分校、卡内基梅隆大学、华盛顿大学和伊利诺伊大学厄巴纳-香槟分校的研究人员在一篇论文中概述了这一新缺陷,并将在第 45 届 IEEE 安全与隐私研讨会上发表。 

通过压缩泄漏

一般来说,数据压缩会产生不同的数据相关 DRAM 流量和缓存利用率,这可能会被滥用来泄露机密,因此软件在处理敏感数据时会关闭压缩。

GPU.zip 研究人员解释说,所有现代图形处理器单元,尤其是集成的 Intel 和 AMD 芯片,即使没有明确要求,也会执行软件可见的数据压缩。

现代 GPU 遵循这种冒险的做法作为优化策略,因为它有助于节省内存带宽并在无需软件的情况下提高性能。

这种压缩通常没有记录并且是特定于供应商的,研究人员已经找到了一种利用它来泄漏 GPU 视觉数据的方法。

具体来说,他们演示了一种通过各种设备和 GPU 架构上的 Web 浏览器提取单个像素数据的攻击,如下所示。

各种系统上的测试结果

概念验证攻击演示了从维基百科 iframe 窃取用户名的过程,在 Ryzen 上可以在 30 分钟内完成,在 Intel GPU 上可以在 215 分钟内完成,准确率分别为 97% 和 98.3%。

检索用户名

iframe 托管一个跨源网页,其像素被隔离并转换为二进制,这意味着它们被转换为两种可能的颜色。

接下来,这些像素被放大,并应用专门的 SVG 滤镜堆栈来创建可压缩或不可压缩的纹理。通过测量纹理渲染所需的时间,研究人员可以推断出目标像素的原始颜色/状态。

GPU.zip 攻击概念

我们最近看到应用 SVG 过滤器来诱导数据相关的执行,并使用 JavaScript 来测量计算时间和频率,以辨别“热像素”攻击中的像素颜色。

Hot Pixels 在现代处理器上利用了数据相关的计算时间,而 GPU.zip 则依靠未记录的 GPU 数据压缩来实现类似的结果。

GPU.zip 严重性

GPU.zip 影响几乎所有主要 GPU 制造商,包括 AMD、Apple、Arm、Intel、Qualcomm 和 NVIDIA,但并非所有卡都受到同样的影响。

事实上,没有一家受影响的供应商决定通过优化其数据压缩方法并将其操作限制在非敏感情况来解决该问题,这进一步增加了风险。

尽管 GPU.zip 可能会影响全球绝大多数笔记本电脑、智能手机、平板电脑和台式电脑,但对用户的直接影响会受到执行攻击所需的复杂性和时间的影响。

此外,拒绝跨源 iframe 嵌入的网站不能用于通过这种或类似的旁路攻击泄露用户数据。

“大多数敏感网站已经否认被跨源网站嵌入。因此,它们不易受到我们使用 GPU.zip 发起的像素窃取攻击,”研究人员在该团队网站上的常见问题解答中解释道。

最后,研究人员指出,Firefox 和 Safari 并不满足 GPU.zip 工作所需的所有标准,例如允许跨源 iframe 加载 cookie、在 iframe 上渲染 SVG 过滤器以及将渲染任务委托给 GPU。

http://www.lryc.cn/news/177349.html

相关文章:

  • 8+单基因+细胞凋亡+WGCNA+单细胞+实验验证
  • BM4 合并两个排序的链表
  • 【lesson12】理解进程地址空间
  • 计算机里的神灵(SCIP)
  • 基于微信小程序的公交信息在线查询系统小程序设计与实现(源码+lw+部署文档+讲解等)
  • 【STM32】IAP升级01 bootloader实现以及APP配置(主要)
  • ruoyi(若依)接口拦截路径配置,接口访问要授权,放开授权直接访问
  • Ctfshow web入门 XSS篇 web316-web333 详细题解 全
  • watch()监听vue2项目角色权限变化更新挂载
  • 轻量化设计、佩戴更舒适——轻律 Umelody U1头戴式蓝牙耳机
  • 嵌入式Linux应用开发-基础知识-第三章 LED原理图-GPIO及操作
  • 外贸人员如何选择适合的邮箱服务
  • pt29django教程
  • 【操作系统笔记七】进程和线程
  • Kakfa高效读写数据
  • C++ 类和对象(4)构造函数
  • 数据结构————广度寻路算法 Breadth First Search(广度优先算法)
  • 安卓桌面记事本便签软件哪个好用?
  • 河北吉力宝以步力宝健康鞋引发的全新生活生态商
  • 反射获取Constructor、Field、Method对象
  • 【Netty】 ByteBuf的常用API总结
  • 热门敏捷开发管理工具
  • Java分支结构:一次不经意的选择,改变了我的一生。
  • Unity中Shader需要了解的点与向量
  • Java初始化大量数据到Neo4j中(一)
  • Excel·VBA日期时间转换提取正则表达式函数
  • Django中的缓存
  • Python 编程基础 | 第二章-基础语法 | 2.4、while 语句
  • Qt Charts简介
  • MinGW、GCC、GNU和MSVC是什么?有什么区别?