#cuda

共收录 3 条相关安全情报。

← 返回所有主题
👥 作者: Igor Santos-Grueiro

该论文聚焦于CUDA集体操作(如投票、归约、洗牌、栅栏等)在安全决策路径中的脆弱性。这些操作的安全决策不仅依赖于计算值,还依赖于哪些线程(lane)被代表、它们贡献了什么证据、哪个线程代表组、以及哪个检查过的状态到达提交点。作者将这种参与元数据定义为决策型非控制数据,并提出了一种名为集体语义破坏(CSC)的非控制数据攻击家族。在CSC攻击中,攻击者可以通过操纵范围有效的掩码、谓词、源线程、描述符、组标签或时期(epoch),使符合CUDA规范的集体操作对错误的成员资格、贡献、角色或验证到使用状态进行授权。核心在于,内核到达了预期的集体操作站点并执行了预期原语,但该原语代表的是错误的权限集。作者通过一个站点本地参与-权限契约模型对CSC进行建模,并提出集体完整性契约(CIC)作为防御方法。CIC是一种包装器规范,要求在集体操作使用之前绑定参与元数据,通过派生、重新计算、检查或冻结成员资格、贡献、角色和时间状态来实现保护。实验评估覆盖了NVIDIA CUDA集体原语、触发通道、紧凑工作负载风格内核、简化习惯用法桥接和准入守护框架。在涵盖四个权限维度的CUDA定义的契约一致性测试套件中,被破坏的参与元数据在102/102个实例中导致可信参考不匹配,而经过加固的变体在102/102个实例中保持了该参考。另外报告了13个对同步敏感的实例。论文表明,对于CUDA集体决策,安全性既依赖于计算出的值,也依赖于所代表的参与者。该研究对GPU安全、并行计算系统的安全决策路径具有重要启示,适合关注GPU安全、系统安全和高性能计算安全的从业者阅读。

💡 推荐理由: 该研究揭示了CUDA集体操作中一个被忽视的安全维度:参与元数据本身可被操纵以绕过安全决策,对依赖GPU进行关键决策(如批量验证、代表选举)的系统构成威胁。

🎯 建议动作: 研究跟进

排序因子: 来自 arXiv 其他板块 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.6)
👥 作者: Igor Santos-Grueiro

本文提出 WarpGuard,据作者所知这是首个在已执行 SASS(Shader Assembly)层面为 CUDA 设备二进制实现受保护站点控制流完整性(CFI)的系统。近年来 CUDA 利用研究显示,GPU 内存漏洞可升级为设备端控制流破坏,因为内核后续会使用被破坏的返回延续、函数指针、调度表项或分支目标。对于已部署的 CUDA 二进制,安全边界是实际执行的 NVIDIA SASS(经过 PTX 降级、内联、ABI 决策、寄存器分配、溢出、预测和 SIMT 执行后),而源代码或 PTX 级别的策略无法捕获此边界。WarpGuard 在受保护站点实施强制:恢复消耗控制流状态的 SASS 指令或序列,提供足够二进制证据以推导策略,在释放前进行检查,并在违反时失败关闭。它向后边缘认证已检测返回的延续状态,每站点验证可恢复的前向目标,并报告固定边缘、不支持、配置文件排除、回退和无表面结果。在 77 个 CUDA 工件上,WarpGuard 分类了 51,621 个 SASS 控制流站点,包括 1,343 个返回和 154 个支持的前向目标集条目,并记录了 5220 万次动态检查。在代表性后向和前向边缘破坏攻击中,原生执行到达攻击者选择的行为,仅检测模式记录预期违规,而强制模式在释放无效受保护转移前失败关闭。公开代码证据表明,相同的 SASS 消费模式出现在真实 CUDA 系统中,包括运行时调度表、cuFFT 回调、生成的可调用表和上传的设备函数指针。WarpGuard 为 CUDA SASS 提供了可审计的受保护站点 CFI,并将动态检测强制与无回调 SASS 定时和补丁缓存可行性分离。

💡 推荐理由: 本工作填补了 GPU 二进制级别 CFI 的空白,直接针对实际执行的 SASS 代码,解决了现有 PTX/源码策略无法覆盖的安全边界,为部署 CUDA 应用程序的防御者提供了可审计的运行时防护手段。

🎯 建议动作: 研究跟进

排序因子: 有可用补丁/修复方案 (+3) | 影响边界/网络设备 (+5) | 来自 arXiv 其他板块 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.6)
👥 作者: Zhuoping Yang, Yiyu Shi, Alex Jones, Peipei Zhou

本文提出 AgileOS,一个旨在为 GPU 服务提供操作系统级保护层的系统。现代 GPU 应用越来越多地与存储系统、网络设备、供应商库和 GPU 驻留服务交互,而不仅仅是执行隔离的计算内核。这种转变要求对 GPU 服务提供类似操作系统的保护,即服务元数据、设备队列、内存映射 I/O 区域和库内部状态不应直接暴露给不可信的应用内核。然而,当前的 CUDA 编程模型默认赋予应用对其 CUDA 上下文、设备指针、运行时句柄、模块加载路径和内核启动的直接所有权,迫使受保护的 GPU 服务构建自己的临时接口和隔离机制。AgileOS 在库边界对 CUDA 进行虚拟化:应用程序链接客户端 CUDA 运行时、驱动和选定的库垫片,而受信任的运行时工作线程拥有真实的 CUDA 上下文并中介所有支持的操作。为了保护服务状态和模块接口,AgileOS 定义了一种 GPU 内存管理模型,将用户分配与受保护的模块/MMIO 范围分离,通过 PTX 注入实现指针验证和内存访问保护。AgileOS 模块化且灵活,支持多种受保护服务和现有库如 cuFFT 和 PyTorch。原型包括客户端拦截器、工作线程 CUDA 处理器、虚拟化 CUDA 对象表、受保护的 AgileOS 模块、分离用户分配与保护区域的 GPU 内存管理器、选定的可信库适配器以及 PTX 级内核内存保护。本文适合 GPU 安全研究人员、系统架构师和云服务提供商阅读。

💡 推荐理由: AgileOS 填补了 GPU 环境下缺乏操作系统级隔离的空白,为构建安全的 GPU 服务提供了系统化的方法,对云 GPU 和共享 GPU 环境的安全防护具有重要参考价值。

🎯 建议动作: 研究跟进

排序因子: 来自 arXiv 其他板块 (+2) | Community 数据源 (+1) | LLM 评分加成 (+0.5)