PHP中使用curl伪造IP的简单方法


Posted in PHP onAugust 07, 2015

curl简介:
curl是一个利用URL语法在命令行方式下工作的文件传输工具。它支持很多协议:FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP。curl同样支持HTTPS认证,HTTP POST方法, HTTP PUT方法, FTP上传, HTTP上传, 代理服务器, cookies, 用户名/密码认证, 下载文件断点续传等等,功能十分强大。
PHP中常用curl实现的功能:
   1、实现远程获取和采集内容
   2、实现PHP 网页版的FTP上传下载
   3、实现模拟登陆
   4、实现接口对接(API),数据传输等
   5、实现模拟Cookie等

   PHP使用CURL功能
默认情况下PHP是不支持CURL功能的,需要在PHP.ini中开启该功能

; extension= php_curl.dll//首先去除前面的;分号,并重启Apache/IIS

使用curl伪造IP

我找到的IP拷贝到txt文件里,然后sed和awk处理了一下,分享一下我的awk处理脚本:

#!/bin/awk -f 
   
  #运行前 
  BEGIN { 
    FS = " "; 
    count = 0; 
  } 
   
  #运行中 
  { 
    iparr[count ++] = $0; 
  } 
   
  #运行后 
  END { 
    printf("<?php\n"); 
    printf("$iparr = array(\n"); 
    for (i = 0; i < count; i ++) { 
      printf("'%s' => '%s',\n", iparr[i], iparr[i]); 
    } 
    printf(");\n"); 
  }

CURL使用

   

<?php 
  require_once dirname(__FILE__) . "/iplib.php"; 
   
  $req_url = "test.com"; 
   
  foreach ($iparr as $forward => $cip) { 
     
    $ch = curl_init(); 
     
    curl_setopt($ch, CURLOPT_URL, $req_url); 
    curl_setopt($ch, CURLOPT_HTTPHEADER, array( 
        "X-FORWARDED-FOR:$forward", 
        "CLIENT-IP:$cip" 
    )); 
    curl_setopt($ch, CURLOPT_REFERER, 'http://blog.csdn.net/'); 
    curl_setopt($ch, CURLOPT_HEADER, 1); 
     
    curl_exec($ch); 
     
    curl_close($ch); 
  }

缺陷
很多服务器端一般都采用了$_SERVER['REMOTE_ADDR']来获取客户端的真实ip,这是在传输层就已经决定的地址,无法通过CURL进行修改,好吧,貌似我也没帮朋友做成功这件事情,不过还是记录一下

PHP 相关文章推荐
php 中文字符入库或显示乱码问题的解决方法
Apr 12 PHP
PHP header()函数使用详细(301、404等错误设置)
Apr 17 PHP
如何设置mysql允许外网访问
Jun 04 PHP
php使用sql数据库 获取字段问题介绍
Aug 12 PHP
PHP对象相互引用的内存溢出实例分析
Aug 28 PHP
thinkphp区间查询、统计查询与SQL直接查询实例分析
Nov 24 PHP
php一个解析字符串排列数组的方法
May 12 PHP
PHP开发中常用的十个代码样例
Feb 02 PHP
PHP环境搭建的详细步骤
Jun 30 PHP
利用PHP生成CSV文件简单示例
Dec 21 PHP
PHP设置Cookie的HTTPONLY属性方法
Feb 09 PHP
Laravel 加载第三方类库的方法
Apr 20 PHP
smarty中常用方法实例总结
Aug 07 #PHP
php递归函数三种实现方法及如何实现数字累加
Aug 07 #PHP
PHP下载生成的csv文件及问题总结
Aug 06 #PHP
PHP获取一年有几周以及每周开始日期和结束日期
Aug 06 #PHP
简单介绍win7下搭建apache+php+mysql开发环境
Aug 06 #PHP
php实现无限级分类(递归方法)
Aug 06 #PHP
PHP常用的排序和查找算法
Aug 06 #PHP
You might like
PHP IPV6正则表达式验证代码
2010/02/16 PHP
PHP FTP操作类代码( 上传、拷贝、移动、删除文件/创建目录)
2014/05/10 PHP
PHP改进计算字符串相似度的函数similar_text()、levenshtein()
2014/10/27 PHP
Smarty模板变量与调节器实例详解
2019/07/20 PHP
ajax 文件上传应用简单实现
2009/03/03 Javascript
通过百度地图获取公交线路的站点坐标的js代码
2012/05/11 Javascript
简介可以自动完成UI的AngularJS工具angular-smarty
2015/06/23 Javascript
Bootstrap每天必学之简单入门
2015/11/19 Javascript
JS获取屏幕高度的简单实现代码
2016/05/24 Javascript
详解vue-cli本地环境API代理设置和解决跨域
2017/09/05 Javascript
JS实现瀑布流布局
2017/10/21 Javascript
Node解决简单重复问题系列之Excel内容的获取
2018/01/02 Javascript
React全家桶环境搭建过程详解
2018/05/18 Javascript
jQuery基于Ajax实现读取XML数据功能示例
2018/05/31 jQuery
vue3.0 CLI - 3.2 路由的初级使用教程
2018/09/20 Javascript
解决微信小程序防止无法回到主页的问题
2018/09/28 Javascript
layui关闭层级、简单监听的实例
2019/09/06 Javascript
vue 实现根据data中的属性值来设置不同的样式
2020/08/04 Javascript
vue 中使用print.js导出pdf操作
2020/11/13 Javascript
python实现360的字符显示界面
2014/02/21 Python
python实现读取命令行参数的方法
2015/05/22 Python
python利用拉链法实现字典方法示例
2017/03/25 Python
解决python读取几千万行的大表内存问题
2018/06/26 Python
Python实现高斯函数的三维显示方法
2018/12/29 Python
Python设计模式之模板方法模式实例详解
2019/01/17 Python
django-rest-framework解析请求参数过程详解
2019/07/18 Python
使用python实现多维数据降维操作
2020/02/24 Python
使用HTML5在网页中嵌入音频和视频播放的基本方法
2016/02/22 HTML / CSS
HTML5+lufylegend实现游戏中的卷轴
2016/02/29 HTML / CSS
英国领先的运动物理治疗供应公司:Vivomed
2018/07/14 全球购物
Linux常见面试题
2013/03/18 面试题
公司会议开幕词
2015/01/29 职场文书
成本会计岗位职责
2015/02/03 职场文书
2015年安置帮教工作总结
2015/05/22 职场文书
MySQL GTID复制的具体使用
2022/05/20 MySQL
JavaScript实现简单的音乐播放器
2022/08/14 Javascript