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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2026-42533 — Docker 实验环境,复现 CVE-2026-42533,一个通过两遍捕获覆盖导致的预认证 nginx 堆溢出和信息泄露漏洞,包含 PoC 脚本和已修补版本对比。 | Kitploit
工具/GitHubGitHub/ivanesk315/cve-2026-42533
漏洞扫描器漏洞分析漏洞利用Web应用程序漏洞利用Web安全模糊测试论文与研究学习与教育实验室与实践
GitHubivanesk315/cve-2026-42533

CVE-2026-42533

Docker 实验环境,复现 CVE-2026-42533,一个通过两遍捕获覆盖导致的预认证 nginx 堆溢出和信息泄露漏洞,包含 PoC 脚本和已修补版本对比。

0天前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
查看仓库
分享

CVE-2026-42533 实验环境 — NGINX 两遍捕获覆盖 RCE

CVSS 9.2(严重) — nginx 中的预认证堆缓冲区溢出 + 信息泄露 受影响版本:nginx 0.9.6 – 1.30.3 / 1.31.2 | 已修复版本:1.30.4 / 1.31.3

架构

root@kitploit:~
                    ┌─────────────────────────────────────┐
                    │           宿主机                     │
                    │                                      │
  PoC 脚本 ─────────┤  :8080 ──► nginx-vuln  (1.26.x)     │
                    │              │          存在漏洞      │
                    │              ▼                        │
                    │           backend (Python echo)       │
                    │              ▲                        │
                    │              │                        │
                    │  :8081 ──► nginx-patched (1.30.4)     │
                    │                          安全          │
                    └─────────────────────────────────────┘

快速开始

root@kitploit:~
# Build and start
docker compose up --build -d

# Verify
curl http://localhost:8080/health
curl http://localhost:8081/health

# Run PoC
python3 poc_overflow.py          # Heap overflow (crash worker)
python3 poc_infoleak.py          # Info leak (heap residue)
bash poc_curl.sh                 # Quick curl-based tests

# Compare with patched
python3 poc_overflow.py localhost 8081
python3 poc_infoleak.py localhost 8081

# Check for crashes
docker logs nginx-vuln 2>&1 | grep -iE 'signal|segfault|abort'

# Cleanup
docker compose down

漏洞机制

根本原因

nginx 使用共享的可变数组 r->captures,以两遍方式求值指令值 (proxy_set_header、return、add_header 等):

遍次用途读取 r->captures
LEN测量所需缓冲区大小是 — 以获取 $1 长度
(正则 map 在此处求值,覆盖 r->captures)
VALUE将数据写入已分配的缓冲区是 — 但此时 $1 指向了别处

存在漏洞的配置模式

root@kitploit:~
map $http_user_agent $is_bot {
    ~*(bot|crawl|spider)  1;         # ← regex map = clobber trigger
    default               0;
}

location ~ "^/api/v1/(.+)$" {       # ← regex capture source
    proxy_set_header X-Route "$1 — $is_bot";   # ← two-pass sink
    #                         ^^    ^^^^^^^
    #                  capture ref + map var in same buffer = BUG
}

攻击方向

方向URI 大小Map 输入大小结果
溢出短(3 B)长(4096 B)LEN 分配小缓冲区,VALUE 写入大数据 → 堆溢出
信息泄露长(8000 B)短(5 B)LEN 分配大缓冲区,VALUE 写入小数据 → 响应中残留堆数据

实验场景

端点汇聚点Map 触发条件演示
/api/v1/{path}proxy_set_header$is_bot (User-Agent)溢出
/leak/{path}return + add_header$ref_domain (Referer)信息泄露
/rce/{path}set + return$is_bot (User-Agent)溢出
/safe/{path}return(无 map)无对照(安全)

文件

文件用途
docker-compose.yml实验环境编排
Dockerfile.nginx-vuln存在漏洞的 nginx 1.26.x
Dockerfile.nginx-patched已修复的 nginx 1.30.4
nginx-vuln.conf带注释模式的存在漏洞配置
backend.py用于检查代理头的回显服务器
poc_overflow.py堆溢出 PoC(递增载荷大小)
poc_infoleak.py信息泄露 PoC(堆残留检测)
poc_curl.sh基于 curl 的快速测试

检测

使用配置扫描器:

root@kitploit:~
python3 nginx_capture_clobber_scan.py /etc/nginx/nginx.conf

缓解措施(无需打补丁)

  1. 将正则捕获和正则 map 变量分离到不同的指令/位置中
  2. 使用命名捕获,并仅在持有正则匹配的块内引用它们
  3. 当捕获在其他地方被使用时,避免在 map 中使用 ~ / ~* 正则模式

参考资料

  • 研究员分析文章 (cyberstan.co.uk)
  • NVD 条目
  • 配置扫描器
  • nginx 安全公告

仅供教育和授权安全测试使用。

下载工具