php 伪造HTTP_REFERER页面URL来源的三种方法


Posted in PHP onSeptember 22, 2016

php获取当前页面的前一个页面URL地址,即当前页面是从哪个页面链接过来的,可以使用$_SERVER['HTTP_REFERER'],但是这个来源页面的URL地址是可以被伪造和欺骗的,本文章向大家介绍伪造HTTP_REFERER页面URL的三种方法,需要的朋友可以参考一下。

$_SERVER['HTTP_REFERER']是php用来判断页面上级来源页面的一个超级变局变量了,我们可以使用$_SERVER['HTTP_REFERER']来判断是从哪个页面进入到此页面了,这样我们可以进行更好的跟踪了。

但是$_SERVER['HTTP_REFERER']也是可以被伪造欺骗的,有三种方法可以伪造和欺骗$_SERVER['HTTP_REFERER']

第一种方法:file_get_contents

$opt=array('http'=>array('header'=>"Referer: $refer")); 
$context=stream_context_create($opt); 
$file_contents = file_get_contents($url,false, $context);

file_get_contents中stream_context_create就伪造来源的重要参数了。 

第二种方法:CURL

$ch = curl_init(); 
curl_setopt ($ch, CURLOPT_URL, "http://www.manongjc.com"); 
curl_setopt ($ch, CURLOPT_REFERER, "http://www.manongjc.com"); 
curl_exec ($ch); 
curl_close ($ch);

参数http://www.manongjc.com就是伪造的URL地址。

第三种方法:fsockopen

$server = 'www.manongjc.com'; 
$host = 'www.manongjc.com'; 
$target = 'index.php'; 
$referer = 'http://www.manongjc.com/'; // Referer 
$port = 80; 
$fp = fsockopen($server, $port, $errno, $errstr, 30); 
if (!$fp){ 
 echo "$errstr ($errno)\n"; 
}else{ 
$out = "GET $target HTTP/1.1\r\n"; 
$out .= "Host: $host\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); 
}

上面三种方法中,第三种方法fsockopen性能和效果上是最好的,因此推荐大家使用第三种方法。

以上就是对PHP伪造HTTP_REFERER页面URL来源的资料整理,后续继续补充相关资料,谢谢大家对本站的支持!

PHP 相关文章推荐
PHP中Session的概念
Oct 09 PHP
整合了前面的PHP数据库连接类~~做成一个分页类!
Nov 25 PHP
Linux下将excel数据导入到mssql数据库中的方法
Feb 08 PHP
php strcmp使用说明
Apr 22 PHP
PHP采用XML-RPC构造Web Service实例教程
Jul 16 PHP
php判断表是否存在的方法
Jun 18 PHP
微信公众平台开发之天气预报功能
Aug 31 PHP
php实现的操作excel类详解
Jan 15 PHP
php利用header函数下载各种文件
Aug 24 PHP
php版微信自动获取收货地址api用法示例
Sep 22 PHP
php提交表单时保留多个空格及换行的文本样式的方法
Jun 20 PHP
如何修改yii2.0自带的user表为其它的表
Aug 01 PHP
PHP mysqli_free_result()与mysqli_fetch_array()函数详解
Sep 21 #PHP
Yii2.0 Basic代码中路由链接被转义的处理方法
Sep 21 #PHP
php5.2的curl-bug 服务器被php进程卡死问题排查
Sep 19 #PHP
php支付宝在线支付接口开发教程
Sep 19 #PHP
iOS10推送通知开发教程
Sep 19 #PHP
PHP 中 DOMDocument保存xml时中文出现乱码问题的解决方案
Sep 19 #PHP
手把手编写PHP框架 深入了解MVC运行流程
Sep 19 #PHP
You might like
php获取某个目录大小的代码
2008/09/10 PHP
提示Trying to clone an uncloneable object of class Imagic的解决
2011/10/27 PHP
php控制linux服务器常用功能 关机 重启 开新站点等
2012/09/05 PHP
探讨PHP JSON中文乱码的解决方法详解
2013/06/06 PHP
MySql数据库查询结果用表格输出PHP代码示例
2015/03/20 PHP
WordPress自定义时间显示格式
2015/03/27 PHP
PHP使用PHPExcel实现批量上传到数据库的方法
2017/06/08 PHP
一个JavaScript变量声明的知识点
2013/10/28 Javascript
检查输入的是否是数字使用keyCode配合onkeypress事件
2014/01/23 Javascript
javascript 面向对象封装与继承
2014/11/27 Javascript
JS+JSP通过img标签调用实现静态页面访问次数统计的方法
2015/12/14 Javascript
JavaScript仿支付宝密码输入框
2015/12/29 Javascript
JavaScript入门教程之引用类型
2016/05/04 Javascript
javascript js 操作数组 增删改查的简单实现
2016/06/20 Javascript
jQuery Ajax 异步加载显示等待效果代码分享
2016/08/01 Javascript
Angularjs中controller的三种写法分享
2016/09/21 Javascript
微信小程序 图片宽度自适应的实现
2017/04/06 Javascript
javascript二维数组和对象的深拷贝与浅拷贝实例分析
2019/10/26 Javascript
js实现微信聊天效果
2020/08/09 Javascript
[49:08]Secret vs VP 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
Python3 伪装浏览器的方法示例
2017/11/23 Python
python opencv捕获摄像头并显示内容的实现
2019/07/11 Python
总结Pyinstaller的坑及终极解决方法(小结)
2020/09/21 Python
Python中BeautifulSoup通过查找Id获取元素信息
2020/12/07 Python
Finishline官网:美国一家领先的运动品牌鞋类、服装零售商
2016/07/20 全球购物
以色列的身体护理及家居香薰品牌:Sabon NYC
2018/02/23 全球购物
DeinDesign德国:设计自己的手机壳
2019/12/14 全球购物
一篇.NET面试题
2014/09/29 面试题
文秘专业毕业生就业推荐信
2013/11/08 职场文书
经理秘书求职自荐信范文
2014/03/23 职场文书
公司任命书模板
2014/06/06 职场文书
影视后期实训报告
2014/11/05 职场文书
机关干部纪律作风整顿心得体会
2016/01/23 职场文书
Python办公自动化之教你如何用Python将任意文件转为PDF格式
2021/06/28 Python
mongodb的安装和开机自启动详细讲解
2021/08/02 MongoDB
Python3的进程和线程你了解吗
2022/03/16 Python