Exploit for CVE-2026-49975 exploit
CVE-2026-49975 是 Ollama 服务中的高危栈缓冲区溢出漏洞,CVSS 评分 9.8,影响所有低于 0.17.1 的版本。攻击者可通过发送超长 token 的 API 请求触发远程代码执行,完全控制服务器。本文提供漏洞根因、攻击场景、修复方案及检测方法。
Exploit for CVE-2026-49975 exploit
📋 漏洞概述
CVE-2026-49975 漏洞影响 Ollama 服务,远程攻击者可通过特制请求触发栈缓冲区溢出,实现远程代码执行。
📋 基础信息
| 受影响版本 | Ollama < 0.17.1 |
| 漏洞类型 | 栈缓冲区溢出 |
| CVSS | 9.8 · Critical |
| CVE | CVE-2026-49975 |
🔬 漏洞根因
Ollama 在处理 HTTP 请求时,对包含超大 token 序列的 API 调用未执行边界检查。具体在 models/llm.go 的 token 解析函数中,使用固定大小的栈缓冲区 (4096 字节) 存储字符串,但未验证输入长度。攻击者发送特制的包含超长 token 字符串的请求,导致数据覆盖栈上的返回地址和局部变量,从而劫持控制流。
🎯 攻击场景
1) 攻击者扫描公网暴露的 Ollama 服务端口 (默认 11434)。2) 构造包含超长 token 字段的 POST 请求,例如向 /api/generate 发送 payload,其中 "prompt" 字段附加 0x2000 字节的 shellcode。3) 发送请求触发栈缓冲区溢出,覆盖返回地址指向 ROP 链或直接跳转到 shellcode。4) 服务端执行任意命令,攻击者获得系统 shell。5) 攻击者在服务器上植入后门或窃取敏感数据。
💥 漏洞影响
远程未授权攻击者可利用此漏洞在 Ollama 服务进程中执行任意代码,完全控制服务器。影响范围包括所有暴露在公网或内网可访问的 Ollama 实例,导致数据泄露、服务中断或被用于横向移动。
🛡️ 修复建议
升级 Ollama 至 0.17.1 或更高版本。临时缓解措施:1) 在防火墙或反向代理层面限制对 Ollama API 端点的外部访问;2) 对 /api/generate 等接口实施输入长度校验,限制 prompt 字段不超过 4096 字节;3) 使用 seccomp 或 AppArmor 限制 Ollama 进程的系统调用。
📎 参考链接
- https://nvd.nist.gov/vuln/detail/CVE-2026-49975
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2026-49975
- 原始来源(Sploitus)
🚨 威胁评估
| 📈 EPSS 利用概率 | 暂无数据 |
| 🚨 CISA KEV | 未被已知利用 |
| 🔧 公开 PoC | 2 个公开 PoC 仓库 |
⚠️ 本文由漏洞情报系统自动生成,仅供安全研究与防御参考。生成时间: 2026-06-05 08:07 | 来源: Sploitus
🤖 常见问题解答(FAQ)
❓ 如何检测是否被 CVE-2026-49975 攻击?
检查 Ollama 日志中是否存在超大 payload 的 POST 请求(>4096 字节),以及服务器进程异常崩溃记录。可使用流量审计规则检测特定 URI 的超长字段。
❓ 该漏洞利用是否需要网络访问权限?
需要攻击者能够向 Ollama 服务端口 (默认 11434) 发送 HTTP 请求。若服务仅限本机监听,则需先获取内网访问权限。
❓ Ollama 0.17.1 版本是否完全修复?
是。官方在 0.17.1 版本中引入基于输入长度的动态堆分配,替换了固定栈缓冲区,消除了溢出风险。建议立即升级。