抓包分析Andorid APP可以做许多事情,跟PC上的应用相比,移动应用一般逻辑简单、安全性不高。比如说,某些APP上的摇0元商品、刷抽奖、刷红包,都是非常容易编码实现的。
一种不好的思路,可以是自己安装Android SDK,创建虚拟设备来抓包。
另一种不理想的思路,还可以是通过在PC创建共享WIFI,然后在PC上抓包。
总之,相同点是,抓包在PC上进行,而不是直接在手机上。
本文余下部分介绍利用fiddler代理抓包,以及在chrome上修改User-Agent、模拟触屏事件(淘宝刮刮卡?)等。
要求: 手机必须能够访问PC,最好能连接到同一个无线路由器。
1. 安装fiddler
首先是下载安装fiddler: http://fiddler2.com/get-fiddler
运行fiddler,修改设置: Tools => Fiddler Options,在 HTTPS选项卡中,勾选Capture和Decrypt HTTPS。如下图:
在Connections选项卡中,可以看到fiddler的代理端口为8888,勾选上允许远程访问,如下图:
2. 关闭windows防火墙
在控制面板中,临时关闭windows防火墙。允许连接入代理。
3. 在手机上设置代理
在PC上通过ipconfig获取IP地址。
我的IP地址是192.168.1.4。 那么,在手机上需要将代理设置为192.168.1.4: 8888,如下图:
完成以上设置,打开某个APP,fiddler就可以抓到HTTP traffic了。
4. Chrome修改User-Agent和模拟触屏事件
某些页面检测到User-Agent不是指定值,会自动转到APP下载页面。 比如淘宝双12的刮刮卡页面:
http://h5.m.taobao.com/1212/scratchcard/home.html
根据抓包信息,修改User-Agent为: null WindVane/2.6.0 TBANDROID/600000@taobao_android_3.9.5
方法是在Chrome浏览器Ctrl + Shift + J打开控制台,点击右下角的齿轮进行设置。
在settings => override选项卡中,勾选Enable,修改User-Agent。
勾选Emulate touch events,模拟触屏事件。
在一个HUB上,开启网卡混杂模式不用设置代理也能抓到包的。个人习惯PC创建共享WIFI,然后在PC上wireshark抓包~
恩,额外用个hub也是可以的。 以前我也常常用wireshark,不过在解包解码方面,fidder做的挺好的。
我通过共享wifi(模拟为CMCC) 用pypcap写了个抓包软件 希望能在手机端运行畅无线来获取账号 但始终获取不了什么CMCC登录包
下面那个还是没看明白?能否详细说下,我的chrome没有
chrome没有override
找到控制台了吗? 找找右下角的那个齿轮。