获取Android App的网络流量

运行环境

  • 手机端
    • Android版本的tcpdump
    • 已经root好的手机一枚
    • Android版本的nc
  • PC端
    • wireshark
    • PC版本的nc

检测流量

首先连接好我们的手机到PC端上

1
adb device

然后,将下载好的tcpdump上传到Android手机上

1
2
adb push tcpdump /data/local/tmp
adb shell chmod 755 /data/local/tmp/tcpdump

然后执行su,将权限提升至root用户,运行tcpdump开始抓包

1
./tcpdump -w - | nc -l -p 31337

这里的-w选项是指定一个输出文件,-表示输出是写到终端屏幕上的
合起来就是将tcpdump抓取到的流量输出的Android端的31337端口上

之后,另起一个终端

1
2
adb forward tcp:12345 tcp:31337
nc 127.0.0.1 12345 | wireshark -k -S -i -

这里首先将PC端的12345端口和Android端的31337端口就可以相互通信了,然后nc连接到PC端本地的12345端口,将获得的流量(也就是tcpdump抓到的流量即手机app的Web流量)输出到wireshark中,从而实现wireshark抓到Android的流量了。

本文标题:获取Android App的网络流量

文章作者:Pino-HD

发布时间:2018年08月01日 - 21:08

最后更新:2018年08月01日 - 21:08

原始链接:https://pino-hd.github.io/2018/08/01/获取Android-App的网络流量/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

坚持原创技术分享,您的支持将鼓励我继续创作!