php使用CURL伪造IP和来源实例详解


Posted in PHP onJanuary 15, 2015

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

伪造IP来源对于php来说是很简单的一件事情,我们只要利用了php的curl即可实现伪造IP来源的功能,IP地址你可以随便写.

index.php实例代码如下:

$ch = curl_init(); 

curl_setopt($ch, CURLOPT_URL, "http://localhost/curl.php"); 

curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-FORWARDED-FOR:8.8.8.8', 'CLIENT-IP:8.8.8.8'));//IP 

curl_setopt($ch, CURLOPT_REFERER, "https://3water.com/ ");   //来路 

curl_setopt($ch, CURLOPT_HEADER, 1); 

$out = curl_exec($ch); 

curl_close($ch);

curl.php代码如下:
function getClientIp() { 

    if (!emptyempty($_SERVER["HTTP_CLIENT_IP"])) 

        $ip = $_SERVER["HTTP_CLIENT_IP"]; 

    else if (!emptyempty($_SERVER["HTTP_X_FORWARDED_FOR"])) 

        $ip = $_SERVER["HTTP_X_FORWARDED_FOR"]; 

    else if (!emptyempty($_SERVER["REMOTE_ADDR"])) 

        $ip = $_SERVER["REMOTE_ADDR"]; 

    else 

        $ip = "err"; 

    return $ip; 

} 

echo "IP: " . getClientIp() . ""; 

echo "referer: " . $_SERVER["HTTP_REFERER"];

用index.php 请求 curl.php,输出结果:

IP:8.8.8.8  referer:https://3water.com

伪造成功,这是不是给采集的朋友提供了很好的换IP的方案,当然防被刷的朋友也要注意了.

补充:

PHP中的CURL函数库(Client URL Library Function)如下:

curl_close — 关闭一个curl会话

curl_copy_handle — 拷贝一个curl连接资源的所有内容和参数

curl_errno — 返回一个包含当前会话错误信息的数字编号

curl_error — 返回一个包含当前会话错误信息的字符串

curl_exec — 执行一个curl会话

curl_getinfo — 获取一个curl连接资源句柄的信息

curl_init — 初始化一个curl会话

curl_multi_add_handle — 向curl批处理会话中添加单独的curl句柄资源

curl_multi_close — 关闭一个批处理句柄资源

curl_multi_exec — 解析一个curl批处理句柄

curl_multi_getcontent — 返回获取的输出的文本流

curl_multi_info_read — 获取当前解析的curl的相关传输信息

curl_multi_init — 初始化一个curl批处理句柄资源

curl_multi_remove_handle — 移除curl批处理句柄资源中的某个句柄资源

curl_multi_select — Get all the sockets associated with the cURL extension, which can then be "selected"

curl_setopt_array — 以数组的形式为一个curl设置会话参数

curl_setopt — 为一个curl设置会话参数

curl_version — 获取curl相关的版本信息

curl_init()函数的作用初始化一个curl会话,curl_init()函数唯一的一个参数是可选的,表示一个url地址.

curl_exec()函数的作用是执行一个curl会话,唯一的参数是curl_init()函数返回的句柄.

curl_close()函数的作用是关闭一个curl会话,唯一的参数是curl_init()函数返回的句柄.

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

PHP 相关文章推荐
php中对2个数组相加的函数
Jun 24 PHP
解决File size limit exceeded 错误的方法
Jun 14 PHP
Thinkphp实现MySQL读写分离操作示例
Jun 25 PHP
php获取英文姓名首字母的方法
Jul 13 PHP
PHP模拟QQ登录的方法
Jul 29 PHP
基于JQuery+PHP编写砸金蛋中奖程序
Sep 08 PHP
PHP处理Ajax请求与Ajax跨域问题
Feb 13 PHP
PHP convert_cyr_string()函数讲解
Feb 13 PHP
Yii2框架自定义类统一处理url操作示例
May 25 PHP
php 比较获取两个数组相同和不同元素的例子(交集和差集)
Oct 18 PHP
PHP7创建COOKIE和销毁COOKIE的实例方法
Feb 03 PHP
php高性能日志系统 seaslog 的安装与使用方法分析
Feb 29 PHP
php+mysql实现无限分类实例详解
Jan 15 #PHP
php截取html字符串及自动补全html标签的方法
Jan 15 #PHP
php在linux下检测mysql同步状态的方法
Jan 15 #PHP
php中静态类与静态变量用法的区别分析
Jan 15 #PHP
将FCKeditor导入PHP+SMARTY的实现方法
Jan 15 #PHP
php通过Chianz.com获取IP地址与地区的方法
Jan 14 #PHP
php中JSON的使用与转换
Jan 14 #PHP
You might like
PHP分页函数代码(简单实用型)
2010/12/02 PHP
yii框架配置默认controller和action示例
2014/04/30 PHP
php设计模式之委托模式
2016/02/13 PHP
VBScript版代码高亮
2006/06/26 Javascript
javascript操作文本框readOnly
2007/05/15 Javascript
自己写的兼容ie和ff的在线文本编辑器类似ewebeditor
2012/12/12 Javascript
Javascript 按位取反运算符 (~)
2014/02/04 Javascript
jQuery中append()方法用法实例
2014/12/25 Javascript
学习JavaScript鼠标响应事件
2015/12/25 Javascript
jQuery中Nicescroll滚动条插件的用法
2016/11/10 Javascript
jQuery的extend方法【三种】
2016/12/14 Javascript
微信小程序 生命周期和页面的生命周期详细介绍
2017/01/19 Javascript
jQuery实现最简单实用的分秒倒计时
2017/02/05 Javascript
JS原生带小白点轮播图实例讲解
2017/07/22 Javascript
React props和state属性的具体使用方法
2018/04/12 Javascript
微信小程序使用wxParse解析html的实现示例
2018/08/30 Javascript
[15:56]Heroes18_暗影萨满(完美)
2014/10/31 DOTA
[43:43]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第三场 11.29
2020/12/02 DOTA
[38:38]完美世界DOTA2联赛PWL S3 access vs Rebirth 第二场 12.17
2020/12/18 DOTA
在Python中处理字符串之isdigit()方法的使用
2015/05/18 Python
python使用pymysql实现操作mysql
2016/09/13 Python
Python爬虫获取图片并下载保存至本地的实例
2018/06/01 Python
python实现寻找最长回文子序列的方法
2018/06/02 Python
详解分布式任务队列Celery使用说明
2018/11/29 Python
Python面向对象程序设计OOP深入分析【构造函数,组合类,工具类等】
2019/01/05 Python
使用Python提取文本中含有特定字符串的方法示例
2020/12/09 Python
医大实习自我鉴定
2013/12/07 职场文书
电脑饰品店的创业计划书
2014/01/21 职场文书
公证委托书
2014/08/01 职场文书
三八活动策划方案
2014/08/17 职场文书
婚礼嘉宾致辞
2015/07/28 职场文书
2019年特色火锅店的创业计划书模板
2019/08/28 职场文书
JavaWeb 入门:Hello Servlet
2021/07/16 Java/Android
什么是动态刷新率DRR? Windows11动态刷新率功能介绍
2021/11/21 数码科技
Python读写yaml文件
2022/03/20 Python
Nginx如何限制IP访问只允许特定域名访问
2022/07/23 Servers