简单修改DedeCms防止网站挂马
来源:互联网 发布:殖民地知乎 编辑:程序博客网 时间:2024/04/29 05:36
网站安全都是服务器配置、文件权限控制和网站程序三者的相互配合,如果要对DedeCms网站程序的修改来提高安全性。"可执行的文件不允许被 修改,可写文件不允许被访问"这是网站权限控制的根本原则,网站程序在"可写文件不允许被访问"方面可做许多工作。就拿DedeCMS来说,我们可以在如 下几个方式做好保护:
1、改名根目录下的data目录,或者移动到网站目录外面
data目录便是最藏污纳垢的地方,系统经常要往这个目录写数据,这个目录下的任何一个文件又都可以通过URL访问到,所以要让浏览器访问不到里面的文 件,就需要将此目录改名,或者移动到网站的目录外面去。这些,即使别人通过漏洞往文件里写进了一句话木马,他也找不到此木马所在的文件路径,无法继续展开 攻击。因为DedeCMS程序的不合理,导致改名data目录动作会比较大,具体做法如下:
a.将公开的内容迁移到pub目录(或者其它自定义目录)下,如rss、sitemap、js、enum等,此步骤需要移动文件夹,并修改这些文件的生成路径
b.修改引用程序目录
- 搜索替换"DEDEDATA."/data/"为"DEDEDATA."/",大概替换五六十个地方;
- 搜索替换"DEDEDATA.'/data/"为"DEDEDATA.'/",大概替换五六十个地方;
- 搜索"/data/",按具体情况,修改路径类似成为:"$DEDEDATA."/"(注意include目录和后台管理目录都有data文件夹,不需要修改);
c.修改data文件夹名称,并修改include/common.inc.php文件里的"DEDEDATA"的值,再在后台系统设置》参数设置里修改模板缓存目录,即可修改完成。以后也可以按照此步骤来更改data文件夹名称。
2、改名"dede"管理目录,并加固
如果把后台隐藏好了,即使别人获得了你的管理员账号、密码,他也无从登录。
a.在/dede/config.php里,找到如下行:
<span class="sh_comment" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">//检验用户登录状态</span></span><br><span style="font-size:12px;">$cuserLogin </span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">=</span></span> <span class="sh_keyword" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">new</span></span> <span class="sh_function" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">userLogin</span></span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">();</span></span><br><span class="sh_keyword" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">if</span></span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">(</span></span><span style="font-size:12px;">$cuserLogin</span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">-></span></span><span class="sh_function" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">getUserID</span></span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">()==-</span></span><span class="sh_number" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">1</span></span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">)</span></span><br><span class="sh_cbracket" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">{</span></span><br> <span class="sh_function" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">header</span></span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">(</span></span><span class="sh_string" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">"location:login.php?gotopage="</span></span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">.</span></span><span class="sh_function" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">urlencode</span></span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">(</span></span><span style="font-size:12px;">$dedeNowurl</span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">));</span></span><br><span class="sh_cbracket" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">}</span></span>
把上面代码,改为:
<span class="sh_comment" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">//检验用户登录状态</span></span><br><span style="font-size:12px;"> $cuserLogin </span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">=</span></span> <span class="sh_keyword" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">new</span></span> <span class="sh_function" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">userLogin</span></span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">();</span></span><br><span class="sh_keyword" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">if</span></span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">(</span></span><span style="font-size:12px;">$cuserLogin</span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">-></span></span><span class="sh_function" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">getUserID</span></span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">()==-</span></span><span class="sh_number" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">1</span></span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">)</span></span><br><span class="sh_cbracket" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">{</span></span><br> <span class="sh_comment" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">//header("location:login.php?gotopage=".urlencode($dedeNowurl));</span></span><br> <span class="sh_function" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">header</span></span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">(</span></span><span class="sh_string" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">"HTTP/1.0 404 Not Found"</span></span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">);</span></span><br> <span class="sh_function" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">exit</span></span><span class="sh_symbol" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">();</span></span><br><span class="sh_cbracket" style="margin: 0px; padding: 0px; "><span style="font-size:12px;">}</span></span>
b.修改/dede/login.php的文件名称,并对应的修改/dede/templets/login.htm里的表单提交地址;
dedecms标签c.修改/dede/的目录名称;
这样,别人在没有登录前,只能访问/dede/login.php改名后的地址,访问其他地址均会获得404错误。
当然,做了安全加固后,以后DedeCMS的升级就会有一些麻烦。
DedeCMS小说模型数据表前缀名错误的解决办法
- 简单修改DedeCms防止网站挂马
- 织梦DEDECMS网站的会员中心修改方法
- DEDECMS修改
- dedecms修改
- 修改dedecms的sitemap网站地图的路径到根目录
- dedecms用户上传头像大小限制简单修改
- 修改DEDECMS的广告显示文件地址,防止广告被阻止显示。
- dedecms修改了网站名称后还是显示‘我的网站’的标题
- 淘宝客网站防止黑客修改PID码的方法
- DEDECMS织梦内容管理系统安全设置(防范网站注入挂马)
- DEDECMS织梦内容管理系统安全设置(防范网站注入挂马)
- 织梦dedecms修改include和plus重命名提高安全性防漏洞注入挂马
- dedecms进行网站搬家
- 用dedecms制作网站
- dedecms制作网站
- dedecms织梦网站
- dedecms织梦网站
- dedecms织梦网站
- 时别七个月的解除封印
- 通用权限管理设计 之 数据权限
- MyEclipse安装插件的几种方法
- socket阻塞与非阻塞,同步与异步、I/O模型
- HTML5 canvas createPattern() 方法,createLinearGradient()方法
- 简单修改DedeCms防止网站挂马
- 关于字符串和byte数组在java和ios之间兼容的解决办法。
- 实用网站收集
- solrcloud同步策略
- 微博SDK第三方授权登陆
- SQLiteDataBase、SQLiteOpenHelper、ContentProvider介绍和区别
- [经典面试题]输入一个排好序的数组的一个旋转,输出旋转数组的最小元素。
- 泡妞学的正确成长之路!【墨菲斯学员蜕变感悟】
- Harry and Magical Computer (HDU 5154)