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 相关文章推荐
用Flash图形化数据(二)
Oct 09 PHP
php Try Catch异常测试
Mar 01 PHP
php中的一些数组排序方法分享
Jul 20 PHP
php 创建以UNIX时间戳命名的文件夹(示例代码)
Mar 08 PHP
PHP的foreach中使用引用时需要注意的一个问题和解决方法
May 29 PHP
PHP中mysql_field_type()函数用法
Nov 24 PHP
php include类文件超时问题处理
Feb 06 PHP
PHP实现在线阅读PDF文件的方法
Jun 23 PHP
php获取文件类型和文件信息的方法
Jul 10 PHP
Yii2实现同时搜索多个字段的方法
Aug 10 PHP
CakePHP框架Model关联对象用法分析
Aug 04 PHP
PHP实现统计代码行数小工具
Sep 19 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实现采集中国天气网未来7天天气
2014/10/15 PHP
php array_pop 删除数组最后一个元素实例
2016/11/02 PHP
thinkphp实现附件上传功能
2017/05/26 PHP
PHP空值检测函数与方法汇总
2017/11/19 PHP
使用jQuery模板来展现json数据的代码
2010/10/22 Javascript
Javascript模块化编程(三)require.js的用法及功能介绍
2013/01/17 Javascript
js判断上传文件的类型和大小示例代码
2013/10/18 Javascript
jQuery实现图片与文字描述左右滑动自动切换的方法
2015/07/27 Javascript
基于js中的原型、继承的一些想法
2016/08/10 Javascript
Javascript实现前端简单的路由实例
2016/09/11 Javascript
正则验证小数点后面只能有两位数的方法
2017/02/28 Javascript
性能优化之代码优化页面加载速度
2017/03/01 Javascript
jQuery.Ajax()的data参数类型详解
2017/07/23 jQuery
[js高手之路]图解javascript的原型(prototype)对象,原型链实例
2017/08/28 Javascript
JS动态修改网页body的背景色实例代码
2017/10/07 Javascript
使用Vue自定义数字键盘组件(体验度极好)
2017/12/19 Javascript
JavaScript实现元素滚动条到达一定位置循环追加内容
2017/12/28 Javascript
JavaScript去掉数组重复项的方法分析【测试可用】
2018/07/19 Javascript
js实现html滑动图片拼图验证
2020/06/24 Javascript
手机浏览器唤起微信分享(JS)
2020/10/11 Javascript
Python3中的真除和Floor除法用法分析
2016/03/16 Python
解决tensorflow测试模型时NotFoundError错误的问题
2018/07/26 Python
python调用摄像头拍摄数据集
2019/06/01 Python
Django Python 获取请求头信息Content-Range的方法
2019/08/06 Python
Django后台管理系统的图文使用教学
2020/01/20 Python
Python多线程Threading、子线程与守护线程实例详解
2020/03/24 Python
HMV日本官网:全球知名的音乐、DVD和电脑游戏零售巨头
2016/08/13 全球购物
美国娱乐和流行文化商品店:FYE
2017/09/14 全球购物
TripAdvisor日本:全球领先的旅游网站
2019/02/14 全球购物
土木工程个人自荐信范文
2013/11/30 职场文书
王老吉广告词
2014/03/20 职场文书
募捐倡议书
2014/04/14 职场文书
2016高考感言
2015/08/01 职场文书
离职告别感言
2015/08/04 职场文书
2015年度考核个人工作总结
2015/10/24 职场文书
MySQL外键约束(Foreign Key)案例详解
2022/06/28 MySQL