Skynoxk/CVE-2026-27944
GitHub: Skynoxk/CVE-2026-27944
针对 Nginx UI 的 CVE-2026-27944 漏洞自动化利用工具,实现从备份下载、解密、机密提取到创建管理员账户的完整攻击链。
Stars: 0 | Forks: 0
# CVE-2026-27944 POC: Nginx UI 未认证备份下载 + 面板访问
本仓库包含针对 **CVE-2026-27944** 的增强型概念验证(POC)漏洞利用程序,该漏洞是 **Nginx UI** 中的一个严重漏洞。
该漏洞允许未经认证的攻击者通过 `/api/backup` 端点下载系统备份。此外,应用程序会在 `X-Backup-Security` HTTP 响应头中泄露 AES-256 加密密钥和 IV,使攻击者能够轻松解密下载的备份。
此增强型 POC 自动化了整个攻击链:下载备份、解密内容、提取配置机密(如 `Node Secret` 和 `JWT Secret`),并利用这些机密绕过身份验证创建一个恶意管理员账户,从而完全接管面板。
### 漏洞利用成功
### ⚠️ 免责声明
**本工具仅供教育目的和经授权的渗透测试使用。** 请勿将此工具用于您不拥有或未获得明确测试许可的系统。作者不对因使用本脚本而造成的任何误用或损害负责。
## 功能特性
- **未认证备份下载:** 获取加密的备份归档文件。
- **密钥提取与解密:** 解析 `X-Backup-Security` 头以提取 Base64 编码的 AES 密钥和 IV,并解密备份(`AES-256-CBC`)。
- **机密提取:** 自动解析解密后的 `app.ini` 以提取敏感信息:
- JWT Secret
- Node Secret
- Crypto Secret
- **身份验证绕过 / 管理员创建:** 使用提取的 Node Secret(`X-Node-Secret` 头)与 API 交互并创建一个新的管理员用户。
- **Token 检索:** 使用新创建的凭据登录以获取有效的 JWT token,用于立即访问面板或 API。
## 环境要求
- Python 3.x
- `pycryptodome` 库(AES 解密所需)
## 安装说明
1. 克隆仓库:
git clone https://github.com/Skynoxk/CVE-2026-27944-POC.git
cd CVE-2026-27944-POC
2. 安装所需依赖:
pip install pycryptodome
## 使用方法
```
python exploit_enhanced.py --target [OPTIONS]
```
### 参数说明
| 参数 | 描述 | 默认值 |
| :--- | :--- | :--- |
| `--target` | **(必需)** Nginx UI 实例的基础 URL(例如 `http://127.0.0.1:9000`) | |
| `--out` | 保存加密备份的文件路径 | `backup.bin` |
| `--decrypt` | 解密下载的备份 | `False` |
| `--extract-dir` | 解密文件的提取目录 | `backup_extracted` |
| `--show-secrets`| 从 `app.ini` 中提取并显示敏感机密 | `False` |
| `--create-user` | 创建一个管理员用户用于面板访问(指定用户名) | |
| `--password` | 新创建的管理员用户的密码 | `Admin@123456` |
### 示例
**1. 仅下载并解密备份:**
```
python exploit_enhanced.py --target http://127.0.0.1:9000 --out backup.bin --decrypt
```
**2. 下载、解密并提取配置机密:**
```
python exploit_enhanced.py --target http://127.0.0.1:9000 --decrypt --show-secrets
```
**3. 完整漏洞利用链(下载、解密、提取机密并创建管理员):**
```
python exploit_enhanced.py --target http://127.0.0.1:9000 --decrypt --create-user hacker --password Pwned@123!
```
## 后渗透访问
如果成功使用了 `--create-user` 标志,脚本将输出访问 Nginx UI 面板的详细方法,包括:
1. **直接网页登录:** 使用创建的凭据进行标准浏览器登录。
2. **浏览器控制台注入:** 使用获取的 JWT token 设置 `authorization` cookie。
3. **直接 API 访问:** 使用 `X-Node-Secret` 头的 `curl` 命令以绕过身份验证机制。
### ⚠️ 免责声明
**本工具仅供教育目的和经授权的渗透测试使用。** 请勿将此工具用于您不拥有或未获得明确测试许可的系统。作者不对因使用本脚本而造成的任何误用或损害负责。
## 功能特性
- **未认证备份下载:** 获取加密的备份归档文件。
- **密钥提取与解密:** 解析 `X-Backup-Security` 头以提取 Base64 编码的 AES 密钥和 IV,并解密备份(`AES-256-CBC`)。
- **机密提取:** 自动解析解密后的 `app.ini` 以提取敏感信息:
- JWT Secret
- Node Secret
- Crypto Secret
- **身份验证绕过 / 管理员创建:** 使用提取的 Node Secret(`X-Node-Secret` 头)与 API 交互并创建一个新的管理员用户。
- **Token 检索:** 使用新创建的凭据登录以获取有效的 JWT token,用于立即访问面板或 API。
## 环境要求
- Python 3.x
- `pycryptodome` 库(AES 解密所需)
## 安装说明
1. 克隆仓库:
git clone https://github.com/Skynoxk/CVE-2026-27944-POC.git
cd CVE-2026-27944-POC
2. 安装所需依赖:
pip install pycryptodome
## 使用方法
```
python exploit_enhanced.py --target 标签:AES-256解密, CVE-2026-27944, JWT令牌, Nginx UI, PoC, Python, StruQ, Web安全, 仪表盘接管, 加密密钥提取, 备份下载, 安全漏洞, 无后门, 暴力破解, 未授权访问, 权限绕过, 漏洞利用脚本, 网络安全审计, 自动化攻击, 蓝队分析, 账户创建, 逆向工具, 配置文件提取