国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > PHP > 正文

PHP頁面跳轉與跨站提交偽造Referer地址來源

2024-05-04 21:48:32
字體:
來源:轉載
供稿:網(wǎng)友

一、嘗試過的URL跳轉方法,代碼如下:

  1. echo '<meta http-equiv="refresh" content="0; URL='.$url.'">'
  2.  
  3. echo '<scrīpt language="Javascrīpt">window.location.href="'.$url.'";</scrīpt>'
  4.  
  5. echo '<script language="Javascrīpt">window.location.replace="'.$url.'";</ script>'

以上三種方法均無法傳遞REFERER地址.

二、使用PHP Socket函數(shù)偽造REFER

下面是PHP偽造REFERER代碼部分,經(jīng)過測試可以實現(xiàn)REFERER地址傳遞,其中$url是輸入地址,代碼如下:

  1. $uinfo = parse_url($url);//解析URL地址,比如http://Vevb.com/archives/1.html 
  2.  
  3. if($uinfo['path']) // 
  4.  
  5.     $data = $uinfo['path'];//這里得到/archives/1.html 
  6.  
  7. else 
  8.  
  9.     $data = '/';//默認根 
  10.  
  11. if(!$fsp = @fsockopen($uinfo['host'], (($uinfo['port']) ? $uinfo['port'] : "80"), $errno$errstr, 12)){ 
  12.  
  13.     echo "對不起對方網(wǎng)站暫時無法打開,請您稍后訪問:".$uinfo['host'];    exit
  14.  
  15. }else
  16.  
  17.     fputs($fsp"GET “.$data .” HTTP/1.0rn");//如果是跨站POST提交,可使用POST方法 
  18.  
  19.     fputs($fsp"Host: ".$uinfo['host']."rn"); 
  20.  
  21.     fputs($fsp"Referer: Vevb.comrn");//偽造REFERER地址 
  22.  
  23.     fputs($fsp"User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)rnrn"); 
  24.  
  25.     $res=''
  26.  
  27.     while(!feof($fsp))  { 
  28.  
  29.         $res.=fgets($fsp, 128); 
  30.  
  31.         if(strstr($res,"200 OK")) { 
  32.  
  33.             header("Location:$url"); exit
  34.  
  35.         } 
  36.  
  37.     } 
  38.  
  39.  
  40. //如果是301或302狀態(tài)碼可以繼續(xù)處理 
  41. //開源代碼Vevb.com 
  42. //返回地址大概形式:HTTP/1.1 301 Moved PermanentlynContent-Length: 164nContent-Type: text/htmlnLocation: http://Vevb.com/ 
  43.  
  44. $arr=explode("n",$res); 
  45.  
  46. $arr=explode(": ",$arr[3]);//Location后面是真實重定向地址 
  47.  
  48. header("location:".$arr[0]);//跳轉目標地址 
  49.  
  50. exit

利用另一種方法 curl)偽造HTTP_REFERER,代碼如下:

  1. //PHP(前提是裝了curl): 
  2. $ch = curl_init(); 
  3. curl_setopt ($ch, CURLOPT_URL, "http://m.survivalescaperooms.com/"); 
  4. curl_setopt ($ch, CURLOPT_REFERER, "http://m.survivalescaperooms.com/"); 
  5. curl_exec ($ch); 
  6. curl_close ($ch); 
  7.  
  8. //PHP(不裝curl用sock) 
  9. $server = 'blog.qita.in'
  10. $host      = 'blog.qita.in'
  11. $target    = '/xxx.asp'
  12. $referer = 'http://www.baidu.com/';      // Referer 
  13. $port      = 80; 
  14. $fp = fsockopen($server$port$errno$errstr, 30); 
  15. if (!$fp)  
  16.      echo "$errstr ($errno)<br />n"
  17. }  
  18. else  
  19.           $out = "GET $target HTTP/1.1rn"
  20.           $out .= "Host: $hostrn"
  21.           $out .= "Cookie: ASPSESSIONIDSQTBQSDA=DFCAPKLBBFICDAFMHNKIGKEGrn"
  22.           $out .= "Referer: $refererrn"
  23.           $out .= "Connection: Closernrn"
  24.           fwrite($fp$out); 
  25.           while (!feof($fp))  
  26.           { 
  27.                   echo fgets($fp, 128); 
  28.           } 
  29.           fclose($fp); 

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 噶尔县| 黄龙县| 垦利县| 黎川县| 广元市| 桓仁| 建德市| 都兰县| 辛集市| 凤台县| 阿巴嘎旗| 望都县| 喜德县| 翁源县| 东乡族自治县| 南投县| 工布江达县| 航空| 南部县| 藁城市| 临桂县| 绥化市| 孝感市| 察雅县| 客服| 宁阳县| 沂水县| 新巴尔虎右旗| 茂名市| 荣成市| 尼木县| 泸水县| 三都| 达州市| 葫芦岛市| 临泽县| 周至县| 天等县| 桂林市| 翁牛特旗| 綦江县|