SuperAPI AI 工具集

kubernetes-pentesting

安全与审计

查看项目

更新于 10-16 07:22

技能介绍

用途:面向 Kubernetes 集群的渗透测试操作手册,适用于已获得集群内部 Pod、节点或外部暴露面访问权后的攻防评估。

主要能力:

  1. API Server 访问:检查匿名认证(curl -sk https://APISERVER:6443/api/v1/namespaces 等),使用 Pod 内服务账号令牌认证(token 位于 /var/run/secrets/kubernetes.io/serviceaccount/token,可用 --cacert 配合 curl),或用 kubeconfig 认证(kubectl --kubeconfig=/etc/kubernetes/admin.conf get pods --all-namespaces)。常见端口 6443、8443、8080。
  2. RBAC 枚举:kubectl auth can-i --list 自查权限,枚举 Role/ClusterRole 并查找通配符过度授权;dangers 权限包括 pods/exec、创建 Pod、读取 secrets、serviceaccounts/token 创建、nodes/proxy、escalate、bind、impersonate。
  3. 服务账号令牌滥用:解码 JWT 查看命名空间与账号,利用提权 SA 读取密钥或创建特权 Pod(hostPID、hostNetwork、privileged、hostPath /),用 kubectl create token 生成令牌。
  4. etcd 直接访问:检查 2379 端口匿名访问,或用主机证书(/etc/kubernetes/pki/etcd/)执行 etcdctl get / --prefix 提取 secrets。
  5. Kubelet API:10250/10255 匿名检查,通过 /run/NAMESPACE/POD/CONTAINER 直接执行命令绕过 API Server RBAC,或读取 containerLogs。
  6. 云环境攻击:AWS EKS 通过 169.254.169.254 IMDS(含 IMDSv2)获取 IAM 临时凭证,IRSA 令牌位于 /var/run/secrets/eks.amazonaws.com/serviceaccount/token;GCP GKE 读取 metadata.google.internal 获取 OAuth2 令牌;Azure AKS 通过 IMDS 获取托管身份令牌。
  7. 准入 Webhook 绕过:利用排除命名空间、failurePolicy:Ignore、临时容器 kubectl debug、节点静态 Pod 清单目录 /etc/kubernetes/manifests/。
  8. 镜像仓库访问:提取 dockerconfigjson 拉取密钥并检查镜像历史中的硬编码密钥。
  9. 网络策略枚举与绕过:查找无策略命名空间,采用 DNS 出站、允许端口隧道、hostNetwork 等方式。

工具:kubectl、kube-hunter --remote、peirates、kubesploit、CDK、kubeletctl、kubeaudit。

限制:本文为技能手册资料,未提供适用集群版本、授权前提、法律合规说明及具体环境验证结果;使用前需确认自身获得合法授权,实际效果取决于集群配置。