Aqua 研究团队在一篇研究论文中表示,他们在公共存储库中发现了 Kubernetes 机密(secret),这些机密允许访问软件开发生命周期 (SDLC) 中的敏感环境,并引发严重的供应链攻击威胁。
研究团队警告称,涉及的公司包括SAP的Artifacts管理系统,拥有超过9500万个工件,还有两家顶级区块链公司和其他一些财富500强公司。这些编码的Kubernetes配置机密被上传到了公共代码库中。
Kubernetes机密对于在开源容器编排环境中管理敏感数据至关重要。然而,这些机密通常以未加密的形式存储在API服务器的底层数据存储中,使其容易受到攻击。
Aqua团队表示,他们专注于两种类型的Kubernetes机密,即dockercfg和dockerconfigjson,这些机密存储了访问外部注册表的凭证,并使用GitHub的API来识别意外上传到公共代码库中的Kubernetes机密实例。目前,他们发现了数百个公共代码库中的实例,影响范围涉及个人、开源项目和大型组织。
Aqua研究团队使用GitHub的API进行搜索,以检索包含.dockerconfigjson和.dockercfg的所有条目。初始查询结果超过8000个,在进一步的细化搜索——仅包括那些包含以base64编码的用户名和密码值的记录后,找到了438个可能包含有效凭证的记录。其中203个记录包含了提供对相应注册表访问权限的有效凭证。在大多数情况下,这些凭证允许拉取和推送权限。
此外,Aqua团队发现在这些注册表中经常存在私有容器映像。并通知了相关组织有关暴露的机密和他们应采取的措施。
Aqua团队表示,他们发现许多从业者有时会忽略从他们提交到GitHub公共代码库的文件中删除机密,从而暴露敏感信息。“这些机密只需要一个base64解码命令就可以以明文形式显示出来,”研究人员警告称。
在涉及暴露9500万个工件的Artifacts仓库中,Aqua表示,此Artifacts仓库密钥的暴露代表了重大的安全风险。由此访问可能带来的潜在威胁包括专有代码泄露、数据泄露和供应链攻击的风险,所有这些都可能损害组织的完整性和客户的安全。