博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
K8s爆严重安全漏洞?有何应对措施与建议
阅读量:4707 次
发布时间:2019-06-10

本文共 1257 字,大约阅读时间需要 4 分钟。

Kubernetes最近爆出严重安全漏洞,影响几乎目前所有的版本。实际影响究竟多大?老版本用户是否必须升级?以下是华为云容器服务团队对该漏洞的分析解读。

Kubernetes爆出的严重安全漏洞:

攻击者通过构造特殊请求,可以在一个普通权限的链接上提升权限,向被代理的后端服务器发送任意请求。

该问题影响了几乎Kubernetes目前所有的版本,包括:

Kubernetes v1.0.x-1.9.x

Kubernetes v1.10.0-1.10.10 (fixed in v1.10.11)

Kubernetes v1.11.0-1.11.4 (fixed in v1.11.5)

Kubernetes v1.12.0-1.12.2 (fixed in v1.12.3)

什么样的集群可能被攻击?

集群启用了扩展API server,并且kube-apiserver与扩展API server的网络直接连通;

集群对攻击者可见,即攻击者可以访问到kube-apiserver的接口,如果你的集群是部署在安全的私网内,那么不会有影响;

集群开放了 pod exec/attach/portforward 接口,则攻击者可以利用该漏洞获得所有的kubelet API访问权限。

再看具体影响的场景

集群使用了聚合API,只要kube-apiserver与聚合API server的网络直接连通,攻击者就可以利用这个漏洞向聚合API服务器发送任何API请求;

如果集群开启了匿名用户访问的权限,则匿名用户也利用这个漏洞。不幸的是K8s默认允许匿名访问,即kube-apiserver的启动参数”-- anonymous-auth=true”;

给予用户Pod的exec/attach/portforward的权限,用户也可以利用这个漏洞升级为集群管理员,可以对任意Pod做破坏操作;

该漏洞的更详细讨论,可见社区Issue:

应对措施与建议

综合以上分析,使用华为云CCE服务的小伙伴们不必过于担心,因为:

CCE服务创建的集群默认关闭匿名用户访问权限

CCE服务创建的集群没有使用聚合API

如果,你开启了RBAC权限,且给用户分配了Pod的exec/attach/portforward权限,华为云CCE容器服务将于今晚完成所有现网1.11版本K8S集群的在线补丁修复,针对低于v1.10的集群(社区已不对其进行修复),本周我们也会提供补丁版本进行修复,请关注升级公告,及时修复漏洞。

Tips:如果你是自己搭建K8s集群,为提高集群的安全系数,建议如下,

一定要关闭匿名用户访问权限。

尽快升级到社区漏洞修复版本。合理配置RBAC,只给可信用户Pod的

exec/attach/portforward权限.

如果你当前使用的K8s版本低于v1.10,不在官方补丁支持范围内,建议自行回合补丁代码 :

转载于:https://www.cnblogs.com/huaweiyuncce/p/10071712.html

你可能感兴趣的文章
memcached 细究(三)
查看>>
RSA System.Security.Cryptography.CryptographicException
查看>>
webservice整合spring cxf
查看>>
[解题报告] 100 - The 3n + 1 problem
查看>>
Entity Framework 学习高级篇1—改善EF代码的方法(上)
查看>>
Mybatis逆向工程配置文件详细介绍(转)
查看>>
String类的深入学习与理解
查看>>
不把DB放进容器的理由
查看>>
OnePage收集
查看>>
Java parseInt()方法
查看>>
yahoo的30条优化规则
查看>>
[CCF2015.09]题解
查看>>
[NYIST15]括号匹配(二)(区间dp)
查看>>
json_value.cpp : fatal error C1083: 无法打开编译器生成的文件:No such file or directory
查看>>
洛谷 P1101 单词方阵
查看>>
Swift DispatchQueue
查看>>
C#和JAVA 访问修饰符
查看>>
小甲鱼OD学习第1讲
查看>>
HDU-1085 Holding Bin-Laden Captive-母函数
查看>>
php提示undefined index的几种解决方法
查看>>