php采用curl实现伪造IP来源的方法


Posted in PHP onNovember 21, 2014

本文实例讲述了php采用curl实现伪造IP来源的方法。可以实现伪造IP来源, 伪造域名, 伪造用户信息,分享给大家供大家参考。具体实现方法如下:

定义伪造用户浏览器信息HTTP_USER_AGENT

$binfo =array('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; InfoPath.2; AskTbPTV/5.17.0.25589; Alexa Toolbar)','Mozilla/5.0 (Windows NT 5.1; rv:22.0) Gecko/20100101 Firefox/22.0','Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET4.0C; Alexa Toolbar)','Mozilla/4.0(compatible; MSIE 6.0; Windows NT 5.1; SV1)',$_SERVER['HTTP_USER_AGENT']);

//123.125.68.*

//125.90.88.*

定义伪造IP来源段,这里我找的是百度的IP地址
$cip = '123.125.68.'.mt_rand(0,254);

$xip = '125.90.88.'.mt_rand(0,254);

$header = array( 

'CLIENT-IP:'.$cip, 

'X-FORWARDED-FOR:'.$xip, 

);

利用curl开始向服务器发送伪造信息
function getimgs( $url,$userinfo,$header)

{

 $ch = curl_init();

 $timeout = 5;

 curl_setopt ($ch, CURLOPT_URL, "$url");

 curl_setopt ($ch, CURLOPT_HTTPHEADER, $header);

 curl_setopt ($ch, CURLOPT_REFERER, "http://www.baidu.com/"); 

 curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);

 curl_setopt ($ch, CURLOPT_USERAGENT, "$userinfo");

 curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);  

 $contents = curl_exec($ch);

 curl_close($ch);

 return $contents;

}

获取到数据我们再保存
function saveimgs( $handle )

{

 $fp = fopen('a.jpg',"w");

 fwrite($fp,$handle);

 unset($fp);

 unset($handle);

}

测试伪造IP实例
$url ='https://3water.com/images/logo.gif';

$u = $binfo[mt_rand(0,3)];

saveimgs(getimgs($url,$u,$header));

这样就在你当前目录保存成功了一个文件a.jpg文件,我现可以查看服务器日志是不是我们自定的用户信息呢

192.168.1.108 - - [22/Jul/2013:10:29:37 +0800] "GET /test.php HTTP/1.1" 200 1244 "-" "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; InfoPath.2; AskTbPTV/5.17.0.25589; Alexa Toolbar)"
192.168.1.108 - - [22/Jul/2013:10:29:37 +0800] "GET / HTTP/1.1" 200 40538 "http://www.baidu.com/" "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET4.0C; Alexa Toolbar)"
192.168.1.108 - - [22/Jul/2013:10:29:37 +0800] "GET /test.php HTTP/1.1" 200 1244 "-" "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; InfoPath.2; AskTbPTV/5.17.0.25589; Alexa Toolbar)"
192.168.1.108 - - [22/Jul/2013:10:29:37 +0800] "GET / HTTP/1.1" 200 40538 "http://www.baidu.com/" "Mozilla/5.0 (Windows NT 5.1; rv:22.0) Gecko/20100101 Firefox/22.0"

看出来了吧,完全正确啊,只是IP地址我怎么没测试出来,这个使用php获取ip地址时就会显示我伪造IP地址了。

希望本文所述对大家的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP文件打开、关闭、写入的判断与执行代码
May 24 PHP
php中url传递中文字符,特殊危险字符的解决方法
Aug 17 PHP
php生成唯一的订单函数分享
Feb 02 PHP
smarty模板引擎之分配数据类型
Mar 30 PHP
PHP结合jQuery实现找回密码
Jul 22 PHP
php函数mkdir实现递归创建层级目录
Oct 27 PHP
[原创]php token使用与验证示例【测试可用】
Aug 30 PHP
Laravel中10个有用的用法小结
May 06 PHP
TP5(thinkPHP框架)实现后台清除缓存功能示例
May 29 PHP
tp5.1 实现setInc字段自动加1
Oct 18 PHP
php使用redis的有序集合zset实现延迟队列应用示例
Feb 20 PHP
laravel数据库查询结果自动转数组修改实例
Feb 27 PHP
php文件缓存类汇总
Nov 21 #PHP
php实现事件监听与触发的方法
Nov 21 #PHP
PHP通过内置函数memory_get_usage()获取内存使用情况
Nov 20 #PHP
IIS下PHP的三种配置方式对比
Nov 20 #PHP
PHP程序员常见的40个陋习,你中了几个?
Nov 20 #PHP
php目录遍历函数opendir用法实例
Nov 20 #PHP
php中base_convert()进制数字转换函数实例
Nov 20 #PHP
You might like
PHP 一个比较完善的简单文件上传
2010/03/25 PHP
php对称加密算法示例
2014/05/07 PHP
PHP+Mysql实现多关键字与多字段生成SQL语句的函数
2014/11/05 PHP
PHP图片处理之图片旋转和图片翻转实例
2014/11/19 PHP
javascript 原型模式实现OOP的再研究
2009/04/09 Javascript
基于jquery的textarea发布框限制文字字数输入(添加中文识别)
2012/02/16 Javascript
火狐下input焦点无法重复获取问题的解决方法
2014/06/16 Javascript
JS应用正则表达式转换大小写示例
2014/09/18 Javascript
JavaScript实现文字与图片拖拽效果的方法
2015/02/16 Javascript
jQuery ui实现动感的圆角渐变网站导航菜单效果代码
2015/08/26 Javascript
onclick和onblur冲突问题的快速解决方法
2016/04/28 Javascript
JS基于HTML5的canvas标签实现炫目的色相球动画效果实例
2016/08/24 Javascript
原生JS:Date对象全面解析
2016/09/06 Javascript
js原生代码实现轮播图的实例讲解
2017/07/28 Javascript
node.js学习笔记之koa框架和简单爬虫练习
2018/12/13 Javascript
在JavaScript中如何访问暂未存在的嵌套对象
2019/06/18 Javascript
详解node登录接口之密码错误限制次数(含代码)
2019/10/25 Javascript
JavaScript中EventBus实现对象之间通信
2020/10/18 Javascript
详解Python字符串对象的实现
2015/12/24 Python
Python实现破解12306图片验证码的方法分析
2017/12/29 Python
flask中的wtforms使用方法
2018/07/21 Python
Python爬虫之正则表达式的使用教程详解
2018/10/25 Python
python 多线程中子线程和主线程相互通信方法
2018/11/09 Python
Python shelve模块实现解析
2019/08/28 Python
计算pytorch标准化(Normalize)所需要数据集的均值和方差实例
2020/01/15 Python
巧克力领导品牌瑞士莲美国官网:Lindt Chocolate美国
2016/08/25 全球购物
NBA欧洲商店(法国):NBA Europe Store FR
2016/10/19 全球购物
美国眼镜网站:LensCrafters
2020/01/19 全球购物
美国婴儿和儿童服装购物网站:PatPat
2020/10/01 全球购物
中科方德软件测试面试题
2016/04/21 面试题
大学军训自我鉴定
2013/12/15 职场文书
祖国在我心中演讲稿500字
2014/05/04 职场文书
内科护士节演讲稿
2014/09/11 职场文书
教师师德师风个人整改方案
2014/09/18 职场文书
本地通过nginx配置反向代理的全过程记录
2021/03/31 Servers
python3.9之你应该知道的新特性详解
2021/04/29 Python