Zimri

DedeCMS安全专题
据说DedeCMS是中文网站存在最多的一个CMS内容管理系统但Dedecms的安全问题一直是被广大站长用户诟病的,...
扫描右侧二维码阅读全文
22
2018/03

DedeCMS安全专题

据说DedeCMS是中文网站存在最多的一个CMS内容管理系统但Dedecms的安全问题一直是被广大站长用户诟病的,感同身受,稍微不注意安全就很容易被黑,篡改网页、挂黑链等问题一个接着一个,那么有人说为何那么多洞还用Dede,个人理解无论什么系统只要用户多了 漏洞才能发现,因为用户多了而别有用心的人就会去钻研发掘漏洞达到某些利益;和Windows一个道理。所以不必纠结,所有事物存在总有它的道理。那么此专题就对dedecms进行有效的安全设置修改显得极其重要,下面是几条dedecms安全设置建议。

DedeCMS安装常规设置

1. 版本选择

无论什么时候保持你的版本为最新,经常关注更新发布通知并更新自己的版本
dede1-1.jpg

2. 数据库表前缀

安装部署时候 数据库表前缀不使用dede_ 作为开头 使用其他无规律 非常规的组合作为前缀。
dede2-1.jpg

3. 管理员账号设置

不使用admin作为账号,使用一些比较冷门的或者无规律的字母作为账号
dede3-1.jpg

4. 安装完成后

“install”安装完成必须删除的目录,若以后需要用到,那么重新下载官方包 单独解压install文件夹进网站即可
dede4-1.jpg

DedeCMS安装高级设置

1.更改DEDE文件夹名

“dede”文件夹为后台管理登陆使用的组件和目录,这个目录是必须重命名的
DEDE管理入口
访问界面为
DEDECMS访问界面

这里就是网站的后台,那么需要更改这个地址为非常规地址;
访问网站根目录,找到”dede”文件夹,重命名为您指定的
修改DEDE目录
例如我的重命名为:”ewe-adm”
DEDE目录修改

那么后台地址的登陆链接就变为 域名/ewe-adm 测试一下
dede9-1.jpg

建立”.”或者其他特殊符号开头的文件夹,如”$”等等,为的是更好的隐藏后台登陆地址
建立特殊符号的方法:
Linux直接建立,Windows需要在本地电脑先建立特殊符号的文件夹 本地电脑打开 win+R 输入”cmd” 打开cmd命令行

输入D:
继续输入:md .ewe-adm

其中的ewe-adm 就是要定义的文件夹名称
输入完成后进入 我的电脑>D盘 目录下 就出现刚刚建立的文件夹
现在把建立的文件夹 拷贝如 网站根目录 并把原”dede”的后台目录下的拷贝进建立的特殊字符文件夹内。 拷贝完成后 删除原”dede”的后台目录。

特殊符号的文件夹 建议以 “.”开头;因为”.”开头的文件 在多数系统中 被识别为 隐藏目录,通过一些扫描软件 是无法发现该目录的

后台地址现在变更为了 域名/.ewe-adm
修改dede后登陆

2.DATA文件夹

这个文件夹作用是系统缓存或其它可写入数据存放目录,能写入的目录权限很高也意味着危险,需要移出web目录 如接入商不支持那么则选择重命名的方式.

对于data 文件夹的处理方法 有2种:

空间商支持上级目录的情况下:

dede12-1.jpg

db目录 一般为数据目录 只能通过fpt访问,用于存放一些备份数据,相对来说是最安全的
log 目录 用于存放日志
web目录 就是网站的目录了

所以 我们需要把 data目录 迁移进 db目录,简单的办法直接剪切或者拷贝即可。(注意 有些空间商 不支持转移 所以操作前建议先询问核实)
完成变动后,还需一下变动

找到系统目录下/include/common.inc.php 文件 大概在第24行找到

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

修改为

define('DEDEDATA', DEDEROOT.'/../db/data');

如果不支持移动,那么就是以下办法

建立并把data目录修改为特殊字符文件夹 建议以”.”开头

完成变动后,还需一下变动

找到系统目录下/include/common.inc.php文件 大概在第24行找到

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

修改为

define('DEDEDATA', DEDEROOT.'/你建立的特殊字符文件夹名');

在网站后台,系统-系统基本参数-性能选项,“模板缓存目录:”改为:/你更改的data目录/tplcache

这样就基本改完成了,不过现在还有些问题。打开网站目录你会发现,自己跳到安装文件了。不用急,修改一下网站根目录的index.php这个文件,把文件最前面的几行注释掉,注释如下,也就是在代码头尾加 / / 注释掉

大概第9-13行 改为以下

/*if(!file_exists(dirname(__FILE__).'/data/common.inc.php'))
{
header('Location:install/index.php');
exit();
}*/

保存,就完成了data目录的变更

3.会员功能

如果你的dede程序用不到会员功能,请删除”member”这个文件夹,如果一定要用那么请先安装360的安全补丁

4.安装360安全修复补丁

360有一个针对DedeCMS的安全补丁
点击下载

安装步骤

  1. 将zip文件包解压后,上传服务器,覆盖原有文件 (注:1.请先做好备份。2.如果您已经修改后台默认目录,请先修改压缩包里的”dede”目录)
  2. 安装成功后,登录织梦DedeCMS后台可见360安全模块,如下图:
    dedecms-icon-1.png

DedeCMS安装高级设置

1.权限设置

织梦建站,网站安全不可忽视,此处比较繁琐,但目的只为了安全

IIS篇

目录结构为默认,如按照之前的设置有修改的请自行对应

