“「K8S 生态周报」内容主要包含我所接触到的 K8S 生态相关的每周值得推荐的一些信息。欢迎订阅知乎专栏「k8s生态」[1]。
”
大家好,我是张晋涛。
Kubernetes CVE-2022-3172 安全漏洞
扩展 Kubernetes 的方法有很多种,目前扩展 API 方面用到最多的是 自定义资源定义(CRD)和聚合 API(Aggregation API)。 自定义资源定义主要是为了让 Kubernetes 集群中可以识别到新的资源,此处我主要说明下后者。
聚合 API 实际上是在 kube-apiserver 中运行的,在新 API 注册之前,它并不会工作。如果要添加新的 API,则需要创建一个APIService
对象,用来申请 Kubernetes 中新的 URL 路径。注册成功后,当有发送到此路径中的请求,则会被转发到已经注册 的 APIService 上。
本次公布的 CVE-2022-3172 便与聚合 API 有关。
就像我前面介绍的那样,当新的 URL 被注册成功后,发送到该路径的请求便会被转发到已经注册的 APIService 上。 安全人员发现,目前的实现中存在一个漏洞,APIService 可以将客户端的请求转发到任意的 URL 上,这就有可能会导致 Client 发送请求时,所携带的一些认证信息可能会被发送给第三方。
这也就是我们在安全领域常提到的 SSRF(Server Side Request Forgery),即:服务端请求伪造。 与之对应的是 CSRF(Client Side Request