Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2024-55187 | Kitploit
工具/GitHubGitHub/mallo-m/cve-2024-55187
漏洞分析代码分析漏洞利用Web应用程序漏洞利用渗透测试学习与教育
GitHubmallo-m/cve-2024-55187

CVE-2024-55187

查看仓库
7个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

摘要

敏感的管理参数未得到充分清理,导致攻击者能够污染指向系统二进制文件的路径。

随后,攻击者可以上传危险的 CSV 文件,这些文件可被当作包含 shell 元字符的 PHAR 归档处理,并由 PHP 的 exec() 调用执行,从而实现远程代码执行。

影响

  • 服务器被接管
  • 拒绝服务
  • 数据丢失

CVSS 评分

严重 - 9.1 - CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H

详情

在文件 functions/classes/class.Scan.php 中,我们可以看到以下代码结构:

exec() 调用的第一个参数直接依赖于 $ping_path 参数,该参数可以在“管理设置”面板中自由修改:

攻击者需要满足的唯一条件是让 ping_verify_path 函数不返回 false。该方法的定义如下:

此方法仅依赖于 PHP 原生函数 file_exists()。该函数可以支持传入 ZIP 文件(不需要 .zip 扩展名)并深入 ZIP 归档的结构中。例如:

因此,如果攻击者能够在服务器上上传一个有效的 ZIP/PHAR 归档,其中包含一个文件名带有 shell 元字符的文件,就能绕过 file_exists() 检查,并让这些元字符被 exec() 调用执行。

经过身份验证的攻击者可以通过“XLS / CSV 子网导入”功能上传文件:

该文件不一定是有效的 CSV 文件。如果导入失败,文件不会从服务器上删除。通过 import-verify.php 脚本,我们也可以知道文件的存储位置:

攻击者已经具备发起远程代码执行攻击的所有前提条件:

  • 制作一个名为“something.csv”的 PHAR 归档,其中包含一个文件名带有 shell 元字符的文件
  • 通过“导入子网”功能上传该归档
  • 通过管理面板修改“ping 路径”参数
  • 通过请求一次 ping 扫描来触发 RCE

恶意归档可以通过如下方式制作:

概念验证

https://www.youtube.com/watch?v=oMvyfFrlRAs

发现致谢

  • mallo-m (https://github.com/mallo-m)
  • LeTeazer (https://github.com/LeTeazer)

时间线

  • 2024 年 12 月 13 日:申请 CVE ID
  • 2025 年 1 月 10 日:首次联系 phpIpam 团队并发送公告
  • 2025 年 3 月 13 日:第二次联系
  • 2025 年 11 月 11 日:最终联系 phpIpam 团队
  • 2025 年 12 月 24 日:公告发布
下载工具