ios真机抓包命令rvictl
2013-12-05 14:34
344 查看
转自:http://danqingdani.blog.163.com/blog/static/18609419520135204934551/
总的来说,有以下三种方法:
一、在PC上设置网络共享,生成wifi热点供移动设备使用
二、开启http代理工具服务器(例如burpsuite,charles),然后移动设备通过该HTTP代理上网(只能抓取HTTP/HTTPS)
三、使用管道(tunneling)工具例如nc+ADVsock2pipe将iOS上的流量引入到PC上 (需越狱)
实施方法可参考:
iPhone上使用Burp Suite捕捉HTTPS通信包方法
mobile app 通信分析方法小议(iOS/Android)
实时抓取移动设备上的通信包(ADVsock2pipe+Wireshark+nc+tcpdump)
以上方法都存在缺陷,例如只能捕捉wifi网络通信,不能抓取2G/3G网络包的缺陷。
iOS 5后,apple引入了RVI remote virtual interface的特性,它只需要将iOS设备使用USB数据线连接到mac上,然后使用rvictl工具以iOS设备的UDID为参数在Mac中建立一个虚拟网络接口rvi,就可以在mac设备上使用tcpdump,wireshark等工具对创建的接口进行抓包分析了。
iOS APP网络分析之rvictl(可以捕捉除了Wifi以外的网络类型) - 碳基体 - 碳基体
这种流量分析方法,是直接捕捉的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
iOS APP网络分析之rvictl(可以捕捉除了Wifi以外的网络类型) - 碳基体 - 碳基体
第五步:分析结束后,移除创建的RVI接口
$ rvictl -x <UDID>
参考:
http://www.winddisk.com/2012/09/01/mac_capture_iphone_package_remote_virtual_interface/ http://useyourloaf.com/blog/2012/02/07/remote-packet-capture-for-ios-devices.html
总的来说,有以下三种方法:
一、在PC上设置网络共享,生成wifi热点供移动设备使用
二、开启http代理工具服务器(例如burpsuite,charles),然后移动设备通过该HTTP代理上网(只能抓取HTTP/HTTPS)
三、使用管道(tunneling)工具例如nc+ADVsock2pipe将iOS上的流量引入到PC上 (需越狱)
实施方法可参考:
iPhone上使用Burp Suite捕捉HTTPS通信包方法
mobile app 通信分析方法小议(iOS/Android)
实时抓取移动设备上的通信包(ADVsock2pipe+Wireshark+nc+tcpdump)
以上方法都存在缺陷,例如只能捕捉wifi网络通信,不能抓取2G/3G网络包的缺陷。
iOS 5后,apple引入了RVI remote virtual interface的特性,它只需要将iOS设备使用USB数据线连接到mac上,然后使用rvictl工具以iOS设备的UDID为参数在Mac中建立一个虚拟网络接口rvi,就可以在mac设备上使用tcpdump,wireshark等工具对创建的接口进行抓包分析了。
iOS APP网络分析之rvictl(可以捕捉除了Wifi以外的网络类型) - 碳基体 - 碳基体
这种流量分析方法,是直接捕捉的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
iOS APP网络分析之rvictl(可以捕捉除了Wifi以外的网络类型) - 碳基体 - 碳基体
第五步:分析结束后,移除创建的RVI接口
$ rvictl -x <UDID>
参考:
http://www.winddisk.com/2012/09/01/mac_capture_iphone_package_remote_virtual_interface/ http://useyourloaf.com/blog/2012/02/07/remote-packet-capture-for-ios-devices.html
相关文章推荐
- iOS应用程序安全(7)-不用证书安装应用到设备的方法
- IOS开发常用的开源组件
- 为文件创建存储路径
- IOS注意事项(2)
- IOS注意事项
- IOS设计模式第五篇之装饰设计模式的代理设计模式
- IOS 开发必备网址
- IOS 获取文件夹
- IOS学习笔记---collections
- IOS 性能优化
- Static Dynamic Library Or Framework
- Xcode 4.3中在iOS上应用Static Library及Static Framework笔记
- xcode 5.0及以上适配 IOS6及一下真机设备
- ios即时通讯客户端开发之-mac上搭建openfire服务器
- AddressBook 地址簿 (电话簿) 访问与修改-IOS开发
- IOS汉字编码转化 分类: IOS
- iOS 协同开发出fatal error: file 'XX-Prefix.pch' has bee
- iOS应用软件开发基础——第一课_软件开发思想
- ios日期比较
- [课堂实践与项目]IOS优先级的计算器