前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >DEDECMS织梦修改include和plus重命名防漏洞防篡改防挂马

DEDECMS织梦修改include和plus重命名防漏洞防篡改防挂马

作者头像
米米素材网
发布2022-07-21 13:19:35
2.9K0
发布2022-07-21 13:19:35
举报
文章被收录于专栏:站长技术站长技术

织梦dedecms是站长使用得比较多的一个建站开源程序,正因如此,也是被被入侵挂马比较多的程序。下面就来跟大家说一下怎么重新命名dedecms的include文件夹以及plus文件夹来提高网站的安全性,减少被黑客软件扫描到漏洞的概率。 dedecms的漏洞主要集中在data、include、plus、dede、member几个文件夹中的php文件里,对于data这个文件夹我们可以把它移到网站的根目录外,dede可以冲命名,member可以删掉,一般用不着,special专题功能 install安装程序(必删) company企业模块 plusguestbook留言板 以及其他模块一般用不上的都可以不安装或删除。这些个文件夹的修改网上比较多教程,大家搜索一下都会找得到的。include和plus文件的重命名方法网上比较少,所以本文主要说一下这两个文件夹的修改。 首先我们先安装好dedecms,然后把根目录下的所有文件夹和文件用ftp软件下载到本地,同时把数据库导出下载到本地,网站程序我们需要dw软件来进行批量替换,数据库文件我们需要editplus软件来替换(sql的文件用editplus比dw快)。 可以在全站引用的文件中 加入禁止浏览器直接访问php文件的代码 例如在 global.inc.php 顶部加上,当在浏览器地址栏中直接输入php文件地址时就跳转到首页。这个不会影响从其他页面或搜索引擎网站点击过来的访问。 <?php $fromurl="这里写你的首页地址"; 

if( $_SERVER["HTTP_REFERER"] == "" )

{

header("Location:".$fromurl); exit;

} ?> 当然这样的话 你直接访问后台登录地址时候也会跳转到首页,我们可以在站点下加一个html的页面,这个html的页面写上你后台的链接。这样我们登录后台时先访问你加的这个html页面,点击跳转到后台登录页面。 如果你的网站最近被篡改过文件,下面这些linux命令可能有助于你查找哪些文件被修改(有些当天被篡改的文件日期可能是很久以前的时间,这些找到不到。不过我们还可以查看网站的日志,日志可以看到哪些php文件被可疑人士访问到,删掉这些可疑文件)

查找:3天内被修改的文件

find  ./  -mtime  -3  -type f  -exec ls -l  {} ;

找到目录下所有的php文件

find ./ -name "*.php" -print

找到目录下所有的txt文件并删除

find ./ -name "*.txt" -exec rm -rf {} ;

找到目录下所有在3天之内被修改的php文件

find  ./ -name "*.php" -mtime  -3  -type f  -exec  ls -l  {} ;

找到目录下所有满足 30天以内,1天之前被修改的php文件

find ./ -name "*.php" -mtime -30 -mtime +1 -type f -execls -l {} ;

第一、plus文件夹的重命名修改 用editplus打开数据库文件,ctrl+h打开替换窗口,把数据库里的所有“plus”替换成你想要的名称,这里我们随便命个名,比如“aplu”。记得ctrl+s保存。

然后我们打开dw软件新建一个本地站点,如下图。我这里举例用的是“mydedecms”,把所有的网站文件都放到mydedecms下。然后随便打开站点下的一个文件,比如打开index.php。ctrl+f打开dw的替换窗口,查找范围我们选择整个当前本地站点,搜索选择源代码。查找就写plus,替换就写“aplu”,和刚才修改数据库文件的一致。点击全部替换直接把网站文件里所有的plus替换成aplu。

还有一步就是重命名所有带有plus的文件和文件夹,这个打开文件夹,搜索一下就出来,然后对这些带有plus的文件夹和文价重命名,把plus改成aplu。

这样plus的修改全部完成。 第二、include文件夹的重命名修改 和刚才修改plus差不多,不过不完全一样,数据库文件的修改是一样的,把数据库文件中所有的include替换成你想要的名字,比如ainclu。 网站程序文件include的修改和plus有点不一样,大家注意这点。我们是不能把所有文件里的include都替换成ainclu的,我的是把“include/”替换成“ainclu/”,然后再把“/include”替换成“/ainclu”,进行两次整站的替换,目前还没发现有什么错误,因为include是php的语言,有很多地方的“include”我们是不能换的。

分为两步

一、将include文件夹改为ainclu

二、将后台根路径(如果未改后台路径则是:网站根路径/dede)下的config.php 下的require_once(DEDEADMIN.'/../include/common.inc.php');改为require_once(DEDEADMIN.'/../ainclu/common.inc.php');

但是修改完以后,你会发现后台是白的,什么内容也没有,通过一下午的寻找终于找到原因,如下:

三、将改名后文件夹中ainclu/common.inc.php里面的define('DEDEROOT', str_replace("\\", '/', substr(DEDEINC,0,-8) ) );

这句话中给DEDEROOT定义,却没有显示,或者不对。后来才发现是截取出了问题。将其改为define('DEDEROOT', str_replace("\\", '/', substr(DEDEINC,0,-6) ) );即可。

三、在后台文件(原目录是dede)中却有许多地方需要修改将include改为ainclu

        有用到include文件的有:

             article_text_same.php

            co_get_corule.php

             config.php

            exit.php

            imagecut.php

            login.php

             makehtml_story.php

           media_main.php

             module.php

           module_make.php

            mychannel_edit.php

            sys_repair.php

           testenv.php

           tpl.php

           sys_safetest.php

模板中:(后台目录:templets)

    login.htm

完成上面的步骤后后台已经完成用正常使用,但是一看前台却发现,其前台不能用。原因就是还需要改一个文件

改网站根目录下的index.php中的 require_once (dirname(__FILE__) . "/include/common.inc.php");改为 require_once (dirname(__FILE__) . "/FHinc/common.inc.php");

include文件夹的重命名两个include文件夹,一个在根目录下,一个在data里面,重名一下都修改为“ainclu”即可。 至此,我们就完成了plus和include的重命名修改。把修改好后的网站所有的文件重新上传到网站的根目录下,重新导入修改过的数据库文件就好了,这样多数小黑软件就扫描不到我们网站的漏洞了,网站的安全性得到了进一步的提高。这种方法对于其他的开源程序也是有效的,不过我们首先要熟悉editplus和Dreamweaver 软件的使用,以及制定要了解开源程序那些是可以全部批量替换的。 其他网上找到的方法:

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删除

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档