任意文件上传漏洞修复

24小时关键词上百度首页点此查看详情
一、/include/dialog/select_soft_post.php文件,搜索(大概在72行的样子)
      $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(); } $fullfilename = $cfg_basedir.$activepath.'/'.$filename;;
 
  二、后台文件任意上传漏洞
 
      /dede/media_add.php或者/你的后台名字/media_add.php
 
   搜索$fullfilename = $cfg_basedir.$filename;(大概在69行左右)
      替换成      
      if (preg_match('#\.(php|pl|cgi|asp|aspx|jsp|php5|php4|php3|shtm|shtml)[^a-zA-Z0-9]+$#i', trim($filename))) { ShowMsg("你指定的文件名被系统禁止!",'javascript:;'); exit(); } $fullfilename = $cfg_basedir.$filename;
 
     三、 /include/uploadsafe.inc.php (有2个地方:)
 
  1、搜索 ${$_key.'_size'} = @filesize($$_key);
      }
      (大概在42,43行左右)
      替换成    
      ${$_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 !'); } }
      如果修改后出现文章页面空白页,请仔细查看代码是否多了或者少了大括号},本文件44行是空的,没有代码,请注意。
 
      2、搜索 $image_dd = @getimagesize($$_key);(大概在53行左右)
      替换成     
      $image_dd = @getimagesize($$_key); if($image_dd == false){ continue; }
 
     主营万词霸屏和竞价包年的上海网络推广公司厉雷网络老规矩大红色地方标记了修改的地方,然后保存,接着备份原文件,比如文件名变为uploadsafe.inc.php.16.08.09.bak。然后上传修改好的文件即可。

欢迎转载,本文标题:《任意文件上传漏洞修复》,转载请注明原文网址:http://www.13076758023.cn/anquan/20190316/624.html
请尊重我们的辛苦付出,未经允许,请不要转载上海网络推广公司厉雷网络的文章!
上一篇:文件上传漏洞和修复方案
下一篇:最好用的17个安全漏洞检查工具