用途:该技能用于在已获批准的集群访问范围内进行严格限定的 Kubernetes 验证,适用于渗透测试中的发现与侦察、漏洞分析,以及次要的验证与受控影响演示、复测与收尾阶段。
适用场景:需要确认集群资源、命名空间或 RBAC 范围;需要验证某个已批准身份能查看或管理什么;需要在 Kubernetes 加固后进行低影响复测。当集群范围或 kubeconfig 授权不清晰时不应使用;未经明确批准,不应执行会改变工作负载或状态的命令。
必要输入:已批准的集群上下文、命名空间与 RBAC 范围、只读与可变更操作的边界。
流程:先确认当前集群与命名空间上下文,从资源与 RBAC 检查入手,使查询紧扣当前假设,优先只读验证而非更改工作负载,并保留复测所需的准确上下文与命名空间。
常用命令(将示例上下文与命名空间替换为已批准范围内的值): kubectl config current-context kubectl get pods --all-namespaces kubectl get secrets -n default kubectl get secret <secret-name> -n default -o jsonpath='{.data}' kubectl auth can-i --list -n default kubectl auth can-i --list --as=system:serviceaccount:default:default kubectl exec -it <pod-name> -n default -- /bin/sh kubectl get pod <pod-name> -n default -o yaml kubectl get clusterrolebindings -o wide
证据采集:实际生效的 Kubernetes 身份与 RBAC 范围、实质影响风险的工作负载或密钥暴露情况、使用的准确集群上下文与命名空间。
安全边界:默认只读验证;未经明确书面批准,不得修改工作负载、密钥或 RBAC。