从最近的流量统计中发现了非常奇怪的现象:某些PV很大的来源流量居然为0
IP地址 国家 PV 流量
69.28.242.87 US 11452 0.28 M字节
64.193.62.232 US 10521 0
66.246.218.107 US 6010 54.59 M字节
69.73.166.108 US 5630 0
61.183.207.98 CN 3047 27.06 M字节
221.11.5.181 CN 2392 66.88 M字节
66.246.120.114 US 2207 0
从原始日志上看:都是类似以下的0流量 HEAD请求
69.28.242.87 - - [29/Dec/2005:13:41:10 +0800] "HEAD / HTTP/1.1" 200 0 "http://bankruptcy.dynu.net/buy-cialis/buy-cheap-cialis.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)" 69.28.242.87.253451135834870862
69.28.242.87 - - [29/Dec/2005:13:45:24 +0800] "HEAD / HTTP/1.1" 200 0 "http://medportal.dynu.net/mortgage/" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)" 69.28.242.87.262371135835124636
69.28.242.87 - - [29/Dec/2005:13:52:51 +0800] "HEAD / HTTP/1.1" 200 0 "http://fenikrul.white.prohosting.com/phentermine-online.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)" 69.28.242.87.279061135835571753
69.28.242.87 - - [29/Dec/2005:14:04:05 +0800] "HEAD / HTTP/1.1" 200 0 "http://fenikrul.white.prohosting.com/" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)" 69.28.242.87.269751135836245577
69.28.242.87 - - [29/Dec/2005:14:13:17 +0800] "HEAD / HTTP/1.1" 200 0 "http://medportal.dynu.net/buy-viagra/" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)" 69.28.242.87.302561135836797409
每次请求“客户端”只向服务器发送请求,但是目的是为了能将referer中的地址被统计到当前网站的统计系统中,如果统计系统是对外公开的话而且是有超链形式的链接的话(虽然几率非常低),搜索引擎的spider抓取到以后,就会被计坐指向spam网站的链接。一个机器人每天可以对千万级的网站进行referer发送。只要其中十万分之一的网站能够对其中的"中招",大量的反向链接就制造出来了。而被连接的网站可以轻易的得到很高的PageRank;而spam所付出的代价仅仅是向这些网站发送一些空请求的少量带宽. 如何防止这样的HEAD请求呢,谁知道有什么模块可以滤掉这些流量?
其实从日志中还是很容易分析出一些异常的流量的。解决思路首先应该是杜绝awstats等统计对搜索引擎蜘蛛的访问, 我增加了http认证: 或者将所有连接针对spider设置nofollow.
2005-12-30更新:
感谢朋友们给我提供了那么多素材:
http://groovymother.com/archives/2005/01/21/hiding_referer_s.html mod_rewrite应该是更好的解决方案: 但是应该针对HEAD请求 而不是识别REFERER或者指定IP. mod_limitipconn是用来限制并发访问的, 这种spam应该对后台性能影响并不大(spam每隔4-5分钟发送一个请求).只是凭空多计算了很多没有意义的流量来源.
2005-12-30 更新
Eygle这里还有一个例子: 如果哪位需要AWStats统计和Analytics方面的技术支持.我愿意免费提供.
版权声明:可以转载,转载时请务必以超链接形式标明文章 遭遇Referer Spam 的原始出处和作者信息及本版权声明。
http://www.chedong.com/blog/archives/001098.html
Comments
最近我也碰到了,TNND,头都痛了,我就搞不懂,咋有如此无耻的行为啊?!
由: feiy 发表于 2005年12月29日 下午05时52分
RewriteEngine On
RewriteCond %{HTTP_HOST} !^example.com$ [NC]
RewriteCond %{HTTP_REFERER} ^(.*)$ [NC]
RewriteRule ^(.*)$ %1 [R=301,L]
半解决方案
由: Fenng 发表于 2005年12月29日 下午06时02分
再就是修改awstats 也应该可以办到
http://groovymother.com/archives/2005/01/21/hiding_referer_s.html
这个或许值得参考
由: Fenng 发表于 2005年12月29日 下午06时05分
试一下mod_limitipconn?
由: shunz 发表于 2005年12月29日 晚上10时13分
不会吧,这么偏门的东西都能有人想到?
由: 尚北京 发表于 2005年12月30日 上午10时35分
还是直接杀掉这些垃圾ip比较好
由: guoshuang 发表于 2005年12月31日 上午09时25分
我的办法是修改awstats.pl把$field[$pos_method] eq 'HEAD'去掉。
回复 XWood
很好的解决方案
由: xwood 发表于 2006年01月06日 上午11时46分
請問asp asp.net html 要如何防堵呢~謝謝
由: alex 发表于 2008年08月02日 夜间04时04分