Homebrew cask 恶意软件包投毒威胁通告
报告编号:B6-2021-042201
报告来源:360CERT
报告作者:360CERT
更新日期:2021-04-22
1、事件简述
2021年04月22日,360CERT监测发现Homebrew官方发布了安全事件通告,事件等级:严重,事件评分:10.0。
Homebrew是一款自由及开放源代码的软件包管理系统,用以简化macOS系统上的软件安装过程,因其可扩展性得到了一致好评,而在Ruby on Rails社区广为人知。Homebrew使用GitHub,通过用户的贡献扩大对软件包的支持。
2021年04月18日,国外安全人员在Homebrew项目中发现其review-cask-prGitHub Action存在缺陷,攻击者可以将任意代码注入到cask类型的软件包中,并将其合并到包管理库的主分支上。当用户使用brew upgrade安全装软件包更新时,会将恶意包下载并执行其中的恶意代码。
对此,360CERT建议广大用户好资产自查以及预防工作,以免遭受黑客攻击。
2、风险等级
360CERT对该事件的评定结果如下
评定方式 | 等级 |
---|---|
威胁等级 | 严重 |
影响面 | 广泛 |
360CERT评分 | 10.0 |
3、事件详情
Homebrew组织使用review-cask-prGithub Action程序自动审核用户提交的软件包,并将其合并到homebrew-cask或homebrew-cask-*仓库的主分支中。
在review-cask-pr中使用了git_diff依赖,当其解析用户提交的合并请求时会对合并进行diff检查,由于其diff检查逻辑存在缺陷,将忽略存在问题的代码,从而使存在恶意代码的合并请求通过验证完成自动合并。
4、修复建议
通用修补建议
目前官方已经采取紧急措施:
- 存在漏洞的review-cask-prGitHub Action已经被禁用,并从所有的仓库中移除。
- 自动合并的GitHub Action已经被禁用,并从所有的仓库中删除。
- 已经删除了自动提交到Homebrew/cask*目录的功能。
在测试该漏洞期间官方已做无害化的处理,在此期间使用的用户不受任何影响。
目前暂无消息表明该漏洞在公布前存在在野利用。
360CERT建议使用homebrew的用户及时排查/usr/local/Homebrew/Library/Taps/homebrew/homebrew-*目录下的ruby文件中是否存在恶意代码,避免遭受黑客攻击。
5、时间线
2021-04-21Homebrew官方发布威胁通告
2021-04-22360CERT发布通告
6、参考链接
1、 Homebrew官方威胁通告
https://brew.sh/2021/04/21/security-incident-disclosure/
2、 hackerone针对该漏洞的讨论
https://hackerone.com/reports/1167608
7、特制报告下载链接
一直以来,360CERT对全球重要网络安全事件进行快速通报、应急响应。为更好地为政企用户提供最新漏洞以及信息安全事件的安全通告服务,现360CERT正式推出安全通告特制版报告,以便用户做资料留存、传阅研究与查询验证。用户可直接通过以下链接进行特制报告的下载。
Homebrew cask 恶意软件包投毒威胁通告
http://pub-shbt.s3.360.cn/cert-public-file/【360CERT】Homebrew_cask_恶意软件包投毒威胁通告.pdf