最近很多建站朋友发现织梦DedeCMS安装在阿里云服务器后会在阿里云后台提示有一个dedecms任意文件上传漏洞,引起的文件是织梦安装目录下的/include/dialog/select_soft_post.php文件。
原因是在获取完整文件名的时候没有将会对服务器造成危害的文件格式过滤掉,所以我们需要手动添加代码过滤,具体操作方法如下:
我们找到并打开/include/dialog/select_soft_post.php文件,在里面找到如下代码:
$fullfilename = $cfg_basedir.$activepath.'/'.$filename;
在其上面添加如下代码:
if (preg_match('#\.(php|pl|cgi|asp|aspx|jsp|php5|php4|php3|shtm|shtml)[^a-zA-Z0-9]+$#i', trim($filename))) { ShowMsg("你指定的文件名被系统禁止!",'javascript:;'); exit(); }
添加完成后保存替换原来的文件,然后就可以去阿里云后台验证这个漏洞了。