Rancher以明文形式存储秘密,暴露Kubernetes集群以供接管

安全研究人员发现,开源Kubernetes管理工具Rancher的一个现已打补丁的版本以明文形式存储机密。该问题影响了各种Kubernetes对象,并可能使攻击者接管整个集群。Rancher于2020年被德国软件提供商SUSE收购,在DevOps和Kubernetes社区中很受欢迎。

该平台允许开发人员部署和运行来自不同提供商的Kubernetes容器集群。它还通过集中身份验证和基于角色的集群访问控制来增加价值,这允许管理员从一个位置控制集群访问。

最近发现这一发现的Linux系统工程师Marco Stuurman在调查Rancher的服务令牌时偶然发现了它。“我不是安全研究员,但我对这样的事情保持警惕,”Stuurman说。

“我从我们的Rancher设置中获取了信息,并对令牌产生了怀疑。我以前研究过类似的代币,所以引起了我的注意。”

根据Stuurman的发现,Rancher将密码、API密钥和帐户令牌等敏感字段直接以未加密的明文形式存储在Kubernetes对象上。

“以明文形式存储秘密确实是不好的做法,但有时需要。在这种情况下,您不能选择对密钥进行散列,因为这是集群的访问密钥,”Stuurman说。“问题在于访问此密钥所需的权限较低。”

根据错误报告,明文数据将可供任何通过API读取Kubernetes对象的人使用。

“攻击者只需要对Rancher管理的集群尽可能少的权限。例如,我们的监控机器人用户的唯一权限是将来自牧场主的HTTP请求代理到目标集群中运行的监控实例,”Stuurman说。

所有Kubernetes对象都会受到影响。

用于配置集群的服务帐户令牌特别重要,因为它具有最高权限。在这种情况下,如果没有任何其他高级预防措施,该漏洞可以允许攻击者提升他们的权限并完全接管集群。

该问题已在最新版本的Rancher中得到解决。该项目的维护者提供了一个脚本来轮换Rancher服务帐户令牌。他们还建议管理员限制对Rancher实例的访问,检查其下游集群是否存在潜在的违规迹象,并更改可能已泄露的凭据。

“保护集群的最佳方式是限制您信任的人访问集群管理工具,”Stuurman说。“然而,这并不意味着它不应该尽可能安全。”

发表评论

评论已关闭。

相关文章