织梦dedecms防挂马仿镜像方法

网站建设 尹华峰 浏览 评论来源:www.yinhuafeng.cn
  现在织梦程序算是国内比较流行的建站程序了,用的人多了,自然就会被一些有心的人去尝试找漏洞,破解一下织梦程序,所以导致很多人说织梦程序不安全,容易挂马,容易被镜像。如尹华峰SEO技术博客就是织梦程序搭建,每每也会检测到一些漏洞之类的提示。其实不要担心漏洞,学习建站技术的同学要勇敢面对,它会让你更加熟练。而网站之所以出现漏洞,是因为你不会做好网站安全,你拿着一个模板就搞,什么安全都不做,肯定会被镜像和挂马,峰峰今天就讲讲dedecms织梦的防挂马和防镜像的方法。
 
  织梦防挂马
 
  1.确定织梦DedeCMS的版本
 
  我们要了解目前你所使用的织梦系统是不是最新的版本,官方一般过一段时间都会有补丁更新,我们需要时刻关注一下,有了新补丁及时打上!不过现在是已经挂马了的情况,就需要去官网下载最新版本的织梦DedeCMS。
 
  2.对织梦DedeCMS进行备份还原
 
  下载最新版本的织梦DedeCMS之后,对于基本上没做什么二次开发的朋友来说,这个时候在本地或者别的服务器上安装最新版本的织梦DedeCMS,然后把图片附件、数据库还原文件、模板文件以及一些必要的图片、css、js文件处理完木马之后存放在对应的目录内,然后还原网站。为什么要整这么复杂呢?为什么不直接更新最新的补丁呢?因为你的网站已经被挂马,而且你也不知道是挂马到了哪里,挂马的文件删不胜删。所以只有采用这种笨的办法,来清除网站文件中的木马。另外到织梦后台,有一个病毒扫描的工具,在系统设置里,点击扫描一下你的网站文件,这样可以把非织梦文件扫描出来,然后删除掉即可!清楚文件中的挂马之后,还需要查看数据库中是否也有挂马,这点很重要!现如今有被所有的“黑客”抓住不放的两个漏洞(mytag.php,download.php)把这两个文件删了,如果你已经中马了,请打开数据库文件,找到与之相对应的两个数据表,将表里的内容清空!
 
  3.删除多余织梦DedeCMS文件织梦DedeCMS的大多数漏洞,基本上都在member会员目录和plus目录里面,在已经清除挂马的情况下,我们就需要对这两个重点区域进行清理。如果用不到会员系统,建议删除member目录。对于织梦DedeCMS的插件部分(plus),我们把里面不需要的插件的php文件统统删掉,只保留自己用的上的友情链接,广告系统等,删除多余文件这里分为三部。
 
  删除多余文件三部曲:
 
  一精简设置篇:
 
  不需要的功能统统删除。比如不需要会员就将member文件夹删除。删除多余组件是避免被hack注射的最佳办法。将每个目录添加空的index.html,防止目录被访问。
 
  织梦可删除目录列表:member会员功能special专题功能install安装程序(必删)company企业模块plus\guestbook留言板以及其他模块一般用不上的都可以不安装或删除。
 
  二密码设置篇:
 
  管理员密码一定要长,而且字母与数字混合,尽量不要用admin,初次安装完成后将admin删除,新建个管理员名字不要太简单。织梦系统数据库存储的密码是MD5的,一般HACK就算通过注入拿到了MD5的密码,如果你的密码够严谨,对方也逆转不过来。也是无奈。但现在的MD5破解网站太过先进,4T的硬盘全是MD5密码,即便你的密码很复杂有时候都能被蒙上。我之前的站点就是这么被黑的。所以一定密码够复杂。
 
  三dede可删除文件列表:
 
  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删除!
 
  4.做好织梦DedeCMS服务器安全最后是要做好织梦DedeCMS所在服务器的安全,这点非常关键的,服务器不安全,再安全的程序也是不行的。至于其他的目录权限等的设定,请参考织梦官方的安全设置教程或者No牛网的其他教程。如果你是vps独立主机或者服务器用户,建议你下载一个网站防篡改系统,按要求安装进去,这样你的网站不会再被挂马了!织梦DedeCMS的安全,不是一朝一夕的事情,也不可能一劳永逸。大家需要经常关注其次乌云等网站安全网站,要了解织梦DedeCMS的最新漏洞,以及弥补方法;经常关注织梦DedeCMS的官方,打上最新的补丁。
 
  织梦防镜像
 
  网站被镜像了怎么办,简单快速的解决办法
 
  何为镜像站点,有什么危害?
 
  镜像网站是指:一个或多个域名不同、但内容完全相同的网站。镜像网站的出现有可能是有意的,也有可能是无意的。有意的原因包括:软件资源网站给用户提供多个下载链接。某些网站提供多个镜像,使负载均衡或使服务更稳定;黑帽SEO复制多个网站,意图获得更多排名;整站被人复制抄袭也会造成镜像网站。
 
  镜像网站通常会造成复制内容,搜索引擎并不喜欢,对原创内容网站或站长想排名的网站可能造成无法预知的影响。通俗的讲,恶意镜像者通过某些手段复制了你的站点,除了域名不一样之外,其他内容一模一样,用户根本无法分辨。甚至对于一些新的站点,搜索引擎可能无法分辨哪个才是真正的站点,对网站排名造成恶劣影响。
 
  网站被镜像解决办法
 
  网站被镜像后诗洋查看了一下网络上关于这方面的解决办法,大体分为三种:1、百度站长平台投诉;2、屏蔽镜像网站服务器IP,禁止调用自己网站资源;3、添加挑战代码。
 
  方法一:百度站长平台投诉
 
  通过下面的渠道可以反馈问题
  1.jubao.baidu.com
 
  2.tousu.baidu.com
 
  3.zhanzhang.baidu.com/feedback
  但处理速度是根据对用户造成的伤害来界定处理优先级。
 
  方法二:屏蔽镜像网站服务器IP
 
  镜像网站看似一个完整的站点,其实每次用户访问网站的时候,程序还是调用的原网站的数据,所以我们可以屏蔽这个服务器的IP,禁止抓取我们的网站数据。如果是LINUX主机可以通过以下方法获取和屏蔽镜像网站服务器IP。
 
  1)获取镜像网站IP,复制如下代码,新建一个php文件,并命名为“ip.php”上传到你的网站根目录。
  <?php
  $file="ip.txt";//保存的文件名
  $ip=$_SERVER['REMOTE_ADDR'];
  $handle=fopen($file,'a');
  fwrite($handle,"IPAddress:");
  fwrite($handle,"$ip");
  fwrite($handle,"\n");
  fclose($handele);
  ?>
  2)访问镜像网站,在地址后面加.../ip.php,如:http://www.seoseoseo.cn.s2.gvirabi.com/ip.php,然后网站根目录下会生成一个ip.txt的文件,打开复制里面的ip地址。
 
  查找服务器IP地址还可以通过站长工具查询
 
  屏蔽镜像网站服务器IP
 
  3)屏蔽镜像站点IP,打开.htaccess文件,加上如下代码
 
  Linux下规则文件.htaccess(没有可以手工创建.htaccess文件到站点根目录),自行修改红字中的IP地址
  <IfModulemod_rewrite.c>
  RewriteEngineOn
  #Blockip
  RewriteCond%{http:X-Forwarded-For}&%{REMOTE_ADDR}(188.129.143.73)[NC]
  RewriteRule(.*)-[F]
  </IfModule>
  然后再次访问或者刷新镜像网站,这时候就会出现403错误(禁止访问),现在就可以等着蜘蛛删除了
 
  出现403错误(禁止访问)
 
  注:如果不知道如何获取和屏蔽镜像网站IP地址可以咨询主机商,他们也会帮助你解决,或者自己查看网站日志,找出全部国外ip,然后到空间控制面板找到禁止ip,然后就是一个一个的ip都给它禁止了,这样再去访问镜像站就没问题了。
 
  优点:简单、易操作;
 
  缺点:会有不同IP的镜像站点。
 
  方法三:添加JS跳转代码
 
  即通过JS判当前域名,如果不是本域名则跳转回本域名,自行修改代码中网址为自己的网站。
 
  JS跳转代码方法一:直接在网站head下加入一段JS代码,就可以实现镜像站自动跳转到我们的主站,代码如下:
  <scripttype="text/javascript">if(document.location.protocol!="https:"&&navigator.userAgent.indexOf("MSIE6.0")<0){location.href=location.href.replace(/^http:/,"https:");}if(document.location.host!="seoseoseo.cn"){location.href=location.href.replace(document.location.host,'www.seoseoseo.cn');}</script>
  注:部分镜像站点会屏蔽JS代码,所以对有的镜像站点无效
 
  JS跳转代码方法二:
 
  镜像网站过滤掉JS代码甚至JS文件,那么我们需要加入代码混淆和触发事件,将下面代码中的地址改为自己的域名地址添加到主题目录header.php中适当位置即可。
  <scripttype="text/javascript">
  if(window["\x6c\x6f\x63\x61\x74\x69\x6f\x6e"]["\x68\x6f\x73\x74"]!='www.seoseoseo.cn'&&window["\x6c\x6f\x63\x61\x74\x69\x6f\x6e"]["\x68\x6f\x73\x74"]!='d9y.net'){
  alert('警告!检测到该网站为恶意镜像站点,将立即为您跳转到官方站点!');
  window["\x6c\x6f\x63\x61\x74\x69\x6f\x6e"]["\x68\x72\x65\x66"]='http://'+'www.seoseoseo.cn/';
  }
  </script>
  <divstyle="display:none;">
  <script>nod9ynet=false;</script>
  <imgsrc=""onerror='setTimeout(function(){if(typeof(nod9ynet)=="undefined"){window["\x6c\x6f\x63\x61\x74\x69\x6f\x6e"]["\x68\x6f\x73\x74"]=www.seoseoseo.cn;}},3000);'>
  </div>
  JS跳转代码方法三:
 
  通过拆分域名链接与镜像站比对,然后用img标签src空值触发onerror来执行js比对,比对失败则跳转回源站。
 
  代码如下:(复制粘贴到主题的functions.php最后一个?>之前)
  add_action('wp_head','kimsom_reverse_proxy_defense',99);
  functionkimsom_reverse_proxy_defense(){
  $currentDomain='"www."+"seoseoseo"+".cn"';
  echo'<imgstyle="display:none"id="inlojv-rpd"src=""data-url="'.home_url().'"onerror=\'varstr0=document.getElementById("inlojv-rpd").attributes.getNamedItem("data-url").nodeValue;varishttps="https:"==document.location.protocol?true:false;if(ishttps){varstr1="https"+"://";}else{varstr1="http"+"://";}varstr2='.$currentDomain.';varstr3=str1+str2;if(str0!=str3){location.href=location.href.replace(document.location.host,'.$currentDomain.');}\'/>';
  }
  最后还要说的是,把自己网站的url全部设置成绝对地址,这个如果是织梦的话,在后台系统设置里面有,可以自己去看看
 
  如何知道自己的网站是否被镜像?
 
  1.查询同一IP下的网站,然后一个个点击打开,如果网站内容和自己的网站一模一样,可以肯定网站被镜像
 
  2.复制自己网站的标题,然后在谷歌搜索引擎里搜索标题,如果出现镜像情况,那么在谷歌里可以直接看到这个域名
 
  以上就是尹华峰SEO技术博客为大家分享的dedecms防挂马防镜像教程,希望大家认真观看,可能第一次观看觉得有些繁琐,但是你看两遍之后就觉得还是蛮容易的,
 
  因为我们也是为了自身网站安全考虑,仿镜像教程不仅适用于织梦,任何网站都适用,做好网站安全,以后就不用担心了。