RVI(remote virtual interfacer)
通过victl使ios设备在Mac中建立一个虚拟网络接口rvi,再用Tcpdump,Wireshark、Charles、Fiddler等对创建的接口进行抓包分析。
今对于tcp和udp协议的包使用此方法+tcpdump记录一下:
首先需要将你的手机通过Usb进行与Mac连接。通过iTunes查找你的设备UDID:288ee5ef6c3f8a5b*
如何获取你的设备UDID:
打开iTunes软件,点击小手机图标地方。
点击左边菜单栏里面的摘要,出现设备信息。
点击序列号,会自动更换UDID,ECID,型号标识符。右击拷贝即可获取ios设备的UDID。
开启虚拟网络接口
ifconfig -l
rvictl -s 288ee5ef6c3f8a5b* # 结果: Starting device 288e* [SUCCEEDED] with interface rvi0
ifconfig -l # 对比两次config -l 的结果,多出一个虚拟接口
开启tcpdump进行监听
sudo tcpdump -i rvi0 -n -s 0 -w indump.pcap
必须使用sudo,否则权限校验失败
-i 指定监听的接口
-n 不做主机名解析
-s len 设置数据包抓取的长度,默认65535字节
-w filename 指定抓包数据到文件中
随心所欲的在手机上操作(想抓包的操作)
操作完后记得关闭该虚拟接口
rvictl -x 288ee5ef6c3f8a5b* # 结果:Stopping device 288ee5ef6c3f* [SUCCEEDED]
得到抓取的包,进行分析。需要转换
brew install tcpreplay # 通过tcprewrite进行转换,需要下载tcpreplay包
tcprewrite --dlt=enet --enet-dmac=00:11:22:33:44:55 --enet-smac=66:77:88:99:AA:BB --infile=indump.pcap --outfile=outdump.pcap
--dlt 用enet以太网覆盖输出
--enet-dmac 覆盖目标以太网mac地址
--enet-smac 覆盖源以太网mac地址
--infile 输入的文件
--outfile 输出的文件
最后用charles打开out dump.pcap文件就可以分析所抓到的包啦
【补充】:下载一个wireshark的软件!!!!!
作者:小铭灬同学
链接:https://www.jianshu.com/p/b81e56a4b6a0
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
网友评论