中国政策档案 Governance Archive HOLDINGS 234,771 · FONDS 122
Record · qbitai ACC. 900075260

High-Risk Vulnerabilities in Nvidia Triton Inference Server Exposed

英伟达推理服务器被曝高危漏洞,云端AI模型被攻击直接裸奔

Issuer
Date
2025-08-06
Instrument
other
Cited by
0
Security research firm Wiz Research disclosed a chain of high-risk vulnerabilities in Nvidia's Triton Inference Server, enabling unauthenticated remote attackers to execute code, steal models, and manipulate responses. Nvidia has released patches for all versions prior to 25.07.
Full text · 原文 2,469 字
henry 发自 凹非寺<br> 量子位 | 公众号 QbitAI<br> 一波未平,一波又起。<br> 英伟达Triton推理服务器,被安全研究机构Wiz Research曝光了一组高危漏洞链。<br> 这组漏洞可以被组合利用,实现远程代码执行(RCE),攻击者可以读取或篡改共享内存中的数据,操纵模型输出,控制整个推理后端的行为。<br> 可能造成的后果包括模型被盗、数据泄露、响应操纵,乃至系统失控。<br> 目前,英伟达已经发布补丁,但所有25.07版本之前的系统都处于裸奔状态,用户需要将Triton Inference Server更新到最新版本。<br> 一处漏洞,牵一发而动全身<br> 这次的漏洞链危害有多大呢?<br> 据Wiz表示,该漏洞链可能允许未经身份验证的远程攻击者控制英伟达Triton推理服务器,进而可能导致以下一连串的严重后果:<br> 首先,是模型被盗(Model Theft),攻击者可以通过精确定位共享内存区域,窃取专用且昂贵的人工智能模型。<br> 其次,是数据泄露(Data Breach),一旦控制了模型运行时的内存,攻击者就能实时读取模型输入输出,截取模型处理过程中涉及的敏感数据(例如用户信息或财务数据)。<br> 再往后,是响应被操纵(Response Manipulation),攻击者不仅能读,还能写。他们可以操纵AI模型的输出,使其产生错误、有偏见或恶意的回应。<br> 最后,是横向移动(Pivoting)导致的系统失控,攻击者利用已经被攻陷的服务器,作为跳板,进一步攻击该组织网络内的其他系统。<br> 可以说,一个Triton漏洞就足以摧毁一个AI平台的四大支柱:模型、数据、输出、系统。<br> 什么漏洞,居然这么危险?<br> 这次的漏洞链由三个漏洞组成:<br> CVE-2025-23320:当攻击者发送一个超大请求超出共享内存限制时,会触发异常,返回的错误信息会暴露后端内部IPC(进程间通信)共享内存区的唯一标识符(key)。<br> CVE-2025-23319:利用上述标识符,攻击者可执行越界写入(out-of-bounds write)。<br> CVE-2025-23334:利用标识符可实现越界读(out-of-bounds read)。<br> 这三个漏洞环环相扣,构成了完整的攻击链条:<br> 首先,攻击者借助CVE-2025-23320的错误信息泄露漏洞,获取Triton Python后端内部共享内存的唯一标识符。<br> 当掌握了这个标识符后,攻击者便可利用CVE-2025-23319和CVE-2025-23334两个漏洞,对该共享内存区域进行越界写入和越界读取操作。<br> 具体来说,攻击者通过滥用共享内存API,不受限制地读写后端内部的内存数据结构。<br> 最后,在获得对后端共享内存的读写权限后,攻击者能够干扰服务器正常行为,进而实现对服务器的完全控制。<br> 可能的攻击方式包括但不限于:<br> – 破坏后端共享内存中的数据结构,尤其是包含指针的结构(如 MemoryShm、SendMessageBase),从而实现越界读写。<br> – 伪造和操控 IPC 消息队列中的消息,造成本地内存破坏或逻辑漏洞利用。<br> 从最初的信息泄露,升级至全面的系统入侵,这一“完美”的的攻击路径在很大程度上就和Triton的架构有关。<br> 通用是一把双刃剑<br> 虽然这次漏洞集中在Triton的Python后端,但“Python后端”并不是专供Python框架调用的。<br> 英伟达的Triton是一个通用的推理平台,它设计的目的是帮助开发者简化AI模型在各种框架(比如 PyTorch、TensorFlow、ONNX)上的部署和运行。<br> 为了实现这一点,Triton采用了模块化的后端架构,每个后端负责执行对应框架的模型。<br> 当一个推理请求到来时,Triton会自动识别模型所属的框架,并将请求发送给对应的后端执行。<br> 然而,在推理的不同阶段,即便模型主要运行在某个后端(比如PyTorch后端),也可能会在内部调用Python后端完成某些任务。<br> 换句话说,哪怕主模型在TensorFlow或PyTorch上运行,但只要流程中包含定制环节,Python后端就有可能被调入执行。<br> 所以,Python后端并不仅仅服务于Python框架的模型,而是被更广泛地用在Triton的推理流程中,这也使得它成为一个潜在的安全薄弱点,影响范围更大。<br> 此外,Triton Python后端的核心逻辑是用C++实现的,<br> 当有推理请求到来时,这个C++组件会与一个单独的“stub”(存根)进程通信,后者负责加载并执行具体的模型代码。<br> 为了让C++逻辑和stub进程之间顺利交流,Python后端采用了复杂的进程间通信(IPC)机制,用于推理数据传输和内部操作协调。<br> 这个IPC基于命名共享内存(通常是/dev/shm路径下的共享内存区域),每个共享内存区都有唯一的系统路径标识符,也就是我们上面说到的标识符key。<br> 这样的设计可以实现高速的数据交换,但也带来了一个关键的安全隐患:共享内存名称的安全性和隐私保护非常重要,一旦名称泄露,就可能被攻击者利用。<br> 综上,通用平台正因为灵活,反而却成为了安全命门,即所谓一处漏洞,牵一发而动全身。<br> 幸运的是,虽然漏洞链杀伤力巨大,但目前还只停留在实验室里,尚未被发现用于实际攻击。<br> 在接到Wiz Research的报告后,英伟达也是火速修复了这三个漏洞,并发布了更新后的Triton Inference Server 25.07版本。<br> 只能说,漏洞这种事,还是被自己人先发现更安心。<br> 参考链接:<br> [1]https://www.theregister.com/2025/08/05/nvidia_triton_bug_chain/<br> [2]https://www.wiz.io/blog/nvidia-triton-cve-2025-23319-vuln-chain-to-ai-server<br> [3]https://thehackernews.com/2025/08/nvidia-triton-bugs-let-unauthenticated.html