Android&IOS实时抓包

Android

    核心原理,就是开辟一条PC与移动设备的通信管道,然后在PC上,让wireshark基于管道(PIPE)抓包。

要使用的工具包括tcpdump,nc,wireshark,adb。

测试设备:

   PC(win和mac均可):adb环境,nc环境(配置方法和adb一致),wireshark,环境变量中已设置wireshark(我的电脑右键-属性-高级系统设置-环境变量-系统变量-path中添加);

    已root的Android手机:手机/data/local/目录下有tcpdump小工具,手机安装busybox。

步骤: 

    1.手机usb连接电脑,打开cmd,依次输入以下命令:

    Adb shell

    Su

    /data/local/tcpdump -n -s 0 -w - | nc -l -p12345&

    然后重新打开一个窗口,输入

    adb forward tcp:23456 tcp:12345 &&nc 127.0.0.1 23456 | wireshark -k -S -i -

    系统会自动打开wireshark,此时就可以看到手机端实时的tcp/udp请求。

    也可以把上述命令改为批处理文件,直接运行,但有可能会卡死在某个环节。

IOS

原理是使用苹果自带工具rvi(Remote VirtualInterface),将iOS设备映射成为Mac上的一块网卡,在Mac上,便可以使用常用的流量监控工具对这块虚拟网卡的流量进行监控。
步骤:

1:将iOS设备(无需越狱)通过usb连接到Mac上,并获取设备id:可以通过itools,xcode以及终端获取;

打开mac终端,输入:

rvictl -s  ios设备id

这时,所有iphone网络流量都会经过iphone所链接的mac,并且iphone数据还是走自己的网络,比如iphone链接在3g网络,数据还是会通过3G收发,而不是通过mac的网络。断开连接:

Rvictl -x  ios设备id

设备连接后,mac会出现一个对应的虚拟网络接口,名字是rvi0(如果有多个iphone则累加,rvi1,rvi2…)

只要启动Wireshark,监听rvi接口就能抓到iPhone数据了,当然,也可以使用Wireshark以外的工具抓取或分析。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值