最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
PHP页面跳转与跨站提交伪造Referer地址来源
时间:2022-06-24 18:05:07 编辑:袖梨 来源:一聚教程网
一、尝试过的URL跳转方法
代码如下 | 复制代码 |
echo ''; echo ' echo ' |
以上三种方法均无法传递REFERER地址。
二、使用PHP Socket函数伪造REFER
下面是PHP伪造REFERER代码部分,经过测试可以实现REFERER地址传递,其中$url是输入地址。
代码如下 | 复制代码 |
$uinfo = parse_url($url);//解析URL地址,比如http://111com.net/archives/1.html if($uinfo['path']) // $data = $uinfo['path'];//这里得到/archives/1.html else $data = '/';//默认根 if(!$fsp = @fsockopen($uinfo['host'], (($uinfo['port']) ? $uinfo['port'] : "80"), $errno, $errstr, 12)){ echo "对不起对方网站暂时无法打开,请您稍后访问:".$uinfo['host']; exit; }else{ fputs($fsp, "GET “.$data .” HTTP/1.0rn");//如果是跨站POST提交,可使用POST方法 fputs($fsp, "Host: ".$uinfo['host']."rn"); fputs($fsp, "Referer: 111com.netrn");//伪造REFERER地址 fputs($fsp, "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)rnrn"); $res=''; while(!feof($fsp)) { $res.=fgets($fsp, 128); if(strstr($res,"200 OK")) { header("Location:$url"); exit; } } } //如果是301或302状态码可以继续处理 //返回地址大概形式:HTTP/1.1 301 Moved PermanentlynContent-Length: 164nContent-Type: text/htmlnLocation: http://111com.net/ $arr=explode("n",$res); $arr=explode(": ",$arr[3]);//Location后面是真实重定向地址 header("location:".$arr[0]);//跳转目标地址 exit; |
利用另一种方法 curl)伪造HTTP_REFERER
代码如下 | 复制代码 |
//PHP(前提是装了curl): //PHP(不装curl用sock) |
相关文章
- 神宠降临冒险解密工具作用及获取方法 10-14
- 洛伊的移动要塞力量殿堂玩法规则说明 10-14
- 华夏千秋邬月朗打法攻略分享 10-14
- 《高达钢铁之诗》卡碧尼参战!一人成军,女王之威再临! 10-14
- 长生天机降世逃离地窟任务攻略 10-14
- 弹弹星球宠物作用及获取方法分享 10-14