Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

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

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

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
cve-2026-15748 — 扫描 WordPress Forminator 以查找 CVE-2026-15748 未认证 RCE 漏洞。检测易受攻击的站点、爬取表单、提取 nonce,并运行安全的上传测试。 | Kitploit
工具/GitHubGitHub/yora1928/cve-2026-15748
Web漏洞扫描器漏洞利用Web应用程序漏洞利用信息收集Web安全渗透测试网络爬虫
GitHubyora1928/cve-2026-15748

cve-2026-15748

扫描 WordPress Forminator 以查找 CVE-2026-15748 未认证 RCE 漏洞。检测易受攻击的站点、爬取表单、提取 nonce,并运行安全的上传测试。

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

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-15748 — Forminator 安全扫描器

一个基于 Python 的安全研究与漏洞评估扫描器,用于识别使用 Forminator 插件的 WordPress 安装,并评估与版本相关的暴露风险。

仅供教育及授权测试使用

仅对你拥有或已获得明确评估许可的系统运行此项目。

概述

CVE-2026-15748 是一个与 WordPress 的 Forminator 插件相关的漏洞。

本项目为安全研究和授权测试提供了一个扫描器。它执行一系列被动检查和应用层检查,以识别 WordPress、定位 Forminator、在可能的情况下确定已安装版本、检查相关页面和表单,并报告最终的评估结果。

该扫描器旨在帮助安全研究人员了解已授权 WordPress 环境的暴露情况,而不将扫描器结果视为可利用性的绝对证据。

此工具的功能

该扫描器遵循以下总体工作流程:

Target
  |
  v
Normalize URL
  |
  v
Detect WordPress
  |
  +---- not detected ----> NOT WORDPRESS
  |
  v
Crawl relevant pages
  |
  v
Detect Forminator
  |
  v
Detect Forminator version
  |
  v
Compare version
  |
  v
Inspect forms
  |
  v
Generate result

功能特性

功能描述
WordPress 检测检测目标是否疑似使用 WordPress。
Forminator 检测搜索 Forminator 插件的相关迹象。
版本检测尝试从可用来源识别已安装的 Forminator 版本。
版本检查将检测到的版本与配置的 VULN_MAX 值进行比较。
网站爬取收集相关页面和内部链接以供进一步检查。
Sitemap 检测检查常见的 WordPress sitemap 位置。
表单检测查找相关的 Forminator 表单和表单元素。
Nonce 检测尝试在检测到的表单数据中识别 Forminator nonce。
多线程支持并发处理多个目标。
重试处理根据配置的限制重试失败的请求。
请求延迟在请求之间添加可配置的随机延迟。
详细结果将收集到的评估结果写入详细结果文件。

环境要求

  • Python 3
  • requests
  • packaging
  • urllib3

安装所需软件包:

pip install requests packaging urllib3

或:

python -m pip install requests packaging urllib3

安装

克隆仓库:

git clone https://github.com/yora1928/cve-2026-15748.git

进入项目目录:

cd cve-2026-15748

安装依赖:

pip install requests packaging urllib3

验证 Python 安装:

python --version

配置

扫描器配置直接在源代码中定义:

TIMEOUT = 15
THREADS = 8
VULN_MAX = "1.56.1"
MAX_RETRIES = 3
DELAY_MIN = 1.0
DELAY_MAX = 2.5
CRAWL_DEPTH = 2

配置参考

变量默认值描述
TIMEOUT15HTTP 请求超时时间。
THREADS8用于扫描的工作线程数量。
VULN_MAX1.56.1扫描器版本评估中被视为受影响的最大版本。
MAX_RETRIES3失败请求的最大重试次数。
DELAY_MIN1.0最小请求延迟。
DELAY_MAX2.5最大请求延迟。
CRAWL_DEPTH2最大爬取深度。

上述数值描述了扫描器当前的源代码配置。

用法

扫描器接受单个目标 URL 或包含多个目标 URL 的文本文件。

1. 扫描单个目标

python cve-2026-15748.py -u https://target.com

-u 和 --url 指定一个目标 URL。

在对单个授权环境进行评估时使用此模式。

2. 扫描多个目标

