標籤:blog http ar 使用 java sp 檔案 log 代碼
使用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,則判斷非本站來路。
轉載:http://www.cnblogs.com/hackpig/archive/2010/02/14/1668236.html
相關文章
淺析document.referrer
js 的 document.referer有辦法偽造來路嗎?
C#:webbrowser中偽造referer,為何對流量統計器無效?