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自动生成月历代码
Oct 09 PHP
PHP 数字左侧自动补0
Mar 31 PHP
php抓取页面与代码解析 推荐
Jul 23 PHP
PHP数组操作汇总 php数组的使用技巧
Jul 17 PHP
PHP魔术引号所带来的安全问题分析
Jul 15 PHP
PHP7.0版本备注
Jul 23 PHP
PHP Cookie学习笔记
Aug 23 PHP
PHP写的简单数字验证码实例
May 23 PHP
php封装的pdo数据库操作工具类与用法示例
May 08 PHP
PHP结合Redis+MySQL实现冷热数据交换应用案例详解
Jul 09 PHP
PHP设计模式之适配器模式(Adapter)原理与用法详解
Dec 12 PHP
PHP之header函数详解
Mar 02 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 $_SERVER当前完整url的写法
2009/11/12 PHP
浅谈ThinkPHP的URL重写
2014/11/25 PHP
CentOS下搭建PHP环境与WordPress博客程序的全流程总结
2016/05/07 PHP
TP3.2.3框架使用CKeditor编辑器在页面中上传图片的方法分析
2019/12/31 PHP
js event事件的传递与冒泡处理
2009/12/06 Javascript
jQuery 第二课 操作包装集元素代码
2010/03/14 Javascript
Jquery中显示隐藏的实现代码分析
2011/07/26 Javascript
简单实用的反馈表单无刷新提交带验证
2013/11/15 Javascript
JavaScript中自定义事件用法分析
2014/12/23 Javascript
jquery ztree实现树的搜索功能
2016/02/25 Javascript
JavaScript基本类型值-Undefined、Null、Boolean
2017/02/23 Javascript
微信小程序中使用ECharts 异步加载数据的方法
2018/06/27 Javascript
新手快速上手webpack4打包工具的使用详解
2019/01/28 Javascript
vue路由传参三种基本方式详解
2019/12/09 Javascript
JS document文档的简单操作完整示例
2020/01/13 Javascript
JavaScript实现与web通信的方法详解
2020/08/07 Javascript
js回到页面指定位置的三种方式
2020/12/17 Javascript
Python基于Tkinter实现的记事本实例
2015/06/17 Python
Linux下python与C++使用dlib实现人脸检测
2018/06/29 Python
Python合并多个Excel数据的方法
2018/07/16 Python
Python django使用多进程连接mysql错误的解决方法
2018/10/08 Python
Python定时发送消息的脚本:每天跟你女朋友说晚安
2018/10/21 Python
python创建文本文件的简单方法
2020/08/30 Python
html5 拖拽上传图片实例演示
2013/04/01 HTML / CSS
英国时尚女装购物网站:Missguided
2018/08/23 全球购物
美国最大的户外装备和服装购物网站:Backcountry
2019/10/15 全球购物
自荐信格式的六要素
2013/09/21 职场文书
机电一体化自荐信
2013/12/10 职场文书
中学生国旗下讲话稿
2014/04/26 职场文书
领导班子党的群众路线对照检查材料
2014/09/25 职场文书
机关工会工作总结2015
2015/05/26 职场文书
年会主持人开场白台词
2015/05/29 职场文书
2016年9月份红领巾广播稿
2015/12/21 职场文书
餐厅开业活动方案
2019/07/08 职场文书
python中出现invalid syntax报错的几种原因分析
2022/02/12 Python
字节飞书面试promise.all实现示例
2022/06/16 Javascript