CVE-2026-23960CVE-2026-23960是Argo Workflows中的一个存储型跨站脚本(XSS)漏洞。该漏洞存在于artifact目录列表功能中,允许具有工作流编写权限的低权限用户在artifact文件名称中注入恶意JavaScript代码。当其他用户浏览这些artifact目录时,注入的恶意脚本会在受害者的浏览器上下文中执行,源地址为Argo Server。由于脚本在Argo Server源下执行,攻击者可以利用受害者的会话权限执行API操作,包括但不限于数据窃取、权限提升或执行其他未授权操作。此漏洞需要用户交互才能触发,攻击者需要诱使受害者访问包含恶意代码的artifact列表页面。
该漏洞的根本原因在于Argo Workflows的artifact服务器(server/artifacts/artifact_server.go)在展示artifact目录列表时,未对artifact文件名进行充分的HTML转义或输入验证。当工作流生成的artifact文件名包含恶意构造的脚本标签或JavaScript事件处理器时,这些内容会被直接嵌入到返回的HTML页面中。攻击者可以通过创建工作流时指定包含XSS payload的文件名(如<img src=x onerror=alert(document.cookie)>),该payload会被存储并在后续用户访问artifact列表时从后端取出并渲染。由于攻击脚本在Argo Server的源下执行,它可以访问该源下的所有cookies和localStorage,从而实现会话劫持或利用受害者已认证的会话执行API请求。修复方案需要在artifact文件名的输出点添加适当的输出编码,或实现严格的内容安全策略(CSP)。