创建一个文件,例如 targets.txt:

https://target1.example
https://target2.example
https://target3.example

然后运行:

python cve-2026-15748.py -f targets.txt

-f 和 --file 用于指定目标列表。

每个非空行都被视为一个目标。

3. 更改线程数

默认配置使用 8 个线程。

例如:

python cve-2026-15748.py -f targets.txt -t 10

或:

python cve-2026-15748.py -f targets.txt -t 5

-t 用于更改扫描器使用的工作线程数量。

4. 上传测试模式

扫描器还提供了一个可选的 --upload 模式:

python cve-2026-15748.py -u https://lab.example.com --upload

对于多个已授权目标:

python cve-2026-15748.py -f authorized-targets.txt -t 5 --upload

当满足相关条件时,此模式可以对 Forminator 端点执行 POST/上传请求。

仅在明确授权进行此测试的系统上使用 --upload。

命令参考

命令用途
-u、--url扫描单个目标 URL。
-f、--file从文件中读取多个目标。
-t设置扫描线程数。
--upload为已授权目标启用上传测试模式。

常见示例

单个目标:

python cve-2026-15748.py -u https://target.com

多个目标:

python cve-2026-15748.py -f targets.txt

多个目标并支持自定义并发:

python cve-2026-15748.py -f targets.txt -t 10

授权实验室上传测试:

python cve-2026-15748.py -u https://lab.example.com --upload

检测流程

扫描器在评估过程中会执行多个阶段。

阶段 1 — URL 规范化

在发起请求之前,目标 URL 会被规范化,以便后续检查使用一致的 URL 格式。

阶段 2 — WordPress 检测

扫描器会检查常见的 WordPress 标识和端点,包括:

/wp-login.php
/wp-json
/xmlrpc.php
/wp-content

它还会在响应中搜索以下指示符:

wp-content
wp-includes

如果无法识别 WordPress,扫描器会报告:

[NOT WORDPRESS]

阶段 3 — 页面爬取

扫描器会根据常见路径、sitemap 位置以及从目标中发现的内部链接构建页面列表。

检查的路径示例包括:

/contact
/kontak
/hubungi-kami
/form
/forms
/formulir
/upload
/unggah
/submit
/kirim
/gallery
/kontribusi
/daftar
/pendaftaran
/registration
/register
/file-upload
/submit-document
/unggah-berkas
/upload-file

常见的 sitemap 位置包括:

/sitemap.xml
/sitemap_index.xml
/wp-sitemap.xml

爬虫受 CRAWL_DEPTH 限制。

阶段 4 — Forminator 检测

扫描器会搜索 Forminator 标识符,例如:

forminator-form-<ID>

对于检测到的表单,它会检查相关元素,例如:

type="file"

和:

<select>

它还会尝试获取:

form_id
nonce

从表单 HTML 中。

阶段 5 — 版本检测

扫描器尝试根据目标暴露的信息确定 Forminator 版本。

其中一个来源是类似以下的资源路径:

/wp-content/plugins/forminator/...

带版本参数:

?ver=X.X.X

扫描器还有一个回退机制,用于搜索:

Stable tag:

in HTML 或 readme.txt 中。

报告的检测方法可以包括:

html-source

或:

readme.txt

阶段 6 — 版本评估

配置的评估边界为:

1.56.1

检测到的版本会与 VULN_MAX 进行比较。

可能的评估状态包括:

VULNERABLE
PATCHED

如果检测到 Forminator 但无法确定其版本,扫描器可以报告:

INSTALLED (unknown version)

扫描器分类应被视为一种评估结果,而非目标可利用的绝对证据。

输出

主要输出遵循以下总体结构:

[STATUS] URL VERSION (METHOD) [PAGES] [FORM STATUS] [VULNERABILITY STATUS] [UPLOAD STATUS]

示例:

[FOUND] https://target.com v1.56.0 (html-source) [25 pages] [HAS UPLOAD FORM] [VULNERABLE]

当未检测到上传表单时:

[FOUND] https://target.com v1.56.0 (html-source) [25 pages] [VULNERABLE]

状态参考

FOUND

