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 中文乱码解决办法总结分析
Jul 30 PHP
如何判断php数组的维度
Jun 10 PHP
几道坑人的PHP面试题 试试看看你会不会也中招
Aug 19 PHP
CI框架装载器Loader.php源码分析
Nov 04 PHP
1亿条数据如何分表100张到Mysql数据库中(PHP)
Jul 29 PHP
php基础教程
Aug 26 PHP
Zend Framework缓存Cache用法简单实例
Mar 19 PHP
Yii配置与使用memcached缓存的方法
Jul 13 PHP
php数据库的增删改查 php与javascript之间的交互
Aug 31 PHP
php探针不显示内存解决方法
Sep 17 PHP
php策略模式简单示例分析【区别于工厂模式】
Sep 25 PHP
php框架CI(codeigniter)自动加载与自主创建对象操作实例分析
Jun 06 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
phpmailer中文乱码问题的解决方法
2014/04/22 PHP
thinkphp实现发送邮件密码找回功能实例
2014/12/01 PHP
php实现window平台的checkdnsrr函数
2015/05/27 PHP
PHP高并发和大流量解决方案整理
2021/03/09 PHP
javascript 新浪背投广告实现代码
2009/07/07 Javascript
flash 得到自身url参数的代码
2009/11/15 Javascript
js function定义函数的几种不错方法
2014/02/27 Javascript
jquery控制select的text/value值为选中状态
2014/06/03 Javascript
jQuery的end()方法使用详解
2015/07/15 Javascript
jQuery实现Tab菜单滚动切换的方法
2015/09/21 Javascript
vue中用动态组件实现选项卡切换效果
2017/03/25 Javascript
jquery实现图片放大点击切换
2017/06/06 jQuery
实现图片首尾平滑轮播(JS原生方法—节流)
2017/10/17 Javascript
angular4 JavaScript内存溢出问题
2018/03/06 Javascript
JavaScript日期工具类DateUtils定义与用法示例
2018/09/03 Javascript
JS实现数组深拷贝的方法分析
2019/03/06 Javascript
记录一次完整的react hooks实践
2019/03/11 Javascript
Vue.extend实现挂载到实例上的方法
2019/05/01 Javascript
vue+element创建动态的form表单及动态生成表格的行和列
2019/05/20 Javascript
深入理解webpack process.env.NODE_ENV配置
2020/02/23 Javascript
VUE动态生成word的实现
2020/07/26 Javascript
[01:24:34]2014 DOTA2华西杯精英邀请赛5 24 DK VS LGD
2014/05/25 DOTA
Python实现发送email的几种常用方法
2014/08/18 Python
基于python神经卷积网络的人脸识别
2018/05/24 Python
浅谈Python中eval的强大与危害
2019/03/13 Python
详解pandas数据合并与重塑(pd.concat篇)
2019/07/09 Python
Python Tkinter模块 GUI 可视化实例
2019/11/20 Python
Python读取实时数据流示例
2019/12/02 Python
深入了解Python 方法之类方法 &amp; 静态方法
2020/08/17 Python
单位介绍信范文
2014/01/18 职场文书
机关干部四风问题自我剖析及整改措施
2014/10/26 职场文书
家庭财产分割协议书范本
2014/11/24 职场文书
给客户的检讨书
2014/12/21 职场文书
党员干部公开承诺书范文
2015/04/27 职场文书
委托开发合同书(标准版)
2019/08/07 职场文书
react使用antd的上传组件实现文件表单一起提交功能(完整代码)
2021/06/29 Javascript