英伟达 NemoClaw 被曝高危漏洞:访问恶意网页即可劫持 AI 代理
NVIDIA NemoClaw 曝出 CVE-2026-65105,攻击者可通过 DNS rebinding 取得本地…
英伟达(NVIDIA)用于部署 AI 代理的工具 NemoClaw 被曝出严重安全漏洞(CVE-2026-65105):攻击者仅需诱导用户访问一个恶意网页,即可完全控制其本地模型服务器,并向模型植入可持久化的恶意指令。该漏洞由安全厂商 Oasis Security 在其针对非人类身份与 AI 代理风险的研究中发现,并已通过英伟达 PSIRT 完成负责任披露。
漏洞背景:NemoClaw 与 Ollama 的组合
NemoClaw 是英伟达推出的工具,用于在 OpenShell 沙箱中运行 OpenClaw AI 代理。为避免代码与提示词发送到外部 API,它支持通过本地推理框架 Ollama 在开发者机器上部署模型实例,由沙箱内的代理直接调用本机 Ollama。
为了让 Docker 容器内的沙箱能够访问宿主机的 Ollama,NemoClaw 在启动 Ollama 时设置 OLLAMA_HOST=0.0.0.0:11434,将其绑定到全部网络接口。NemoClaw 安装过程中向用户打印的提示是「Using Ollama on localhost:11434」,容易让人误以为只监听 loopback 接口,但实际上底层套接字绑定在 0.0.0.0,在所有接口上可达。
Ollama 默认依赖两层中间件来阻止来自网页的未授权访问:
- CORS 中间件:检查请求的 Origin 头是否在允许列表中,缺少 Origin 头(通常是 GET 请求)时直接放行;Origin 与 Host 一致时按同源处理。
- Host 头校验:拒绝 Host 不是
localhost、本机主机名或.localhost/.local/.internal等后缀的请求。
Ollama 在代码中会判断绑定地址是否为 loopback:一旦绑定在 0.0.0.0 这类非 loopback 地址上,Host 头校验会被完全跳过,只剩 CORS 一层防护,而这一层又可被 DNS rebinding 绕过。
攻击路径:DNS rebinding 直击本地 Ollama
DNS rebinding 利用了浏览器同源策略绑定主机名而非解析 IP 的特性:
- 攻击者控制一个自有域名,最初解析到自己的服务器公网 IP,诱导受害者访问该域名。
- 受害者浏览器加载攻击者页面后,攻击者控制的 DNS 服务把该域名重新解析为
127.0.0.1或受害者 LAN IP。 - 攻击者页面中的 JavaScript 向同一主机名的 11434 端口发起请求,浏览器将流量发往本地 Ollama。
- 在绑定了
0.0.0.0的 Ollama 上,Host 校验因绑定地址非 loopback 被跳过;CORS 校验看到 Origin 与 Host 都是攻击者域名,判定为同源,放行请求。 - 攻击者获得对 Ollama API 的完全、无认证访问权限。
攻击者可执行的操作
获得 Ollama API 访问后,攻击者页面可调用其全部端点,至少包括推理类接口 /api/generate、/api/chat、/v1/chat/completions 等,在受害者本地硬件上执行任意推理请求,消耗 GPU 资源。
更严重的是,攻击者可利用 Ollama 的模型管理接口操控本地模型仓库,并通过修改模型的 chat template 向其中植入持久化的恶意 system prompt——即便 AI 代理后续追加自己的系统提示,这些指令仍可存活,由此实现「持久化模型投毒」,让受害者的代理从此被攻击者持续操纵。
影响与处置建议
该漏洞意味着,攻击者完全不需要接触受害者机器,仅凭一次网页访问就能持续劫持其本地 AI 代理行为,对使用 NemoClaw 的开发者构成直接威胁,同时对所有依赖 Ollama 提供本地推理的 AI 代理方案敲响安全警钟。建议相关用户:
- 关注英伟达官方安全公告,及时升级 NemoClaw 与 OpenShell。
- 检查本地 Ollama 的监听地址,避免在非必要的
0.0.0.0绑定下暴露 API。 - 在沙箱与宿主机之间使用更严格的网络隔离,限制容器对宿主本地服务的访问面。
