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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2021-25741 — CVE-2021-25741 Kubernetes 漏洞的利用程序,该漏洞允许通过竞态条件将主机文件系统挂载到 Pod 中,附带部署脚本和技术细节。 | Kitploit
工具/GitHubGitHub/betep0k/cve-2021-25741
漏洞分析漏洞利用渗透测试云安全容器逃逸
GitHubbetep0k/cve-2021-25741

CVE-2021-25741

CVE-2021-25741 Kubernetes 漏洞的利用程序,该漏洞允许通过竞态条件将主机文件系统挂载到 Pod 中,附带部署脚本和技术细节。

查看仓库
30144年前Kitploit 审核通过

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

关于

这是针对 CVE-2021-25741 漏洞的利用程序。 该漏洞允许在新建的 POD 中以读写权限挂载 Node 文件系统。

你可以在这里了解更多关于该漏洞的信息:

https://security.googleblog.com/2021/12/exploring-container-security-storage.html

我不是该漏洞的作者,只是编写了这个利用程序。

感谢 @russtone 和 @maximusfox 在利用程序开发过程中提供的帮助。

条件

  1. 你拥有创建新 POD 的权限
  2. 节点运行存在漏洞的 kubelet

存在漏洞的 kubelet 版本:

  • v1.22.0 - v1.22.1
  • v1.21.0 - v1.21.4
  • v1.20.0 - v1.20.10
  • <= v1.19.14

使用方法

只需运行 run.sh 并等待即可 :) 利用过程会花费一些时间(对我来说是 10-20 分钟),因为它基于竞态条件。

root@kitploit:~
chmod +x run.sh; ./run.sh

当你收到 "Success" 消息时,你可以附加到 POD 并在 /mnt/data 目录中找到 Node 文件系统。 你可以使用以下命令进行附加:

root@kitploit:~
kubectl exec -i -t cve202125741 -c mount-container -- /bin/sh

技术细节

利用程序包含 2 个部分:

  • pod.yaml

    包含利用漏洞的 POD 配置的 YAML 文件。由于竞态条件,它并非每次都能成功,因此你需要循环执行。

  • run.sh

    部署 pod.yaml、检查结果并在需要时重新部署的脚本。

对于使用 RENAME_EXCHANGE 选项的 renameat2 二进制文件,我使用了这段代码:https://gist.github.com/eatnumber1/f97ac7dad7b1f5a9721f

你可以自行编译并在 pod.yaml 中替换(如果你愿意的话):

root@kitploit:~
gcc renameat2.c -o renameat2
base64 renameat2

故障排除

系统中没有 kubectl

解决方案:

  1. 直接从官方网站下载并安装到你的系统中
  2. 如果无法做到,那么你需要重写 run.sh,直接向 Kubernetes API 发送 HTTP 请求,而不使用 kubectl

我没有在 POD 上运行 /bin/sh 的权限

解决方案:

  1. 你可以尝试将 /bin/sh 绑定到 TCP 端口并连接到该端口。
  2. 你可以编辑 pod.yaml 并添加所需的命令。它将在部署过程中执行。
下载工具