很多将织梦dedecms安装在阿里云的ecs的站长每次都会看到阿里云盾就会通知有一个上传漏洞,引起的文件是/include/uploadsafe.inc.php文件,
原因是dedecms原生提供一个"本地变量注册"的模拟实现,原则上允许黑客覆盖任意变量,就会导致被攻击,下面告诉大家解决的办法:
我们找到并打开/include/uploadsafe.inc.php文件,在里面找到如下代码:
if(empty(${$_key.'_size'})) { ${$_key.'_size'} = @filesize($$_key); } |
在其下面添加如下代码:
$imtypes = array("image/pjpeg", "image/jpeg", "image/gif", "image/png", "image/xpng", "image/wbmp", "image/bmp"); if(in_array(strtolower(trim(${$_key.'_type'})), $imtypes)){ $image_dd = @getimagesize($$_key); if($image_dd == false){ continue; } if (!is_array($image_dd)) { exit('Upload filetype not allow !'); } } |
然后继续在下面一点的位置找到如下代码:
$image_dd = @getimagesize($$_key); |
在其下面添加如下代码:
if($image_dd == false){ continue; } |
添加完成后保存并替换原来的文件即可,操作完成后就可以去阿里云后台验证这个漏洞了。
历史资源提醒--必看
该页面资源/教程来自原魔趣吧历史资源转移,因发布历史久远,部分资源/教程可能已失效或无法在最新版程序中安装使用!DZ资源建议在Discuz3.4及以下版本使用,PHP版本建议5.6。资源仅提供做代码研究学习使用!
因改版,部分贴内链接将无法正常跳转,如链接失效或未正常跳转,请利用站内搜索功能搜索资源名称获取对应资源!