k8s KubeConfig泄露-黑客远程调用ApiServer创建特权容器获取Node节点权限应急排查
近2年的应急响应案例中,k8s的入侵案例逐渐增多。并且多次遇到客户云上内网被入侵后黑客窃取了KubeConfig文件,从公网远程调用ApiServer创建容器获取Node服务器权限植入后门的案例。
开发者/CI 系统的 kubeconfig 文件泄露到 Git / 日志 / 备份
│
▼ 黑客获取该文件
黑客在公网直接调用 apiserver(6443 端口)
│
▼ 权限确认为 cluster-admin
黑客创建一个特权 Pod,挂载宿主机根目录
│
▼ kubectl exec 进容器
chroot / nsenter 拿到 Node 宿主机的 root shell
│
▼
完全控制该 Node 宿主机
泄露途径非常多样:.kube/config 被 git add -A 带进仓库、CI 流水线打印了 KUBECONFIG 环境变量、开发者把 kubeconfig 存到共享网盘……一旦泄露,攻击者就能以持有人的身份操作集群,而集群本身不会有任何告警。