网络分析工具

这里的网络分析工具可以归为两大类:

  • 网络代理: 用的最多的是 Fiddler

  • 分析工具: 比较熟悉的是Wireshark

代理类

Fiddler

以Android客户端抓包为例,主要步骤为:

  • [Tools]-[Options], 检查Connections和HTTPS选项,开启代理模式
  • 安卓浏览器访问 <YOUR_IP>:8888, 下载并安装根证书
  • 设置安卓WIFI代理为以上地址和端口

Charles (付费)

Burp Suite

默认端口8080

mitmproxy

Python写的开源调试工具, 解析/修改/重放/保存。

mitmproxy -b PORT -w outfile
mitmdump -w outfile
# -n 不绑定代理端口
# 过滤所有POST
mitmdump -nr outfile -w outfile2 "-m post"
# 客户端重放, -c filename
mitmdump -nc outfile

Android全局抓包分析(HTTP/HTTPS+TCP)

最近遇到的问题是,App也使用了TCP协议,如果使用Fiddler这类HTTP代理工具会造成应用使用问题。

所以要同时抓取HTTP/HTTPS和TCP数据,安卓自带的WiFi代理便局限了。

抓包方案有2个:

Android机已ROOTED

手机端安装tcpdump,因为安卓本身就是基于*Nix的嘛,在电脑用Wireshark抓包。

其实就是一条命令:

adb exec-out "tcpdump -i any -U -w - 2>/dev/null" | wireshark -k -S -i -

电脑建立WiFi热点

由于是公司的手机,不能随便ROOT。思路是通过电脑的无线网络建立一个代理WiFi热点。

在Windows7/10都可以,如果是台式机,需要自备无线网卡。

# 确定  Hosted network supported/支持的承载网络为 Yes/是
netsh wlan show drivers

# 建立虚拟WiFi
netsh wlan set hostednetwork mode=allow ssid=testWiFi key=password
# 设置网络连接共享: 右键点击正在使用的以太网络连接,[属性]-[共享]标签-勾选 [Internet共享连接]并从下拉列表选择刚创建的网络。
# Windows10位置:[Windows Settings]-[Network&Internet]-[Change Adapter Options]

#开启无线AP
netsh wlan start hostednetwork

资源

链接

扩展阅读