概述
用RVI方法,对iOS进行抓包
一、创建远程虚拟接口Remote Virtual Interface(RVI)
该方法适用于iOS 5.0以上设备,需要Mac并且安装Xcode。
1.将iOS设备通过USB连接到Mac上;
2.通过iTools等工具获取iOS设备的UDID;
3.打开终端terminal,建立RVI:
#获取当前的接口列表
$ ifconfig -l
lo0 gif0 stf0 en0 en1 en2 bridge0 p2p0 awdl0
#然后以设备的UDID运行工具
$ rvictl -s UDID
Starting device UDID [SUCCEEDED] with interface rvi0
#再次获取接口列表,会看到有新的虚拟接口rvi0
$ ifconfig -l
lo0 gif0 stf0 en0 en1 en2 bridge0 p2p0 awdl0 rvi0
rvi0就是Remote Virtual Interface,意味着在Mac上虚拟了一个iOS设备接口rvi0。
二、通过tcpdump抓包
1.运行tcpdump:
$ sudo tcpdump -i rvi0 -w dump.pcap
参量的意义:-i rvi0 选择需要抓取的接口为rvi0(远程虚拟接口)
-w dump.pcap 设置保存的文件名称;
2.在iOS设备的App上进行操作;
3.结束操作之后,在terminal上ctrl+c终止tcpdump;
4.这个时候可以删除RVI:
$ rvictl -x UDID
三、处理tcpdump的抓包数据
使用tcprewrite将tcpdump抓包后的数据转换为可视化抓包工具可以解析的数据
1.通过HomeBrew安装tcprewrite:
$ brew install tcpreplay
2.将原始数据包转换为以太网数据包
tcprewrite重写第二层以太网层:
$ tcprewrite --dlt=enet --enet-dmac=00:11:22:33:44:55 --enet-smac=66:77:88:99:AA:BB --infile=dump.pcap --outfile=dumpFileFinal.pcap
或者tcprewrite重写第四层TCP、UDP层:
$ tcprewrite --portmap=80:8080,22:8022 --infile=dump.pcap --outfile=dumpFileFinal.pcap
3.用可视化抓包工具打开dumpFileFinal.pcap文件,比如Charles。然后就可以进行包分析、查看统计流量等等。
最后
以上就是背后母鸡为你收集整理的用RVI方法,对iOS进行抓包的全部内容,希望文章能够帮你解决用RVI方法,对iOS进行抓包所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复