GitHub Actions工作流缺陷提供了对包括Logstash在内的项目的写入权限

安全研究人员在流行的持续集成和开发(CI/CD)服务GitHub Actions中发现了多个工作流,这些工作流容易受到命令执行的影响。约会平台Tinder的一个研究团队制作了一个自动化脚本,该脚本发现了一些漏洞,这些漏洞可以泄露秘密,这些秘密提供对各种开源GitHub存储库的写入访问权限,包括Elastic的Logstash。记录调查结果的博客文章由Rojan Rijal、Johnny Nipper和Tanner Emek撰写,他们分别是Tinder的红队成员、高级产品安全经理和工程经理。

三人说,“在最坏的情况下,您可以利用易受攻击的工作流程来检索GITHUB_TOKEN值”,默认情况下该值具有对存储库的读/写访问权限。“这可用于向用户推送恶意构建并执行与供应链相关的攻击。”

他们补充说,如果工作流程中更敏感的访问机密(例如AWS凭证、API密钥或服务凭证)被泄露,“这可能会导致公司基础设施遭到破坏”。

漏洞的最常见原因是运行脚本中不安全的用户输入。研究人员还发现了许多pull_request_target被滥用的例子,其中包括绕过2019年针对与在分叉存储库中使用事件处理程序相关的问题的修复。

该研究侧重于具有漏洞披露政策的项目,并负责任地向项目报告经过验证的漏洞。研究人员表示,Elastic的安全团队迅速停用了易受攻击的工作流程,并确认没有发生滥用行为。

Tinder Security Labs已经开源了用于研究的工具。GitHub Workflow Auditor检查工作流中是否存在不安全的用户输入、恶意提交和机密。

鉴于可比较的现有工具的局限性,作者说,他们“专注于覆盖GitHub Actions中的大多数漏洞案例以及效率。因此,我们允许组织通过提供GitHub API密钥一次扫描所有存储库。这减少了安全团队的时间和精力”。

该工具还解决了从旧GitHub帐户运行操作的工作流所带来的供应链风险。研究人员解释说:“在这种情况下,攻击者可以认领该帐户并推送恶意操作,使他们能够访问存储库及其工作流程。” “我们测试的工具没有涵盖这个具体案例。”

他们补充说:“我们在Tinder Labs的目标是识别具有全球影响的各种技术中的高影响漏洞。随着我们研究其他技术,您可以期待在未来看到我们的更多发现和工具。”

研究人员敦促开发人员正确清理GitHub Actions中的用户输入,并通过限制GitHub令牌的访问范围来减轻攻击。

与此同时,GitHub安全实验室之前建议仅在开发人员在其工作流程中“需要目标repo的特权上下文”时才使用pull_request_target。

Tinder Security Labs的调查结果是在3月份披露的错误配置的GitHub Actions工作流程导致数十个存储库中出现严重缺陷,以及1月份的GitHub Actions补丁程序用于绕过代码审查保护措施。

发表评论

评论已关闭。

相关文章