zoukankan      html  css  js  c++  java
  • iOS APP网络分析之rvictl(可以捕捉除了Wifi以外的网络类型)

    From: http://danqingdani.blog.163.com/blog/static/18609419520135204934551/

    wireshark亲测可用。

    ************************************************************************************************************************************************************************************************************************************************

    iOS应用(包括移动应用)的网络分析,一般采用将移动设备上的流量导入到PC机上,利用PC上成熟的数据包分析工具例如wireshark等来进行分析的方法。

     
    总的来说,有以下三种方法:
    一、在PC上设置网络共享,生成wifi热点供移动设备使用
     
    二、开启http代理工具服务器(例如burpsuite,charles),然后移动设备通过该HTTP代理上网(只能抓取HTTP/HTTPS)
     
    三、使用管道(tunneling)工具例如nc+ADVsock2pipe将iOS上的流量引入到PC上 (需越狱)
     
    实施方法可参考:
     
    以上方法都存在缺陷,例如只能捕捉wifi网络通信,不能抓取2G/3G网络包的缺陷。
     
    iOS 5后,apple引入了RVI remote virtual interface的特性,它只需要将iOS设备使用USB数据线连接到mac上,然后使用rvictl工具以iOS设备的UDID为参数在Mac中建立一个虚拟网络接口rvi,就可以在mac设备上使用tcpdump,wireshark等工具对创建的接口进行抓包分析了。
     
     
    这种流量分析方法,是直接捕捉的iOS设备上的网络流量,因此无论是wifi还是2G/3G等其他网络类型都可以捕捉到,一根USB数据线就搞定了,不需要苛刻的要求PC与iOS设备处于同一个网段,或必须越狱等局限了。
     
    下面介绍使用方法
     
    第一步:使用USB数据线将iOS设备连接到MAC上
     
    第二步:获得iOS设备的UDID,可以使用iTools查看,也可以使用Xcode的Organizer工具查看
     
    第三步:创建RVI接口

    $ rvictl -s <UDID>

     
    RVI虚拟接口的命令规则可为rvi0,rvi1,。。。,创建后可以使用以下命令查看是否创建成功

    $ ifconfig rvi0

    第四步:在mac上用抓包工具wireshark或tcpdump等工具抓包分析

    $ sudo tcpdump -i rvi0 -n -vv

     
     
    第五步:分析结束后,移除创建的RVI接口

    $ rvictl -x <UDID>

  • 相关阅读:
    常用正则表达式大全
    ASP.netMVC验证码
    装饰器
    闭包函数
    猜年龄
    函数基础
    文件的高级应用
    字符编码
    文件的三种打开模式
    深浅拷贝+异常处理
  • 原文地址:https://www.cnblogs.com/ziyouchutuwenwu/p/3171448.html
Copyright © 2011-2022 走看看