我是靠谱客的博主 背后母鸡,最近开发中收集的这篇文章主要介绍用RVI方法,对iOS进行抓包,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

用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进行抓包所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(35)

评论列表共有 0 条评论

立即
投稿
返回
顶部