流量统计器如何鉴别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延迟执行实现方法(setTimeout)
Dec 30 Javascript
利用JS解决ie6不支持max-width,max-height问题的方法
Jan 02 Javascript
node.js中的buffer.Buffer.isBuffer方法使用说明
Dec 14 Javascript
Javascript实现多彩雪花从天降散落效果的方法
Feb 02 Javascript
TypeError document.getElementById(...) is null错误原因
May 18 Javascript
javascript中sort排序实例详解
Jul 24 Javascript
vue loadmore 组件滑动加载更多源码解析
Jul 19 Javascript
解决option标签selected="selected"属性失效的问题
Nov 06 Javascript
JavaScript内存泄漏的处理方式
Nov 20 Javascript
利用JavaScript的%做隔行换色的实例
Nov 25 Javascript
浅谈PDF.js使用心得
Jun 07 Javascript
Vue如何实现响应式系统
Jul 11 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
SONY SRF-M100的电路分析
2021/03/02 无线电
javascript数组与php数组的地址传递及值传递用法实例
2015/01/22 PHP
PHP添加图片水印、压缩、剪切的封装类
2015/08/17 PHP
PHP实现绘制二叉树图形显示功能详解【包括二叉搜索树、平衡树及红黑树】
2017/11/16 PHP
PHP使用openssl扩展实现加解密方法示例
2020/02/20 PHP
jquery 查找新建元素代码
2010/07/06 Javascript
js实现select跳转功能代码
2014/10/22 Javascript
JavaScript实现鼠标滑过处生成气泡的方法
2015/05/16 Javascript
浅谈jQuery页面的滚动位置scrollTop、scrollLeft
2015/05/19 Javascript
JavaScript获取页面中超链接数量的方法
2015/11/09 Javascript
VueJS全面解析
2016/11/10 Javascript
JS实现的简单轮播图运动效果示例
2016/12/22 Javascript
JS实现二维数组横纵列转置的方法
2018/04/17 Javascript
nodejs之koa2请求示例(GET,POST)
2018/08/07 NodeJs
详解vue-element Tree树形控件填坑路
2019/03/26 Javascript
微信小程序缓存支持二次开发封装实现解析
2019/12/16 Javascript
JQuery实现折叠式菜单的详细代码
2020/06/03 jQuery
浅谈element中InfiniteScroll按需引入的一点注意事项
2020/06/05 Javascript
VUE+Element实现增删改查的示例源码
2020/11/23 Vue.js
[48:52]DOTA2上海特级锦标赛A组小组赛#2 Secret VS CDEC第一局
2016/02/25 DOTA
Python ORM框架SQLAlchemy学习笔记之映射类使用实例和Session会话介绍
2014/06/10 Python
python抽取指定url页面的title方法
2018/05/11 Python
Python读写zip压缩文件的方法
2018/08/29 Python
python pytest进阶之fixture详解
2019/06/27 Python
Django获取应用下的所有models的例子
2019/08/30 Python
python动态规划算法实例详解
2020/11/22 Python
如何删除一个表里面的重复行
2013/07/13 面试题
高级人员简历的自我评价分享
2013/11/03 职场文书
银行职业规划书范文
2013/12/28 职场文书
会计专业毕业生求职信分享
2014/01/03 职场文书
心得体会范文
2014/01/04 职场文书
安全大检查反思材料
2014/01/31 职场文书
我们的节日春节活动方案
2014/08/22 职场文书
民政局个人整改措施
2014/09/24 职场文书
医院保洁员岗位职责
2015/02/13 职场文书
Java版 简易五子棋小游戏
2022/05/04 Java/Android