PHP curl伪造IP地址和header信息代码实例


Posted in PHP onApril 27, 2015

curl虽然功能强大,但是只能伪造$_SERVER["HTTP_X_FORWARDED_FOR"],对于大多数IP地址检测程序来说,$_SERVER["REMOTE_ADDR"]很难被伪造:

首先是client.php的代码

$headers['CLIENT-IP'] = '202.103.229.40';  

$headers['X-FORWARDED-FOR'] = '202.103.229.40'; 

 

$headerArr = array();  

foreach( $headers as $n => $v ) {  

    $headerArr[] = $n .':' . $v;   

}

 

ob_start();

$ch = curl_init();

curl_setopt ($ch, CURLOPT_URL, "http://localhost/curl/server.php");

curl_setopt ($ch, CURLOPT_HTTPHEADER , $headerArr );  //构造IP

curl_setopt ($ch, CURLOPT_REFERER, "http://www.163.com/ ");   //构造来路

curl_setopt( $ch, CURLOPT_HEADER, 1);

 

curl_exec($ch);

curl_close ($ch);

$out = ob_get_contents();

ob_clean();

 

echo $out;

然后是server.php

function GetIP(){

    if(!emptyempty($_SERVER["HTTP_CLIENT_IP"]))

        $cip = $_SERVER["HTTP_CLIENT_IP"];

    else if(!emptyempty($_SERVER["HTTP_X_FORWARDED_FOR"]))

        $cip = $_SERVER["HTTP_X_FORWARDED_FOR"];

    else if(!emptyempty($_SERVER["REMOTE_ADDR"]))

        $cip = $_SERVER["REMOTE_ADDR"];

    else

    $cip = "无法获取!";

    return $cip;

}

echo "<br>访问IP: ".GetIP()."<br>";

echo "<br>访问来路: ".$_SERVER["HTTP_REFERER"];
PHP 相关文章推荐
PHP 中的一些经验积累
Oct 09 PHP
PHP header函数分析详解
Aug 06 PHP
php解析xml提示Invalid byte 1 of 1-byte UTF-8 sequence错误的处理方法
Nov 14 PHP
php中chdir()函数用法实例
Nov 13 PHP
smarty内置函数section的用法
Jan 22 PHP
php查询相似度最高的字符串的方法
Mar 12 PHP
Discuz!X中SESSION机制实例详解
Sep 23 PHP
php实现给一张图片加上水印效果
Jan 02 PHP
屏蔽PHP默认设置中的Notice警告的方法
May 20 PHP
php array_values 返回数组的所有值详解及实例
Nov 12 PHP
删除PHP数组中头部、尾部、任意元素的实现代码
Apr 10 PHP
php实现评论回复删除功能
May 23 PHP
JavaScript实现滚动栏效果的方法
Apr 27 #PHP
php curl 上传文件代码实例
Apr 27 #PHP
php把大写命名转换成下划线分割命名
Apr 27 #PHP
PHP加密解密字符串汇总
Apr 26 #PHP
php开发中的页面跳转方法总结
Apr 26 #PHP
如何使用jQuery+PHP+MySQL来实现一个在线测试项目
Apr 26 #PHP
PHP开启opcache提升代码性能
Apr 26 #PHP
You might like
提升PHP执行速度全攻略(下)
2006/10/09 PHP
基于PHP服务端图片生成缩略图的方法详解
2013/06/20 PHP
Symfony2框架创建项目与模板设置实例详解
2016/03/17 PHP
PHP使用PHPExcel删除Excel单元格指定列的方法
2016/07/06 PHP
PHP用户管理中常用接口调用实例及解析(含源码)
2017/03/09 PHP
详解Yii2 之 生成 URL 的方法
2017/06/16 PHP
用Laravel Sms实现laravel短信验证码的发送的实现
2018/11/29 PHP
科讯商业版中用到的ajax空间与分页函数
2007/09/02 Javascript
JavaScript Array扩展实现代码
2009/10/14 Javascript
JavaScript浏览器选项卡效果
2010/08/25 Javascript
再说AutoComplete自动补全之实现原理
2011/11/05 Javascript
判断是否安装flash player及当前版本的JS代码
2013/08/08 Javascript
javascript实现验证身份证号的有效性并提示
2015/04/30 Javascript
JavaScript函数学习总结以及相关的编程习惯指南
2015/11/16 Javascript
jQuery插件HighCharts实现2D柱状图、折线图的组合多轴图效果示例【附demo源码下载】
2017/03/09 Javascript
详解vue组件通信的三种方式
2017/06/30 Javascript
JavaScript实现点击出现图片并统计点击次数功能示例
2018/07/23 Javascript
Vue axios全局拦截 get请求、post请求、配置请求的实例代码
2018/11/28 Javascript
vue filter 完美时间日期格式的代码
2019/08/14 Javascript
解决layer弹出层中表单不起作用的问题
2019/09/09 Javascript
JSONP解决JS跨域问题的实现
2020/05/25 Javascript
五句话帮你轻松搞定js原型链
2020/12/09 Javascript
[08:54]DOTA2-DPC中国联赛 正赛 Aster vs LBZS 选手采访
2021/03/11 DOTA
python函数参数*args**kwargs用法实例
2013/12/04 Python
Python实现的百度站长自动URL提交小工具
2014/06/27 Python
Python爬虫利用cookie实现模拟登陆实例详解
2017/01/12 Python
python3中os.path模块下常用的用法总结【推荐】
2018/09/16 Python
python2与python3中关于对NaN类型数据的判断和转换方法
2018/10/30 Python
详解python中TCP协议中的粘包问题
2019/03/22 Python
matplotlib基础绘图命令之bar的使用方法
2020/08/13 Python
以设计师精品品质提供快速时尚:PopJulia
2018/01/09 全球购物
测量工程专业求职信
2014/02/24 职场文书
研究生毕业自我鉴定范文
2014/03/27 职场文书
学生会部长竞聘书
2014/03/31 职场文书
2015年加油站站长工作总结
2015/05/27 职场文书
 分享一个Python 遇到数据库超好用的模块
2022/04/06 Python