织梦CMS系统的安全优化设置_防止网站被黑(持续更新)

2018-11-24  本文已影响0人  一噗哒
织梦安全优化设置

织梦CMS在安装完成后,新人往往会直接开始开发使用,忽视了一些安全优化的操作,这样会导致后期整个系统安全系数降低,被黑或者被注入的概率极高,毕竟这世界百分百存在着极多的无聊hacker对全网的网站进行扫描,扫到你这个菜站,尤其是使用率极高的DEDECMS,对你的站点下手的欲望更高,所以在开发前做好安全防范还是很有必要的!

安全设置一:删文件

安装完成后会有一些文件,可以说是冗余文件,完全没有作用,反而带来被黑的危险,删除即可,以下文件均可删除:

安全设置二:参数修改

1./include/filter.inc.php文件(位置大概在46行左右),即SQL注入漏洞修复

return $svar;
修改为
return addslashes($svar);

2./include/uploadsafe.inc.php文件

$image_dd = @getimagesize($$_key);
修改为
$image_dd = @getimagesize($$_key); if($image_dd == false){ continue; }
php|pl|cgi|asp|aspx|jsp|php3|shtm|shtml
修改为
php|pl|cgi|asp|aspx|jsp|php3|shtm|shtml|htm|html

3./plus/search.php文件

$keyword = addslashes(cn_substr($keyword,30));
修改为
$typeid = intval($typeid); $keyword = addslashes(cn_substr($keyword,30));

4./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();
}
$fullfilename = $cfg_basedir.$activepath.'/'.$filename;

5./dede/media_add.php文件,也就是任意文件上传漏洞

$fullfilename = $cfg_basedir.$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.$filename;

6./include/common.inc.php文件,也就是SESSION变量覆盖导致SQL注入漏洞(此漏洞织梦官方在最新的版本中已经修复)

if( strlen($svar)>0 && preg_match('#^(cfg_|GLOBALS|_GET|_POST|_COOKIE)#',$svar) )
修改为
if( strlen($svar)>0 && preg_match('#^(cfg_|GLOBALS|_GET|_POST|_COOKIE|_SESSION)#',$svar) )

7./include/payment/alipay.php文件,也就是dedecms支付模块注入漏洞(此漏洞织梦官方在最新的版本中已经修复)

$order_sn = trim($_GET['out_trade_no']);
修改为
$order_sn = trim(addslashes($_GET['out_trade_no']));

安全设置三:目录修改

1.后台管理功能文件夹dede:这是后台文件,需要将这个文件夹的名称修改,比如改为login,那么后台登陆地址就由www.xxx.com/dede变为www.xxx.com/login
2.将/data/文件夹移到Web访问目录外(来自dedecms官方建议):
-将/data/文件夹移至根目录的上一级目录
-修改配置文件:/include/common.inc.php中DEDEDATA变量

define('DEDEDATA', DEDEROOT.'/data');
改为
define('DEDEDATA',DEDEROOT.'/../data');

3.目录权限设置:选择网站根目录,如wwwroot,然后使用网站控制面板的“权限” 设置功能,将整站所有文件设置为只读(755权限)。 老版本可能登录后台会提示验证码错误,进入wwwroot目录,选中data目录,然后点击“权限”单独将data设置为完全控制(可读可写)权限。生成文档的目录也可单独设置完全控制权限,或者在需要更新文档时再将wwwroot目录设置为完全控制。注意:更新完文档要再次设置为只读。
4.目录保护:为防止木马被上传执行,使用控制面板中的“目录保护”功能(大部分控制面板都有这个功能,一些安全软件也有),依次选择templates、uploads、data这三个目录添加保护(以禁止脚本执行,防止黑客上传木马)

安全设置四:使用第三方安全插件

可下载第三方防护插件,例如:360出品的“织梦CMS安全包” 、百度旗下安全联盟出品的“DedeCMS顽固木马后门专杀”;
本人推荐百度旗下安全联盟出品的“DedeCMS顽固木马后门专杀
下载地址:https://download.csdn.net/download/weilapls/10655074
前提工作:注意下载文件到本地,解压后用“编辑器”(可直接用window系统’记事本’打开)打开dede_killer_v2.php 修改密码(默认密码不让登陆!),如果你的dedecms设置了data目录,请对应修改后保存。
安装方式:解压>上传至网站根目录(一般是wwwroot)
打开方式: http://你的网站地址/dede_killer_v2.php
注意
1.跟目录下必须有data目录和/data/common.inc.php文件,如不存在会报“请将该文件放到您站点的根目录,和index.php同一级目录”错误。
2.文件太多执行时间较长,可能超时,可以修改ini_set("memory_limit", "100m")值为ini_set("memory_limit", "500m"),最大不能超过1000M。

更新于2018-09-09,后期有更新,将会持续更新本文

上一篇下一篇

猜你喜欢

热点阅读