这个漏洞文件地址是/phpcms/libs/classes/attachment.class.php
我们看一下阿里云的具体漏洞说明如下图:

现这个问题主要是没有验证$ext进行类型验证,那就搜索一下参数$ext,大概在143行方法
function download($field, $value,$watermark = '0',$ext = 'gif|jpg|jpeg|bmp|png', $absurl = '', $basehref = '')
解决方法如下:
在方法最上面添加如下代码
$extArray=explode('|',$ext);
if(!empty($extArray) && is_array($extArray)){
foreach($extArray as $k => $v){
if(!in_array(strtolower($v), array('gif','jpg','jpeg','bmp','png'))); exit('0');//循环判断如果有一个不符合,直接返回 0
}
}
注意:这里可以获取网站配置里的附件上传类型来判断,我这里是写死的,仅供参考。
本文摘自[找寻记忆]网站,原文链接“https://www.liloufan.com/jishu/2016/09/22130.html”转载请保留出处.