ASP,PHP與.NET偽造HTTP-REFERER方法及防止偽造REFERER方法探討
HTTP-REFERER這個(gè)變量已經(jīng)越來(lái)越不可靠了,完全就是可以偽造出來(lái)的東東。
以下是偽造方法:
ASP:
dim?http?? set?http=server.createobject("MSXML2.XMLHTTP")?'//MSXML2.serverXMLHTTP也可以? Http.open?"GET",url,false?? Http.setRequestHeader?"Referer","http://chabaoo.cn/"?? Http.send()??
PHP(前提是裝了curl):
$ch?=?curl_init();? curl_setopt?($ch,?CURLOPT_URL,?"http://www.dc9.cn/xxx.asp");? curl_setopt?($ch,?CURLOPT_REFERER,?"http://chabaoo.cn/");? curl_exec?($ch);? curl_close?($ch);?
PHP(不裝curl用sock)
$server?=?'chabaoo.cn';? $host????=?'chabaoo.cn';? $target??=?'/xxx.asp';? $referer?=?'//chabaoo.cn/';????//?Referer? $port????=?80;? $fp?=?fsockopen($server,?$port,?$errno,?$errstr,?30);? if?(!$fp)?? {? ???echo?"$errstr?($errno)<br?/>\n";? }?? else?? {? ????????$out?=?"GET?$target?HTTP/1.1\r\n";? ????????$out?.=?"Host:?$host\r\n";? ????????$out?.=?"Cookie:?ASPSESSIONIDSQTBQSDA=DFCAPKLBBFICDAFMHNKIGKEG\r\n";? ????????$out?.=?"Referer:?$referer\r\n";? ????????$out?.=?"Connection:?Close\r\n\r\n";? ????????fwrite($fp,?$out);? ????????while?(!feof($fp))?? ????????{? ????????????????echo?fgets($fp,?128);? ????????}? ????????fclose($fp);? }?
VB.NET/C#.NET
Dim oXMLHttp As MSXML2.XMLHTTP30 = New MSXML2.XMLHTTP30()
或者
MSXML2.XMLHTTP30 oXMLHttp = new MSXML2.XMLHTTP30();
oXMLHttp.open(....
oXMLHttp.setRequestHeader(...
oXMLHttp.send(..
javascript
xmlHttp.setRequestHeader("Referer", "http://URL");//???呵呵~假的~
JS不支持^_^
原理都是sock構(gòu)造http頭來(lái)senddata。其他語(yǔ)言什么的比如perl也可以,
目前比較簡(jiǎn)單的防御偽造referer的方法是用驗(yàn)證碼(Session)。
現(xiàn)在有一些能防盜鏈軟件的商業(yè)公司比如UUDOG,linkgate,VirtualWall什么的,都是開(kāi)發(fā)的應(yīng)用于IIS上面的dll。
有的是采用cookies驗(yàn)證、線程控制,有的是能隨機(jī)生成文件名然后做URL重寫(xiě)。有的方法能的確達(dá)到不錯(cuò)的效果.
不過(guò)道高一尺,魔高一丈,這些雕蟲(chóng)小技終歸是有破解方法的。
- php 偽造HTTP_REFERER頁(yè)面URL來(lái)源的三種方法
- PHP偽造來(lái)源HTTP_REFERER的方法實(shí)例詳解
- php中HTTP_REFERER函數(shù)用法實(shí)例
- 完美兼容各大瀏覽器獲取HTTP_REFERER方法總結(jié)
- php中XMLHttpRequest(Ajax)不能設(shè)置自定義的Referer的解決方法
- php中突破基于HTTP_REFERER的防盜鏈措施(stream_context_create)
- VBS偽造HTTP-REFERER的實(shí)現(xiàn)方法
- asp Http_Referer,Server_Name和Http_Host
- 一段ASP的HTTP_REFERER判斷代碼
- ASP,PHP與.NET偽造HTTP-REFERER方法及防止偽造REFERER的方法
- ASP,PHP與.NET偽造HTTP-REFERER方法及防止偽造REFERER方法探討
- HTTP Referer詳解及Referer控制
相關(guān)文章
asp 下用正則表達(dá)式檢測(cè)郵箱格式的函數(shù)
asp 下用正則表達(dá)式檢測(cè)郵箱格式的函數(shù)...2007-08-08ASP中使用Set ors=oConn.Execute()時(shí)獲取記錄數(shù)的方法
在ASP中,如果你使用Set ors=oConn.Execute()來(lái)創(chuàng)建RecordSet對(duì)象,再使用RecordSet.RecordCount獲取記錄數(shù)時(shí),你會(huì)發(fā)現(xiàn)它的值為-1,這時(shí),我們可以使用GetRows方法來(lái)獲取記錄數(shù)。2010-12-12關(guān)于asp+access的安全問(wèn)題分析
關(guān)于asp+access的安全問(wèn)題分析...2007-04-04解決使用良精企業(yè)建站7.0未注冊(cè)問(wèn)題
解決使用良精企業(yè)建站7.0未注冊(cè)問(wèn)題...2007-04-04ASP不能打開(kāi)注冊(cè)表關(guān)鍵字錯(cuò)誤 ''80004005''的解決方法
這篇文章主要介紹了ASP不能打開(kāi)注冊(cè)表關(guān)鍵字錯(cuò)誤 '80004005'的解決方法,感興趣的小伙伴們可以參考一下2015-10-10asp實(shí)現(xiàn)獲取MSSQL數(shù)據(jù)庫(kù)表指定條件行數(shù)的函數(shù)
這篇文章主要介紹了asp實(shí)現(xiàn)獲取MSSQL數(shù)據(jù)庫(kù)表指定條件行數(shù)的函數(shù)的的相關(guān)資料,需要的朋友可以參考下2015-03-03asp中實(shí)現(xiàn)清除html的函數(shù)
本文給大家分享的是在asp中實(shí)現(xiàn)清除HTML的函數(shù),非常的實(shí)用,有需要的小伙伴,參考下吧。2015-03-03