php使用curl伪造来源ip和refer的方法示例


Posted in PHP onMay 08, 2018

本文实例讲述了php使用curl伪造来源ip和refer的方法。分享给大家供大家参考,具体如下:

php curl伪造来源ip和来路refer实例代码1:

//随机IP
function Rand_IP(){
 $ip2id= round(rand(600000, 2550000) / 10000); //第一种方法,直接生成
 $ip3id= round(rand(600000, 2550000) / 10000);
 $ip4id= round(rand(600000, 2550000) / 10000);
 //下面是第二种方法,在以下数据中随机抽取
 $arr_1 = array("218","218","66","66","218","218","60","60","202","204","66","66","66","59","61","60","222","221","66","59","60","60","66","218","218","62","63","64","66","66","122","211");
 $randarr= mt_rand(0,count($arr_1)-1);
 $ip1id = $arr_1[$randarr];
 return $ip1id.".".$ip2id.".".$ip3id.".".$ip4id;
}
//抓取页面内容
function Curl($url){
  $ch2 = curl_init();
  $user_agent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.66 Safari/537.36";//模拟windows用户正常访问
  curl_setopt($ch2, CURLOPT_URL, $url);
  curl_setopt($ch2, CURLOPT_TIMEOUT, 10);
  curl_setopt($ch2, CURLOPT_HTTPHEADER, array('X-FORWARDED-FOR:'.Rand_IP(), 'CLIENT-IP:'.Rand_IP()));
//追踪返回302状态码,继续抓取
  curl_setopt($ch2, CURLOPT_HEADER, true); 
  curl_setopt($ch2, CURLOPT_RETURNTRANSFER, true); 
  curl_setopt($ch2, CURLOPT_FOLLOWLOCATION, true);
  curl_setopt($ch2, CURLOPT_NOBODY, false);
  curl_setopt($ch2, CURLOPT_REFERER, 'http://www.baidu.com/');//模拟来路
  curl_setopt($ch2, CURLOPT_USERAGENT, $user_agent);
  $temp = curl_exec($ch2);
  curl_close($ch2);
  return $temp;
}

php curl伪造来源ip和来路refer实例代码2:

<?php
$postData = array(
 "user" => "root",
 "pwd" => "123456"
);
$headerIp = array(
 'CLIENT-IP:88.88.88.88',
 'X-FORWARDED-FOR:88.88.88.88',
);
$refer = 'http://www.baidu.com';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://localhost/phpdemo/test.php');
//伪造来源refer
curl_setopt($ch, CURLOPT_REFERER, $refer);
//伪造来源ip
curl_setopt($ch, CURLOPT_HTTPHEADER, $headerIp);
//提交post传参
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
//...各种curl属性参数设置
$out_put = curl_exec($ch);
curl_close($ch);
var_dump($out_put);

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

PHP 相关文章推荐
在 PHP 中使用随机数的三个步骤
Oct 09 PHP
PHP的ASP防火墙
Oct 09 PHP
简单介绍下 PHP5 中引入的 MYSQLI的用途
Mar 19 PHP
php 字符串函数收集
Mar 29 PHP
PHP遍历某个目录下的所有文件和子文件夹的实现代码
Jun 28 PHP
关于js和php对url编码的处理方法
Mar 04 PHP
php CI框架插入一条或多条sql记录示例
Jul 29 PHP
smarty模板引擎从配置文件中获取数据的方法
Jan 22 PHP
PHP环境搭建(php+Apache+mysql)
Nov 14 PHP
PHP5.5新特性之yield理解与用法实例分析
Jan 11 PHP
tp5(thinkPHP5框架)时间查询操作实例分析
May 29 PHP
php多进程并发编程防止出现僵尸进程的方法分析
Feb 28 PHP
PHP+ajax实现获取新闻数据简单示例
May 08 #PHP
PHP 计算两个特别大的整数实例代码
May 07 #PHP
详解PHP发送邮件知识点
May 06 #PHP
PHP学习笔记之session
May 06 #PHP
PHP中cookie知识点学习
May 06 #PHP
分析php://output和php://stdout的区别
May 06 #PHP
PHP 布尔值的自增与自减的实现方法
May 03 #PHP
You might like
PHP读取xml方法介绍
2013/01/12 PHP
php实现四舍五入的方法小结
2015/03/03 PHP
jquery实现智能感知连接外网搜索
2013/05/21 Javascript
JS将光标聚焦在文本最后的实现代码
2014/03/28 Javascript
js实现文章文字大小字号功能完整实例
2014/11/01 Javascript
node.js中的fs.readlink方法使用说明
2014/12/17 Javascript
JavaScript中调用函数的4种方式代码实例
2015/07/08 Javascript
使用JavaScript脚本无法直接改变Asp.net中Checkbox控件的Enable属性的解决方法
2015/09/16 Javascript
jQuery基于json与cookie实现购物车的方法
2016/04/15 Javascript
JavaScript中windows.open()、windows.close()方法详解
2016/07/28 Javascript
浅谈jQuery双事件多重加载的问题
2016/10/05 Javascript
nodejs入门教程六:express模块用法示例
2017/04/24 NodeJs
JavaScript的六种继承方式(推荐)
2017/06/26 Javascript
推荐几个不错的console调试技巧实现
2019/12/20 Javascript
jQuery Datatables 动态列+跨列合并实现代码
2020/01/30 jQuery
解决Nuxt使用axios跨域问题
2020/07/06 Javascript
python和C语言混合编程实例
2014/06/04 Python
Python爬取qq music中的音乐url及批量下载
2017/03/23 Python
Python中__slots__属性介绍与基本使用方法
2018/09/05 Python
django-rest-framework解析请求参数过程详解
2019/07/18 Python
Python队列、进程间通信、线程案例
2019/10/25 Python
pytorch: Parameter 的数据结构实例
2019/12/31 Python
Python中操作各种多媒体,视频、音频到图片的代码详解
2020/06/04 Python
HTML5自定义元素播放焦点图动画的实现
2019/09/25 HTML / CSS
英国最大的LED专业零售商:Led Hut
2018/03/16 全球购物
什么是用户模式(User Mode)与内核模式(Kernel Mode) ?
2014/07/21 面试题
污水厂厂长岗位职责
2014/01/04 职场文书
社团招新策划书
2014/02/04 职场文书
学校评语大全
2014/05/06 职场文书
幼儿教师师德师风自我剖析材料
2014/09/29 职场文书
机关干部三严三实心得体会
2014/10/13 职场文书
公司行政管理制度范本
2015/08/05 职场文书
小学远程教育工作总结
2015/08/13 职场文书
工作计划范文之财务管理
2019/08/09 职场文书
Spring Boot 启动、停止、重启、状态脚本
2021/06/26 Java/Android
详解SQL的窗口函数
2022/04/21 Oracle