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

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

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

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

工具目录

分类

查看所有分类
Loading categories
cve-2021-4034-mock — 安全、可控的模拟系统,仿真CVE-2021-4034(PwnKit),具备越界读/写、环境变量注入及内核防御检测功能,用于教育性漏洞利用练习。 | Kitploit
工具/GitHubGitHub/leemyunglyul/cve-2021-4034-mock
权限提升漏洞分析漏洞利用学习与教育二进制利用实验室与实践
GitHubleemyunglyul/cve-2021-4034-mock

cve-2021-4034-mock

安全、可控的模拟系统,仿真CVE-2021-4034(PwnKit),具备越界读/写、环境变量注入及内核防御检测功能,用于教育性漏洞利用练习。

查看仓库
23个月前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2021-4034 (PwnKit) 模拟漏洞系统

该项目是一个模拟系统,用于重现 Linux pkexec 守护进程中发现的 CVE-2021-4034(越界读/写) 漏洞的核心运行原理。在没有实际 SUID 权限提升的情况下,在受控环境中安全地模拟了环境变量内存区域越界及恶意载荷注入机制。

特别是,该模拟系统能够检测最新 Linux 内核的 execve 防御机制(传递空数组时强制插入空字符串从而形成 argc=1 的现象),并通过修正偏移量,成功模拟了过去存在漏洞的内存环境。

📂 文件结构

root@kitploit:~
cve-2021-4034-mock/
├── README.md                # 项目说明及执行指南
├── src/
│   ├── mock_pkexec.c        # 缺少参数值 (argc) 校验的目标守护进程源码
│   └── exploit.c            # 通过 execve 传递攻击载荷的攻击者源码
└── bin/                     # 编译后的可执行文件存储路径(构建时生成)

🚀 构建方法

在终端中进入项目根目录后,按顺序逐行输入以下命令以编译源码。

root@kitploit:~
# 1. 创建存放可执行文件的 bin 文件夹
mkdir -p bin

# 2. 编译目标程序(模拟系统)
gcc -Wall -Wextra -o bin/mock_pkexec src/mock_pkexec.c

# 3. 编译攻击利用脚本
gcc -Wall -Wextra -o bin/exploit src/exploit.c

编译成功后,bin/ 文件夹内将生成 mock_pkexec 和 exploit 可执行文件。

💻 运行及演示

1. 正常运行演示

正常传递参数执行,证明防御逻辑导致权限校验失败或程序安全退出。

root@kitploit:~
./bin/mock_pkexec test_argument
  • 结果: 内存映射正常输出,程序以 [OK] 消息结束。

2. 攻击演示及漏洞触发

运行攻击脚本,强制传递 argc=0 载荷(NULL 数组),触发漏洞。

root@kitploit:~
./bin/exploit
  • 结果详细分析:
  1. 内核防御机制检测: 模拟系统检测到最新 OS 内核强制将 argc 调整为 1,并动态修正内存引用索引。
  2. 越界发生: 因索引校验缺失,超出 argv 数组边界,侵入相邻的 envp 区域。
  3. 环境变量注入: 受限的安全环境变量(GCONV_PATH)被成功覆写到系统内存,并输出红色的 [FATAL] ENVIRONMENT CORRUPTION DETECTED! 警告。

🧹 清理

测试结束后,如需删除编译的二进制文件,请使用以下命令。

root@kitploit:~
rm -rf bin/
下载工具