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 相关文章推荐
PHP6 mysql连接方式说明
Feb 09 PHP
PHP 创建标签云函数代码
May 26 PHP
PHP运行模式的深入理解
Jun 03 PHP
PHP中的多行字符串传递给JavaScript的两种方法
Jun 19 PHP
使用PHP similar text计算两个字符串相似度
Nov 06 PHP
php  PATH_SEPARATOR判断当前服务器系统类型实例
Oct 28 PHP
php5.3后静态绑定用法详解
Nov 11 PHP
PHP+JavaScript实现无刷新上传图片
Feb 21 PHP
PHP实现类似于C语言的文件读取及解析功能
Sep 01 PHP
PHP连接及操作PostgreSQL数据库的方法详解
Jan 30 PHP
php apache开启跨域模式过程详解
Jul 08 PHP
PHP实现简易用户登录系统
Jul 10 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
全国FM电台频率大全 - 12 安徽省
2020/03/11 无线电
PHP stripos()函数及注意事项的分析
2013/06/08 PHP
php禁止浏览器使用缓存页面的方法
2014/11/07 PHP
php网页版聊天软件实现代码
2016/08/12 PHP
根据key删除数组中指定的元素实现方法
2017/03/02 PHP
PHP API接口必备之输出json格式数据示例代码
2017/06/27 PHP
jQuery+CSS实现菜单滑动伸展收缩(仿淘宝)
2013/03/22 Javascript
JQuery制作的放大效果的popup对话框(未添加任何jquery plugin)分享
2013/04/28 Javascript
JavaScript将数据转换成整数的方法
2014/01/04 Javascript
基于jquery animate操作css样式属性小结
2015/11/27 Javascript
总结JavaScript三种数据存储方式之间的区别
2016/05/03 Javascript
JavaScript基础语法之js表达式
2016/06/07 Javascript
Bootstrap学习笔记之js组件(4)
2016/06/12 Javascript
JavaScript学习笔记整理_setTimeout的应用
2016/09/19 Javascript
将JSON字符串转换成Map对象的方法
2016/11/30 Javascript
js实现登录与注册界面
2017/11/01 Javascript
浅谈React前后端同构防止重复渲染
2018/01/05 Javascript
Vue+Element-U实现分页显示效果
2020/11/15 Javascript
[04:59]2018DOTA2亚洲邀请赛 4.7 Mineski夺冠时刻
2018/04/09 DOTA
[22:07]DOTA2-DPC中国联赛 正赛 iG vs Magma 选手采访
2021/03/11 DOTA
Python实现时钟显示效果思路详解
2018/04/11 Python
Python3.5常见内置方法参数用法实例详解
2019/04/29 Python
django项目中使用手机号登录的实例代码
2019/08/15 Python
Virtualenv 搭建 Py项目运行环境的教程详解
2020/06/22 Python
最新pycharm安装教程
2020/11/18 Python
python 基于Apscheduler实现定时任务
2020/12/15 Python
HTML5时代CSS设置漂亮字体取代图片
2014/09/04 HTML / CSS
即时搜索数百万张门票:SeatsForEveryone.com
2018/08/26 全球购物
丝芙兰新加坡官网:Sephora新加坡
2018/12/04 全球购物
医疗器械售后服务承诺书
2014/05/21 职场文书
二年级上册数学教学计划
2015/01/20 职场文书
2015年大学迎新工作总结
2015/07/16 职场文书
2016入党积极分子党校培训心得体会
2016/01/06 职场文书
手写实现JS中的new
2021/11/07 Javascript
SONY600GR,国产收音机厂商永远的痛
2022/04/05 无线电
mysql 索引的数据结构为什么要采用B+树
2022/04/26 MySQL