CVE-2023-27179
简介:
GDidees CMS v3.9.1及更低版本被发现存在本地文件泄露漏洞,漏洞通过位于 /_admin/imgdownload.php 的 filename 参数进行利用。
影响版本:
GDidees CMS v3.9.1及更低版本
POC:
/_admin/imgdownload.php?filename=/flag
漏洞复现(春秋云镜):
开扫扫到_admin后台路径
其实到这里就思路应该是进入后台,然后发现imgdownload.php有文件读取的功能,然后所以才会出现/_admin/imgdownload.php?filename=/flag 这样的路由。
代码审计:
脆弱代码:
imgdownload.php
3. if (isset($_GET["filename"])) {
4. $filename=$_GET["filename"];..........
27. @readfile($filename) OR die();
查看源码发现Imgdownload.php主要用于二维码生成模块下载二维码。该漏洞出现在第4行,其中稍后将打开的filename参数未被过滤或清理。此外,这段代码中没有admin会话检查,因为通常只有admin用户应该检查
可以下载二维码。 所以就可以免登入读取文件
修复建议:
官方说好像是该漏洞没有可利用性,应该就在代码加个鉴权工作就可以了