首页
社区
课程
招聘
[分享]GitHub Actions安全漏洞可使攻击者绕过代码审查机制 影响受保护分支
发表于: 2021-10-18 10:57 3473

[分享]GitHub Actions安全漏洞可使攻击者绕过代码审查机制 影响受保护分支

2021-10-18 10:57
3473

Cider Security的研究人员在GitHub Actions中发现了一个安全漏洞,该漏洞允许攻击者绕过必要的审查机制,将未审查的代码推到受保护的分支,使其进入生产管道。

 

根据Medium上的一篇博客文章,首席安全研究员Omer Gil和他在Cider security(一家专注于持续集成/持续交付安全的初创公司)的研究团队发现了这个安全漏洞,这是他们研究DevOps中新型攻击的一部分。

 

Gil称,要求审查是GitHub中最广泛使用的安全机制之一,由于GitHub Actions是默认安装的,几乎任何组织都容易受到这种攻击。

 

“危及GitHub用户账户的攻击者,或者只是想绕过这一限制的开发人员,可以简单地将代码推送到受保护的分支。由于受保护分支中的代码通常由许多用户或其他系统在生产系统中使用,因此影响很大,”Gil指出。

 

GitHub是一个为协作而设计的软件开发和版本控制平台,为数百万用户和公司提供服务,他们使用它来托管他们的代码库——用于构建特定软件系统、应用程序或软件组件的源代码集合。

 

GitHub的发言人目前没有透露更多细节。

攻击分析

GitHub Actions是GitHub的持续集成/持续交付产品,它可以在您的存储库中自动执行、自定义和执行从开发到生产系统的软件开发工作流程。

 

研究人员表示,GitHub Actions 默认安装在任何 GitHub 组织及其所有存储库上,任何具有将代码推送到存储库的写入权限的用户都可以创建一个在推送代码时运行的工作流。

 

“在每个工作流运行时,GitHub 都会创建一个唯一的GitHub令牌 (GITHUB_TOKEN) 以在工作流中使用以针对存储库进行身份验证。这些权限具有默认设置,在组织或存储库级别设置。该设置允许授予该令牌有限的权限——内容和元数据范围的读权限,或许可的权限——内容、包和拉取请求等各种范围的读/写权限。”研究人员指出。

 

然而,研究人员指出,任何对存储库具有写访问权限的用户都可以修改授予令牌的权限,并且可以根据需要通过操作工作流文件中的权限密钥来添加或删除访问权限。

 

如果攻击者劫持了用户帐户,他们可以通过创建拉取请求将代码推送到受保护的分支,意图将其恶意代码合并到受保护的分支。

 

拉取请求允许用户告诉其他人他们已推送到 GitHub 上存储库中的分支的更改。

 

GitHub 网站解释说,一旦 PR 打开,用户就可以与合作者讨论和审查潜在的更改,并在将更改合并到基本分支之前添加后续提交工作。

 

“因为需要审批,PR创建后无法合并。但是,工作流立即运行,并且PR由github-actions机器人(GITHUB_TOKEN所属的机器人)批准。它不是组织成员,但算作PR批准,并有效地允许攻击者批准他们自己的 PR,基本上绕过分支保护规则,结果将代码推送到受保护的分支,而无需任何其他组织成员的批准,”研究人员指出。

 

组织所有者可以设置分支保护规则,在合并之前要求拉请求批准,而用户不能批准自己的拉请求。

如何缓解

Gil表示,没有迹象表明这个问题是否被利用,但建议GitHub所有者在没有使用的情况下禁用GitHub Actions。这个问题可以通过需要代码所有者的批准来解决,或者需要两个或更多的批准来合并一个拉取请求。

 

GitHub表示他们会努力修复此安全漏洞。攻击者肯定可以利用这个问题,试图进入生产系统,扩大对受害者资产的控制。吉尔指出。

 

安全漏洞将软件置于危险之中。数据显示,90%的网络安全事件和软件漏洞被利用有关,在软件开发期间通过静态代码检测技术可以帮助开发人员减少30%-70%的安全漏洞,大大提高软件安全性。当前,通过提高软件自身安全性以确保网络安全,已成为继传统网络安全防护软件之后的又一有效手段。

 

参读链接:

 

https://www.inforisktoday.com/flaws-in-github-actions-bypass-code-review-mechanism-a-17733


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//