已检测到 Forminator,并成功收集了相关信息。

NOT FOUND

无法检测到 Forminator。

示例:

[NOT FOUND] https://target.com [17 pages]

NOT WORDPRESS

目标未被检测为 WordPress 安装。

示例:

[NOT WORDPRESS] https://target.com

INSTALLED (unknown version)

Forminator 似乎已安装,但扫描器无法确定其版本。

VULNERABLE

检测到的版本等于或低于配置的边界:

1.56.1

PATCHED

检测到的版本高于配置的边界:

1.56.1

摘要

扫描目标后,该工具会显示类似以下的摘要:

========== SUMMARY ==========
VULNERABLE      : 10
PATCHED         : 5
UNKNOWN VERSION : 3
NOT FOUND       : 20
NOT WORDPRESS   : 2
TOTAL SCANNED   : 40
[+] HAVE UPLOAD FORM: 2

这些值表示当前扫描期间收集的结果。

结果文件

扫描完成后,该工具会创建:

scan_results_detailed.txt

结果文件按如下部分组织:

=== VULNERABLE (with upload form) ===

=== VULNERABLE (no upload form) ===

=== UNKNOWN VERSION (assume vulnerable) ===

示例:

=== VULNERABLE (with upload form) ===
https://target.example - v1.56.0 (html-source) - form_data: ...

=== VULNERABLE (no upload form) ===
https://target.example - v1.55.0 (html-source)

=== UNKNOWN VERSION (assume vulnerable) ===
https://target.example

如果扫描结果包含目标信息或其他敏感数据,请勿将其提交到公共仓库。

项目结构

cve-2026-15748/
|
├── cve-2026-15748.py
├── README.md
├── targets.txt
└── scan_results_detailed.txt
文件用途
cve-2026-15748.py主扫描器实现。
README.md项目文档。
targets.txt待处理目标列表。
scan_results_detailed.txt自动生成的扫描结果。

源代码结构

源代码按若干功能区域组织:

cve-2026-15748.py
|
├── CONFIG
|   ├── TIMEOUT
|   ├── THREADS
|   ├── VULN_MAX
|   ├── MAX_RETRIES
|   ├── DELAY_MIN
|   ├── DELAY_MAX
|   └── CRAWL_DEPTH
|
├── HTTP / REQUEST
|   ├── get_headers()
|   └── safe_get()
|
├── URL
|   └── normalize()
|
├── VERSION
|   ├── is_vulnerable()
|   └── extract_version_from_html()
|
├── WORDPRESS
|   └── check_wordpress()
|
├── CRAWLING
|   └── get_all_pages()
|
├── FORM DETECTION
|   └── extract_form_data_advanced()
|
├── FORMINATOR
|   └── check_forminator_full()
|
├── TESTING
|   └── upload_test()
|
├── SCANNING
|   └── scan_target()
|
└── MAIN
    └── main()

HTTP 行为

扫描器使用:

  • 随机 User-Agent 值
  • HTTP 请求超时
  • 重试处理
  • 随机请求延迟
  • 基于会话的请求
  • 重定向处理

配置的请求行为为:

TIMEOUT      = 15 seconds
MAX_RETRIES  = 3
DELAY        = 1.0–2.5 seconds

局限性

该扫描器存在若干局限性:

  1. 版本检测依赖于目标响应所暴露的信息。
  2. 某些 Forminator 安装可能不会暴露其版本。
  3. UNKNOWN 结果需要人工验证。
  4. 爬取并不保证能发现网站上的每一个页面。
  5. 不同的 HTML 结构可能导致表单无法被检测到。
  6. HTTP 状态行为可能受到 WAF 或服务器配置的影响。
  7. 扫描器结果并非系统可被利用的绝对证据。

缓解措施

对于 WordPress 管理员:

  1. 使用包含相关安全修复的 Forminator 版本。
  2. 保持 WordPress 及已安装插件为最新版本。
  3. 移除不再需要的插件。
  4. 监控异常上传活动。
  5. 审查相关服务器日志。
  6. 在适当情况下使用安全插件或 WAF。
  7. 定期执行安全评估。

负责任使用

在运行扫描器之前:

下载工具