网络分析工具
这里的网络分析工具可以归为两大类:
-
网络代理: 用的最多的是 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