背景
站点网上飘,哪有不挨刀。总是遇到千奇百怪的问题,让人猝不及防。在5
月1
日的前一天,发现博客被人镜像了,这是一个非常糟心的问题,我非常肯定的是这次的镜像不怀好意。为什么我会这么说呢?因为镜像站点域名太不像话了,太长了,有没有特殊的含义,所以我认为这种镜像网站是非常有恶意的。如下图:
JavaScript简单紧急处理
这种恶意的镜像站点无法绝对的杜绝,只能尽可能的减小影响。此次处理非常简单,直接使用Javascript
对当前域名进行判断,与指定域名不符就跳转回指定的域名。
版本一
var local=window.location.host;
if(local.indexOf("skyfinder.cc")==-1){
location.href = location.href.replace(local,"skyfinder.cc");
}
版本二
为了更好的预防其简单替换域名,将我们对比的域名的各个字符ASCII
码保存起来,通过转换重新组合为域名后再与当前host
进行对比,不同则需要跳转原站点,反之则不需要任何的操作。
var local=window.location.host;
var myHost=[115,107,121,102,105,110,100,101,114,46,99,99];
var myurl=[];
for(var item in myHost){
myurl.push(String.fromCharCode(myHost[item]));
}
if(local.indexOf(myurl.join(""))==-1){
location.href = location.href.replace(local,myurl.join(""));
}
版本三
这个版本是使用以上其他版本对Javascript
代码进行混淆的,希望这种方式使他们的操作增加更多的工作量。
var I1=window['\x6c\x6f\x63\x61\x74\x69\x6f\x6e']['\x68\x6f\x73\x74'];var sRPPOUO2=[115,107,121,102,105,110,100,101,114,46,99,99];var dzhW$3=[];for(var tMYXRE4 in sRPPOUO2){dzhW$3['\x70\x75\x73\x68'](window["\x53\x74\x72\x69\x6e\x67"]['\x66\x72\x6f\x6d\x43\x68\x61\x72\x43\x6f\x64\x65'](sRPPOUO2[tMYXRE4]))}if(I1['\x69\x6e\x64\x65\x78\x4f\x66'](dzhW$3['\x6a\x6f\x69\x6e'](""))==-1){window['\x6c\x6f\x63\x61\x74\x69\x6f\x6e']['\x68\x72\x65\x66']['\x72\x65\x70\x6c\x61\x63\x65']();location['\x68\x72\x65\x66']=location['\x68\x72\x65\x66']['\x72\x65\x70\x6c\x61\x63\x65'](I1,dzhW$3['\x6a\x6f\x69\x6e'](""))}
效果展示
封禁IP
第一步 获取镜像站点的IP
新建一个php
文件,将以下代码复制到文件中并命名为“ip.php
”上传到网站根目录。
<?php
$file = "ip.txt";//保存的文件名
$ip = $_SERVER['REMOTE_ADDR'];
$handle =fopen($file,'a');
fwrite($handle,"IP Address:");
fwrite($handle,"$ip");
fwrite($handle,"\n");
fclose($handele);
?>
第二步 访问获取镜像站点地址
访问镜像站点,在镜像域名地址后面加ip.php
,然后就会在自己网站根目录找到ip.txt
文件了,打开复制里面的ip地址。
添加恶意镜像站点IP
到.htaccess
使用Deny from
来将指定的IP
加入黑名单,如下所示
#AIOWPS_IP_BLACKLIST_START
<IfModule !mod_authz_core.c>
Order allow,deny
Allow from all
Deny from 112.213.97.64
Deny from 37.187.78.50
Deny from 47.90.76.5
Deny from 5.188.0.0/16
Deny from 61.160.232.95
Deny from 61.160.232.94
Deny from 125.77.16.108
</IfModule>
<IfModule mod_authz_core.c>
<RequireAll>
Require all granted
Require not ip 112.213.97.64
Require not ip 37.187.78.50
Require not ip 47.90.76.5
Require not ip 5.188.0.0/16
Require not 61.160.232.95
Require not 61.160.232.94
Require not ip 125.77.16.108
</RequireAll>
</IfModule>
#AIOWPS_IP_BLACKLIST_END
将指定IP
加入黑名单后,刷新镜像站点后显示403
被禁止访问。使用这种方式需要维护黑名单列表,如果有新的镜像站点就继续要添加记录。
结语
我个人十分难以理解这种行为,个人博客而已,只是记录点生活的一些琐事、工作中的一些问题处理以及学习中的一些疑问。镜像一个没有商业价值的个人博客,真的值得吗?
关于其他解决恶意镜像站点的方法,以后在寻找。目前仅使用Javascript来做最简单快速的方法。
转载请注明:清风亦平凡 » 网站被恶意镜像的简单快速处理方法