一、用burp抓包(http和https)
使手机和pc在同一局域网中,在pc上打开burp设置proxy为pc的IP,端口可自定义,手机上用ProxyDroid设置网络或者手动修改代理为pc的IP和端口就OK了。
有的app客户端通信使用https,先在电脑上用burp和浏览器访问这些https网站,然后在浏览器里面导出所有跟这些https网站相关的证书(.cer),把证书复制到手机上进行安装这样手机就有了证书,就能通过burp来抓包了。
参考:
1、http://drops.wooyun.org/tips/749
3、http://www.freebuf.com/articles/web/6577.html
二、在手机上用tcpdump抓包再用wireshark分析
adb root
adb push E:/tcpdump /system/bin/
adb shell chmod 777 /system/bin/tcpdump
adb shell /system/bin/tcpdump -i any -vv -p -s 0 -w /data/local/1.pcap //按下ctrl+c停止抓包
adb pull /data/local/1.pcap E:/
或者在手机上安装Better Terminal Emulator Pro,上传tcpdump,按下音量减键 + C停止抓包
写个sh文件简化抓包操作:
注意:手机必须root,tcpdump能抓所有包,wireshark不能改包。在Android 5之后,系统强制要求二进制文件支持PIE(Position-Independent-Executable) 提高系统安全性,能找到的tcpdump包基本都没PIE 无法执行,需修改tcpdump编译选项(挺麻烦的),刚找到编译好现成的:http://www.liudonghua.com/?p=372 (测试可用)。
参考:
1、http://zone.wooyun.org/content/4143
三、电脑开启wifi热点,手机连wifi,用wireshark实时抓无线网卡的包分析
有些app通过burp抓不到包可能是走其他协议,此方法方便之处在于不用来回pull pcap文件了。
参考:
1、http://loudong.360.cn/blog/view/id/9
2、http://zone.wooyun.org/content/20107
3、http://www.cnblogs.com/TankXiao/archive/2012/10/10/2711777.html