织梦系统dedecms一劳永逸的安全代码

织梦系统dedecms一劳永逸的安全代码,第1张

概述为了让大家的CMS更安全,有需要的手工在config_base.php里加上 打开 config_base.php 找到 //禁止用户提交某些特殊变量 $ckvs = Array(_GET,_POST,_COOKIE,_FILES); foreach($ckvs as $ckv){ if(is_array($$ckv)){ foreach($$ckv AS $key = $value) if(eregi( 为了让大家的CMS更安全,有需要的手工在config_base.PHP里加上 
打开 
config_base.PHP 
找到 

//禁止用户提交某些特殊变量 
$ckvs = Array('_GET','_POST','_cookie','_fileS'); 
foreach($ckvs as $ckv){ 
  if(is_array($$ckv)){ 
    foreach($$ckv AS $key => $value) 
      if(eregi("^(cfg_|globals)",$key)) unset(${$ckv}[$key]); 
  } 


改为下面代码 
//把get、post、cookie里的$ckvs = Array('_GET','_cookie'); 
foreach($ckvs as $ckv){ 
  if(is_array($$ckv)){ 
    foreach($$ckv AS $key => $value) 
      if(!empty($value)){ 
        ${$ckv}[$key] = str_replace('<'.'?','&'.'lt;'.'?',$value); 
        ${$ckv}[$key] = str_replace('?'.'>','?'.'&'.'gt;',${$ckv}[$key]); 内容来自Dedecms 
      } 
      if(eregi("^cfg_|globals",$key)) unset(${$ckv}[$key]); 
  } 

//检测上传的文件中是否有PHP代码,有直接退出处理 
if (is_array($_fileS)) { 
foreach($_fileS AS $name => $value){ 
  ${$name} = $value['tmp_name']; 
  $fp = @fopen(${$name},'r'); 
  $fstr = @fread($fp,filesize(${$name})); 
  @fclose($fp); 
  if($fstr!='' && ereg("<\?",$fstr)){ 
      echo "你上传的文件中含有危险内容,程序终止处理!"; 
      exit(); 
  } 

} 总结

以上是内存溢出为你收集整理的织梦系统dedecms一劳永逸的安全代码全部内容,希望文章能够帮你解决织梦系统dedecms一劳永逸的安全代码所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/1058143.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存