流量统计器如何鉴别C#:WebBrowser中伪造referer


Posted in Javascript onJanuary 07, 2015

使用webbrowser伪造referer的方法:webBrowser1.Navigate(url, "_self", null, "Referer:http://www.xxx.com")

这段时间一直研究怎么才能在 webbrowser中设置referer来路来伪造来路进行刷流量,可是最后研究了半个月最终以失败告终,因为现在的统计代码,比较实际的就是cnzz.com和google adsense自带的统计,他们的统计都是通过js文件进行统计的,这样就形成了伪造来路的不成功,具体为什么不成功就让下面的一篇文章说明吧!

众所周知,服务器端的referer来路是可以伪造的,无论是ASP、PHP还是其他脚本都是可以伪造referer的,一些下载软件更是把referer伪造的惟妙惟肖,利用webbrowser控件可以方便的伪造来路。那么,作为保护网站的守门人,它如何防止这些伪造的referer呢?

这里,利用的是 Javascript 这一利器。

上面提到的伪造referer的方法都是通过服务器端的脚本来实现的,但它们并不能欺骗客户端。而JS是在客户端执行的,它并不会理会服务器端的headers信息,所以,利用js的 document.referer 方法可以准确地判断网页的真实来路。

几乎所有的第三方统计不约而同地采用了 document.referer 来判断来路,为什么?正是基于 js 下的 referer来路 是不可伪造的。即使在服务器端成功地伪造了referer的网页脚本,在第三方统计里也是无法被统计到的,原因正是由于这些三方统计采用了 document.referer 来判别真实的来路。

所以,为了对抗虚假的 referer 伪造信息,统计代码需要利用 js 的 document.referer 来判别,就可以将伪造的信息拒之门外 。

据目前所知,到目前为止,js下是无法伪造 referer 的。

那么有人问了,如果客户端把JAVASCRIPT脚步甚至cookies关闭了,你还怎么判断这个referer?其实答案也很简单,就是 js 和 asp/php 脚本之间通过 操作cookies 这个中间桥梁来实现,js里把这个referer写入cookies,asp/php读取这个cookies,如果读取不到这个cookies,则判断非本站来路。

Javascript 相关文章推荐
JavaScript Event学习第九章 鼠标事件
Feb 08 Javascript
jQuery Mobile的loading对话框显示/隐藏方法分享
Nov 26 Javascript
javascript文件加载管理简单实现方法
Jul 25 Javascript
跟我学习javascript的arguments对象
Nov 16 Javascript
json的使用小结
Jun 08 Javascript
AngularJS基础 ng-copy 指令实例代码
Aug 01 Javascript
ES6新特性二:Iterator(遍历器)和for-of循环详解
Apr 20 Javascript
原生JS封装animate运动框架的实例
Oct 12 Javascript
Webpack优化配置缩小文件搜索范围
Dec 25 Javascript
JavaScript实现读取与输出XML文件数据的方法示例
Jun 05 Javascript
解决vue中post方式提交数据后台无法接收的问题
Aug 11 Javascript
Vue监听事件实现计数点击依次增加的方法
Sep 26 Javascript
Angular用来控制元素的展示与否的原生指令介绍
Jan 07 #Javascript
jQuery中children()方法用法实例
Jan 07 #Javascript
angular.element方法汇总
Jan 07 #Javascript
jQuery中slice()方法用法实例
Jan 07 #Javascript
angularJS中$apply()方法详解
Jan 07 #Javascript
jQuery中not()方法用法实例
Jan 06 #Javascript
jQuery中has()方法用法实例
Jan 06 #Javascript
You might like
PHP连接及操作PostgreSQL数据库的方法详解
2019/01/30 PHP
js 禁用只读文本框获得焦点时的退格键
2010/04/25 Javascript
IE6浏览器下resize事件被执行了多次解决方法
2012/12/11 Javascript
谈谈JSON对象和字符串之间的相互转换JSON.stringify(obj)和JSON.parse(string)
2015/10/01 Javascript
XMLHttpRequest Level 2 使用指南
2016/08/26 Javascript
javascript cookie基础应用之记录用户名的方法
2016/09/20 Javascript
详解JavaScript中的属性和特性
2016/12/08 Javascript
AngularJs导出数据到Excel的示例代码
2017/08/11 Javascript
微信小程序的部署方法步骤
2018/09/04 Javascript
webpack优化之代码分割与公共代码提取详解
2019/11/22 Javascript
浅谈numpy数组的几种排序方式
2017/12/15 Python
《与孩子一起学编程》python自测题
2018/05/27 Python
对Python3.6 IDLE常用快捷键介绍
2018/07/16 Python
使用Python Pandas处理亿级数据的方法
2019/06/24 Python
python实现websocket的客户端压力测试
2019/06/25 Python
在python下实现word2vec词向量训练与加载实例
2020/06/09 Python
Python实现敏感词过滤的4种方法
2020/09/12 Python
如何用Python绘制3D柱形图
2020/09/16 Python
详解canvas绘图时遇到的跨域问题
2018/03/22 HTML / CSS
BNKR中国官网:带你感受澳洲领先潮流时尚
2018/08/21 全球购物
Emma Bridgewater官网:英国餐具制造商
2019/11/24 全球购物
平面设计师的工作职责
2013/11/21 职场文书
大学生专科学习生活的自我评价
2013/12/07 职场文书
个人能力自我鉴赏
2014/01/25 职场文书
校园歌咏比赛主持词
2014/03/18 职场文书
英文求职信范文
2014/05/23 职场文书
主题团日活动总结
2014/06/25 职场文书
在职党员进社区活动总结
2014/07/05 职场文书
教师暑期培训感言
2014/08/15 职场文书
医院党员公开承诺书
2014/08/30 职场文书
2014年涉外离婚协议书范本
2014/11/20 职场文书
2015年销售员工作总结范文
2015/04/07 职场文书
秋菊打官司观后感
2015/06/03 职场文书
2015年国庆节新闻稿
2015/07/18 职场文书
高中语文教学反思范文
2016/02/16 职场文书
中国现代文学之经典散文三篇
2019/09/18 职场文书