一个基于referer的网络攻击案例,其操作手法让人脑洞大开,最重要的是中招的站长十有八九不会发现。本文从被黑后的现象和网站源代码的角度进行分析
图284-1:referer黑客
上一篇文章中我们讲了一个网站被黑的实例,今天我们再来讲一个被黑的网站,这个现象是前几天发现的,我没有进行统计,不清楚有多少网站遭到了这种方式的攻击。发现这个网站被黑纯属偶然,我相信即使是对方站长也很难发现,很可能已经存在很长时间了。
神奇的发现
图284-2:某页面的评论区
某网站(依旧是一个我们的同行——博客型网赚站)的每一篇文章末尾都有一个评论功能,并且可以输入网址,这是很多自媒体网站的通行做法,其思路是人人为我,我为人人。上图是该网站某篇文章的评论区,一共有两条评论,第一条的昵称叫“今日头条极速版”,是一个超链接,第二条的昵称叫suyun,是普通文本没有超链接。
图284-3:某评论的目标页面
点击“今日头条极速版”将跳转到一个网站的页面,页面的内容是今日头条极速版APP的推广页面,如上图所示。到这里是一个正常的状态,一个正确的评论链接它的走向就是这样的。
图284-4:昵称对应的源代码
上图是“今日头条极速版”这个昵称的源代码,敏感内容打了马赛克,左边的马赛克是被黑的这个网站的网址,用www.xxx.com表示,右边的马赛克是目标网站的网址,用www.yyy.com表示,因此整个网址可以写成:https://www.xxx.com/?r=http://www.yyy.com/post/92.html,点击昵称“今日头条极速版”后打开这个网址,然后通过302状态码跳转到目标网站,也就是右边马赛克对应的网址http://www.yyy.com/post/92.html。
图284-5:在浏览器中打开的目标页面
现在将昵称对应的网址https://www.xxx.com/?r=http://www.yyy.com/post/92.html输入到浏览器中打开,神奇的事情发生了,跳转到了另外一个网站,是一个提供SEO服务的网站,如上图所示。
问题分析
同样的网址,一种是采用鼠标点击的方式打开,一种是将网址输入到浏览器中打开,为什么会打开不同的页面?不懂网页编程的人可能觉得这是一个很神奇的现象,对于懂编程的人来说,这就是一个小儿科的技术而已。
用鼠标点击和直接用浏览器打开在服务器端来看,唯一的区别就是referer不同,如果用鼠标点击打开referer的值是当前页面的网址,如果用浏览器打开referer的值是空的,什么也没有。这样一来问题就很简单了,在服务器的脚本文件中,找到上述跳转相关的脚本文件,在源码中找到与跳转有关的代码,然后修改为如下判断代码(下面的代码是php):
图284-6:神奇跳转的代码
为了验证上面的代码,我们再来做一个试验,我们将昵称对应的网址中的目标网址修改为任意字符,比如123,完整的网址为:https://www.xxx.com/?r=123,很显然如果这个网站没有被黑,这个网址肯定是打不开的。把这个网址复制到浏览器中打开。网络传输情况如下图所示,仍旧通过302跳转到了黑客的网站。
图284-7:任意参数的跳转
黑客的目的
黑客这样做的目的是什么呢?有的人可能会有这样的想法,所有的人都只会用鼠标去点击那个昵称,有谁会费力八气的将昵称指向的网址复制出来,再到浏览器中打开。确实,没有人会这样做,但是如果访问网站的不是人呢,它就会这样做了,要知道只有人才会用鼠标,如果对方不是人的话,就只能将网址复制到浏览器中打开。
这个对方就是搜索引擎的蜘蛛,蜘蛛在抓取页面时,首先读取页面的源代码,将页面中的所有链接读取出来,追加到链接库中,然后分析页面的内容,分析完成之后,从链接库中读出下一个链接,再读取这个页面的源代码。搜索引擎的蜘蛛就是不断的重复这个过程,蜘蛛在抓取页面的时候是不会提供referer,事实上也不可能提供referer,因为下一个链接来自于链接库,而不是当前访问的页面。
其结果就是,真实的用户访问页面时跳转到正确的目标页面,搜索引擎的蜘蛛抓取页面时跳转到黑客指向的页面,这样就可以增加黑客网站的权重,要知道一个网站的所有评论的链接指向同一个网站,这样传递过去的权重是很大的。这种做法显然在搜索引擎眼中属于作弊行为,属于黑帽SEO。
本文介绍的这种网站被黑的情况,其操作手法太难被人发现了,我发现他也是纯属偶然,秉承一个程序员喜欢研究别人源码的优良传统,才捕捉到了这个黑客踪迹。对于评论者来说,原本可以吸引其它用户的点击和搜索引擎蜘蛛的光顾,网站被黑之后,就只有用户可以点击,搜索引擎的蜘蛛完全不知道发生了什么。对于被黑的网站,单就这件事情来说,短期内没有什么坏处,随着时间的推移被链接的目标网站遭到惩罚,显然这种事情极有可能发生,那么会受到牵连,因为你的所有评论链接向它的网站,显然你与他关系十分密切。如果稍微想得开阔一点,那后果就很严重了,上面说了,要想实现这种跳转效果,必须修改网站的源代码,也就是说黑客已经完全掌控了你的网站的所有脚本,这是比进入网站管理员后台还要严重的事故,黑客很可能已经能够进入你的服务器后台了。
转载请注明:网创网 www.netcyw.cn/b284.html
加油!!!