/  根目录 拒绝脚本执行  允许写入
/a 因为是静态目录,并且在要生成HTML的,所以拒绝脚本执行  允许写入
/data 因为是缓存等,所以充许写入,要拒绝脚本执行
/dede 后台管理目录,允许脚本执行,拒绝写入。
/images 存系统图片, 拒绝脚本执行,拒绝写入。
/include 系统库,比如验证码,一般不需要修改权限。设置允许脚本执行,拒绝写入
/install这个目录在系统安全完之后,直接删除的目录
/member 如果不使用会员系统,这个目录夹也可以直接删除
/plus这个插件目录,允许脚本执行,拒绝写入
/special 专题文件夹,一般删除。如保留需改名 与a目录一样,拒绝脚本执行,允许写入
/templets模板目录,拒绝执行,拒绝写入
/uploads 资源上传目录 拒绝执行,允许写入

Linux篇

/ 【站点上级目录】假如要使用后台的目录相关的功能需求有列出目录的权限 //0444
/ 【站点根目录】需求执行和读取权限 
  假如要在根目录下面创建文件和目录的话需求有写入权限 //0755

/install 【安装程序目录】需求有执行和读取权限 
         //建议安装完成以后删除或者改名 //0555

/dede 【后台程序目录】需求有执行权限和读取权限 
       //建议安装完成以后修正目录名称 //0755

/include 【主程序目录】需求有写入、执行权限和读取权限 //0755 
         //建议在第一次安装后,去掉写入权限以及修正权限//0555

/member 【会员目录】需求执行读取和权限 
        //建议去掉写入权限以及修正权限//0555

/plus 【插件目录】需求有读取、写入和执行的权限 
      //建议在生成完站点地图和RSS文件后去掉写入权限以及修正权限 //0755

/data 【站点缓存数据等文件】需求有读取权限和写入修正权限 
      //建议去掉执行权限//0666

/html 【HTML文档默认目录】需求有读取修正和创建权限 
      //建议去掉执行权限 //0666

/templets【模板目录】需求有读取 修正写入 权限 
         //建议去掉执行权限 //0666

/uploads 【附件目录】需求写入读取权限 
         //建议去掉执行权限//0666

/company 【企业黄页程序目录】需求读取和执行权限 
        //建议去掉写入权限//0555

/special 【专题文件目录】需求执行、读取、写入和修正权限 //0755

2.文件删除

织梦后台为了进行精简和安全考虑,我们需要删除一些不用的文件,目的是让织梦更好用和相对的安全一些,下面就针对各种细小功能讲解织梦后台需要删除哪些不用的文件

Plus文件夹

guestbook文件夹 【留言板】
task文件夹 【计划任务控制文件】
ad_js.php 【广告程序】

bookfeedback.php
bookfeedback_js.php
【图书评论和评论调用文件,存在注入漏洞,不安全】

bshare.php 【分享到插件】

car.php
posttocar.php
carbuyaction.php 【购物车】

comments_frame.php 【调用评论,存在安全漏洞】

digg_ajax.php
digg_frame.php 【顶踩】
download.php
disdls.php 【下载和次数统计】

erraddsave.php 【纠错】

feedback.php
feedback_ajax.php
feedback_js.php 【评论】

guestbook.php 【留言】
stow.php 【内容收藏】
vote.php 【投票】

dede文件夹

【文件管理器,安全隐患很大】
以file_xx .php开头的系列文件及tpl.php    

【软件下载类,存在安全隐患】
soft_add.php、soft_config.php、soft_edit.php

【邮件发送】
mail_file_manage.php、mail_getfile.php、
mail_send.php、mail_title.php、mail_title_send.php、mail_type.php

【视频控制文件】
media_add.php、media_edit.php、media_main.php

【小说功能】
以story_xxx.php开头的系列文件

【广告添加部分】
ad_add.php、ad_edit.php、ad_main.php

【点卡管理功能文件】
cards_make.php、cards_manage.php、cards_type.php

【采集控制文件】
以co_xx  .php开通的文件

【纠错管理】
erraddsave.php  

【评论管理】
feedback_edit.php、feedback_main.php

【圈子功能】
以group_xx .php开头的系列php文件

【分享到管理】
plus_bshare.php

【商城系统】
以shops_xx .php开头的系列文件

【专题管理】
spec_add.php、spec_edit.php 

【模板管理】
以templets_xx .php开头的系列文件

【投票模块】
vote_add.php、vote_edit.php、vote_getcode.php 

后台的前端更一步精简

主要影响安全的文件已经删除,请根据您的需要进行操作。如果想要后台的前端更一步精简,可以删除掉/dede/templets/下与对应的文件模板。

下方为系统默认的后台界面图,为了便于下面的说明我对各个部分进行了一些标示。共A、B、C、D、E五个区域。
1-1d-1.jpg

A区域
【顶部LOGO行】

对应文件:/dede/templets/index2.htm
和/dede/templets/index_top2.htm

B区域
【顶部LOGO下的黑色背景行】

对应文件:/dede/templets/index2.htm
和/dede/templets/index_top2.htm

C区域
【主体左侧】
对应文件:

/dede/templets/index_menu2.htm【左侧主链接】
/dede/inc/inc_menu.php 【常用主链接下的次链接】
/dede/inc/inc_menu_map.php 【主链接下的次链接】
/dede/inc/inc_menu_module.php 【模块和插件次导航】

D区域 【主区域部分】对应文件:/dede/templets/index_body.htm

E区域【主E区域部分】对应文件:/dede/templets/index_body.htm
另外后台模板文件还有三个分别是【不常用】:

/dede/templets/index_body_move.htm 
对应D区域,后台首页的主体区模板

/dede/templets/index_body_showad.htm 
对应后台首页主体部分最上方的红色“DedeCms安全提示”部分,如提示data目录转移等。
Last modification:June 12th, 2019 at 02:25 pm
If you think my article is useful to you, please feel free to appreciate

Comment here is closed