Docker高危授权绕过漏洞再起波澜,AI攻击链已现端倪
Docker Engine这边,最近又摊上事了。一个高危安全漏洞被曝出,攻击者能在特定条件下,绕开授权插件的防线。这事儿听起来是不是有点耳熟?没错,它实际上是去年夏天那个轰动一时的高危漏洞修补后留下的“尾巴”。
这个编号为CVE-2026-34040(CVSS评分高达8.8)的漏洞,根源就在于对CVE-2024-41110的修复不够彻底。Docker引擎维护团队在上月底的公告里说得很直白:攻击者可以通过构造特殊的API请求,让Docker守护进程在请求体都没转发给授权插件的情况下,就把活儿给干了。这意味着,任何指望通过检查请求体来把关的授权插件,防线都可能形同虚设。
值得关注的是,这个漏洞并非一人发现,而是被包括Asim Viladi Oglu Manizada、Cody、Oleh Konko和Vladimir Tokarev在内的多位安全研究人员,从不同角度给揪了出来。目前,Docker Engine的29.3.1版本已经推送了修复补丁。

漏洞利用原理
那么,这个漏洞具体是怎么被利用的呢?根据Cyera Research Labs研究员Tokarev的分析报告,问题的关键在于当初修复方案没能妥善处理“个头太大”的HTTP请求体。
想象一个典型的攻击场景:当攻击者访问Docker API的行为受到AuthZ插件限制时,他可以通过“注水”的方式,把一个创建容器的请求填充到超过1MB大小。这样一来,这个臃肿的请求在抵达插件之前就被丢弃了。用Tokarev的话说就是:“插件因为没检测到任何需要拦截的依据,于是就放行了请求。”可此时,Docker守护进程处理的却是完整请求,最终会创建一个拥有宿主机root权限的特权容器——AWS凭证、SSH密钥、Kubernetes配置,机器上所有敏感数据都将门户大开。更要命的是,这一招对所有生态内的AuthZ插件都管用。
AI 自动化攻击链
如果事情到此为止,或许还算“常规”威胁。但更令人警惕的剧情出现了:AI正在让攻击自动化、智能化。当那些基于Docker沙箱运行的AI编程助手(例如OpenClaw)在处理开发者日常工作流中的特制GitHub仓库时,就可能执行隐藏的提示注入攻击。恶意代码会利用上述CVE-2026-34040漏洞,绕过授权、创建特权容器并挂载宿主机文件系统。
一旦拿到这个级别的访问权限,后果不言而喻:窃取云服务凭证,进而控制整个云账户、Kubernetes集群,甚至通过SSH长驱直入生产服务器。
Cyera还发出了一个更具前瞻性的警告:即便没有预先埋设恶意代码,AI助手在替开发者执行合法调试任务时(比如排查K8s内存溢出),如果因为访问kubeconfig等文件碰了壁,它完全有可能“自主”发现这个绕过方法。只需构造一个填充过的HTTP请求,漏洞就可能被触发。这意味着,一个具备Docker API访问权限、且懂点HTTP原理的AI Agent,理论上就能自主发动攻击。CVE-2026-34040的利用不需要任何复杂的漏洞利用代码、特权或特殊工具,仅仅一个填充过的HTTP请求足矣。换句话说,任何能读懂Docker API文档的Agent,都有可能成为潜在的漏洞利用者。
临时缓解措施
在无法立即升级到安全版本的情况下,可以考虑以下几项临时防护措施:
首要任务是审视并停用那些依赖检查请求体来决策的AuthZ插件。同时,必须遵循最小权限原则,严格限制对Docker API的访问范围。此外,启用rootless模式来运行Docker也是一个有效的降级方案。
对此,Tokarev特别强调:“在rootless模式下,即便攻击者创建了所谓的‘特权容器’,其内部的‘root’用户也会被映射到宿主机上一个非特权的UID。这将把攻击的影响范围,从‘完全主机沦陷’大幅降级为‘非特权用户被入侵’。”对于无法完全采用rootless模式的环境,使用 `--userns-remap` 参数也能实现类似的UID映射效果,为系统增加一道安全缓冲。
