适用于Kubernetes的AWS IAM Authenticator中的漏洞允许权限提升攻击

一位安全研究人员发现,AWS IAM Authenticator for Kubernetes中的一个漏洞可能允许恶意行为者冒充其他用户并提升Kubernetes集群中的权限。该漏洞被跟踪为CVE-2022-2385,现在已修补的漏洞可能允许攻击者冒充其他用户并在使用AccessKeyID模板参数配置的Elastic Kubernetes服务(EKS)集群中提升权限。攻击者可以向安全令牌服务(STS)GetCallerIdentity端点发送恶意签名请求,该端点多次包含具有不同值的相同参数。

Lightspin的研究员Gafnit Amiga在一篇博文中详细介绍了攻击者如何发送两个具有相同名称但大小写不同的变量——例如,他们能够同时发送“Action”和“action”。

Amiga解释说:“由于[易受攻击的代码中的变量]都是……‘ ToLower ’,因此queryParamsLower字典中的值将被覆盖,而对AWS的请求将连同参数及其值一起发送。

“很酷的是,AWS STS将忽略它不期望的参数,在这种情况下,AWS STS将忽略action参数。

Amiga写道:“因为for循环没有排序,所以参数并不总是按照我们想要的顺序覆盖,因此我们可能需要多次将带有恶意令牌的请求发送到AWS IAM Authenticator服务器。

自2017年10月第一次提交以来,就存在易受攻击的根本原因。因此,从第一天开始,更改操作和未签名的集群ID令牌都可以利用。

自2020年9月以来,可以通过AccessKeyID使用用户名。

Amiga说:“该漏洞很难定位,而且在 STS 忽略意外的附加请求参数时,也很难注意到值可以被覆盖。”

“我尝试了其他攻击媒介,希望能够操纵HTTP客户端,但它们可以抵御它们,”Amiga说。

亚马逊已经修复了Amiga所说的“显着改善了流程”的问题。研究人员补充说:“整个过程是一个月,他们在这个过程中让我更新。我们还协调了披露。”

更新已在0.5.9版中修复。更多信息可以在亚马逊的安全公告中找到。

发表评论

评论已关闭。

相关文章