Kubescape 开源安全工具惊现脚本注入漏洞,高危评级遭降级引质疑
开源容器安全工具 Kubescape 的 GitHub Actions 工作流中被发现存在潜在的脚本注入漏洞(INJ-001),尽管自动化渗透测试代理将其原始严重性标记为“高危”,但后续验证却将其降级为“低危”,这一过程揭示了开源项目安全评估中的关键盲点。该漏洞涉及对 `github.refname` 等不可信输入的处理,理论上可能允许攻击者通过注入恶意命令来破坏 CI/CD 流水线。然而,验证结果表明,所有报告的注入点要么位于未使用的复合操作中(如 `tag-action` 在仓库中无调用者),要么依赖于未定义的环境变量(如 `DOCKERCMD` 从未被设置),导致实际可被利用的攻击路径并不存在。
此次发现的核心在于 `slashben/kubescape` 仓库的 GitHub Actions 配置。漏洞模式符合 OWASP CI/CD 安全风险 CICD-SEC-1,即“管道中的不安全配置”。具体而言,工作流中某些步骤直接使用了来自 GitHub 上下文的动态输入(如 `github.refname`)来构建 shell 命令,而未进行充分的净化或验证。自动化安全扫描工具将其标记为高风险,正是基于这种常见的危险模式。然而,深入分析发现,这些潜在的注入点在实际工作流执行中并未被激活或传递有效载荷,使得漏洞在现有代码状态下无法被外部贡献者成功利用。
这一事件突显了自动化安全工具在复杂 CI/CD 环境中的局限性:它们能有效识别危险模式,但可能无法准确评估上下文依赖和实际可触发性。对于 Kubescape 这样一个以安全为核心卖点的项目而言,任何与安全相关的代码瑕疵,无论是否可立即利用,都可能影响其声誉和用户信任。虽然当前评估认为风险较低,但该模式的存在本身就是一个警示,提示维护者需要审查所有工作流中对用户可控输入的使用,并建立更严格的代码审查与安全测试流程,以防未来代码变更无意中激活这些沉睡的漏洞。