IPBUF安全漏洞报告
English
CVE-2026-40886 CVSS 7.7 高危

CVE-2026-40886 Argo Workflows拒绝服务漏洞

披露日期: 2026-04-23

漏洞信息

漏洞编号
CVE-2026-40886
漏洞类型
拒绝服务 (DoS)
CVSS评分
7.7 高危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Argo Workflows

相关标签

DoSKubernetesArgo Workflows容器安全Panic数组越界

漏洞概述

Argo Workflows是Kubernetes上的开源容器原生工作流引擎。在3.6.5至4.0.4版本中,pod informer的`podGCFromPod()`函数存在未检查的数组索引漏洞。当工作流pod携带格式错误的`workflows.argoproj.io/pod-gc-strategy`注解时,会导致控制器范围内的panic。由于panic发生在informer goroutine内部(在控制器的recover()作用域之外),它会崩溃整个控制器进程。受影响的pod在重启后依然存在,导致崩溃循环,从而停止所有工作流处理,直到该pod被手动删除。

技术细节

该漏洞的核心在于Argo Workflows控制器代码中的`podGCFromPod()`函数处理Pod注解时存在逻辑缺陷。具体而言,当函数解析`workflows.argoproj.io/pod-gc-strategy`注解时,未对输入数据进行充分的校验,导致在特定条件下发生数组越界访问。攻击者只需具备在Kubernetes集群中创建Pod的低权限(PR:L),即可利用此漏洞。利用过程非常简单:攻击者构造一个包含恶意格式注解的Pod。当Argo Workflows的informer组件监听到该Pod的创建或更新事件并尝试处理时,会触发上述逻辑缺陷。由于错误发生在informer的goroutine内部,而该部分代码缺乏有效的异常捕获机制(recover),导致整个控制器进程直接崩溃。由于Kubernetes的Deployment机制会自动重启崩溃的控制器,但恶意的Pod资源未被清理,因此控制器重启后会再次读取该Pod并再次崩溃。这种持续的崩溃循环将导致所有工作流调度服务不可用,形成严重的拒绝服务攻击。

攻击链分析

STEP 1
步骤1:权限获取
攻击者获取在目标Kubernetes集群中创建Pod的低权限(PR:L)。
STEP 2
步骤2:构造恶意资源
攻击者创建一个Pod,并在其metadata中注入特定的恶意注解`workflows.argoproj.io/pod-gc-strategy`。
STEP 3
步骤3:触发漏洞
Argo Workflows控制器监听到新Pod事件,调用`podGCFromPod()`函数处理注解时,因未检查数组索引导致panic。
STEP 4
步骤4:服务瘫痪
控制器进程崩溃,Kubernetes尝试重启控制器,但由于恶意Pod存在,控制器反复崩溃,导致工作流处理完全中断。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
# Malformed Pod manifest to trigger the panic in Argo Workflows # The vulnerability is triggered by an invalid value in the 'workflows.argoproj.io/pod-gc-strategy' annotation. apiVersion: v1 kind: Pod metadata: name: malicious-pod-cve-2026-40886 namespace: argo # Or the namespace where Argo workflows are running annotations: # Setting a malformed value that causes array index out of bounds in podGCFromPod() workflows.argoproj.io/pod-gc-strategy: " malformed_payload_triggering_panic " spec: containers: - name: pause image: registry.k8s.io/pause:3.1

影响范围

Argo Workflows >= 3.6.5, <= 4.0.4

防御指南

临时缓解措施
如果无法立即升级,管理员应检查集群中是否存在带有奇怪或畸形`workflows.argoproj.io/pod-gc-strategy`注解的Pod,并手动将其删除以打破崩溃循环。同时,建议限制普通用户向Argo控制器监控的命名空间提交资源的权限。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表