• 织梦DedeCMS实用技巧-八大安全措施


    织梦系统爆出很多新漏洞,导致许多dedecms网站被挂木马,从被挂到有效防止,下面就来谈一谈具体的方法:

      一、精简设置篇:

       不需要的功能统统删除。比如不需要会员就将member文件夹删除。删除多余组件是避免被hack注射的最佳办法。将每个目录添加空的index.html,防止目录被访问。

       织梦可删除目录列表:member会员功能 special专题功能 install安装程序(必删) company企业模块 plusguestbook留言板 以及其他模块一般用不上的都可以不安装或删除。

       二、密码设置篇:

       管理员密码一定要长,而且字母与数字混合,尽量不要用admin,初次安装完成后将admin删除,新建个管理员名字不要太简单。织梦系统数 据库存储的密码是MD5的,一般HACK就算通过注入拿到了MD5的密码,如果你的密码够严谨,对方也逆转不过来。也是无奈。但现在的MD5破解网站太过 先进,4T的硬盘全是MD5密码,即便你的密码很复杂有时候都能被蒙上。我之前的站点就是这么被黑的。所以一定密码够复杂。

       三、织梦可删除文件列表:

       DEDE管理目录下的 file_manage_control.php、file_manage_main.php、 file_manage_view.php、media_add.php、media_edit.php、media_main.php 这些文件是后台 文件管理器(这俩个功能最多余,也最影响安全,许多HACK都是通过它来挂马的。它简直就是小型挂马器,上传编辑木马忒方便了。一般用不上统统删除) 。

       不需要SQL命令运行器的将dede/sys_sql_query.php 文件删除。避免HACK利用。

       不需要tag功能请将根目录下的tag.php删除。不需要顶客请将根目录下的digg.php与diggindex.php删除。

       四、修改配置篇:

      为了防止HACK利用发布文档,上传木马。请安装完成后阻止上传PHP代码。到此基本堵上了所有上传与编辑木马的可能性。附带老大的简单方法。(在5.0以上的版本本身已经作好修改了,这点经测试比较过的)

    打开

      include/config_base.php

      找到

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Copy code//禁止用户提交某些特殊变量 
      
       $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]); 
      
      } 
      
      }

      改为下面代码

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    Copy code//把get、post、cookie里的 
      
       $ckvs = Array('_GET','_POST','_COOKIE'); 
      
      foreach($ckvs as $ckv){ 
      
      if(is_array($$ckv)){ 
      
      foreach($$ckv AS $key => $value) 
      
      if(!emptyempty($value)){ 
      
      ${$ckv}[$key] = str_replace('<'.'?','&'.'lt;'.'?',$value); 
      
      ${$ckv}[$key] = str_replace('?'.'>','?'.'&'.'gt;',${$ckv}[$key]); 
      
      } 
      
      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(); 
      
      } 
      
      } 
      
      }

      

    五、空间注意篇:

       有些人使用的空间,请把空间的CP与FTP密码妥善保存。并且密码一定要复杂,定期修改ftp密码等等。如果自己的服务器就要靠自己了,一定要做好服务器安全维护。

       六、目录篇:

       管理目录DEDE务必从命名,而且像密码一样复杂才最好。

       七、补丁篇:

       经常来织梦官方看看,有没有新的安全补丁。有的务必都打上。

       八、权限篇:

       务必检查下网站目录权限,能只给读取的,坚决不给写入,能只给写入的,坚决不给全部权限。

    清风明月本无价,近水远山皆有情。
  • 相关阅读:
    Jenkins+SVN+Maven自动化部署环境搭建
    基于Maven+SSM整合shiro+Redis实现后台管理项目
    Linux学习之CentOS(一)----在VMware虚拟机中安装CentOS 7
    如何用Jmeter做压力测试
    项目沟通管理中的几种技巧
    软件生命周期管理(ALM)
    大数据入门-记录
    为啥项目做到最后都成为了“屎山”,代码改不动
    看企业如何玩转低代码,引发效率革命
    行云创新亮相云栖大会,解读云原生时代开发者工具变革探索与实践
  • 原文地址:https://www.cnblogs.com/onlylove2015/p/4391885.html
Copyright © 2020-2023  润新知