如何解决APP抓包疑难杂症
本篇文章给大家分享的是有关如何解决APP抓包疑难杂症,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
一:概述
测试APP的时候我们需要抓取 http(s) 协议的数据包,如果APP没有任何防护的话我们直接在手机的 wifi 上设置代理为抓包工具的ip和端口,就可以实现手机上抓包,https的证书安装在手机上和电脑上是一样的。
昨天放假没事做,看到一个活动,测试APP,完后按照往常配置好代理,打开APP的时候,一句 "我X" 奔腾而过。画面如下:
它尽然检测到我挂了代理,猜测了一下可能是客户端远程支持检测网络有没有挂代理的系统调用,或者是https的双向认证。
二:解决
尝试一:通过给手机开启VPN,在VPN服务器抓包。尝试结果以失败告终。
尝试二:既然系统上不能做文章,那就在进程上做个文章吧。
手机上搞不太方便,于是想到给电脑上装个模拟器。模拟器选型的话就照着简单,稳定去就得了,网上好多人推荐使用某神发现这货还得依赖virtual box,而且巨卡,时不时还无响应,但是好多人推荐,我也不知道好在那里,可能是我姿势不对吧,推荐一下我亲测的网易mumu:
完后启动把要测试的APP安装到模拟器。模拟器这边的工作就做完了。
接下来本场的主角来了,如下:
简单描述一下这个神器,我们日常使用的软件有的开发者开发了软件设置代理的功能,比如浏览器,postman之类的是可以直接在软件里设置代理的非常方便,但是有的软件就没有这个功能,我们要给这种软件挂代理的话就得用这个货了。
主界面如下:
上面是4个菜单,完后右面是保存的配置,首先点第一个把我们的代理服务器配置上(也就是抓包工具监听的地址):
我用的是burp所以设置如上图。接下来设置规则,界面如下:
简答介绍一下,这个配置有点像路由表的那种感觉,先给要配置的规则起一个名字,完后 Applications 里是你要为那个软件设置代理,点下面的 + 号选择软件,这个时候他会提示你要不要把选择软件关联的软件也加入,我一般选择加入,省事。完后下面两个是目标地址和目标端口,默认Any就行。最后一步是动作,就是怎么处理数据包,选刚才配置的代理服务器。
附一张我配置完的所有规则,供参考:
第一条:因为burp是java开发的,所以java程序的包直连(也就是burp抓到的包肯定要直接发送给目标服务器,代理链那种后续再说先不考虑)
第二条:这个是自带的,意思是本地的直连,先不管
第三条: Application的话选择我们的模拟器,目标ip和端口都是Any,Action是代理到我们刚才设置的抓包工具上
到现在全部结束,在模拟器启动APP,完后burp里就可以看到数据包了。
以上就是如何解决APP抓包疑难杂症,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。