🔥 交流讨论:欢迎加入我们一起学习!
🔥 资源分享:耗时200+小时精选的「软件测试」资料包
🔥 教程推荐:火遍全网的《软件测试》教程
📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
前阵子有学员在尝试使用appscan对公司app做被动式扫描时出现一些问题,发现无法即使导入了appscan的证书也无法抓到https的包。推荐他使用burpsuite后,成功抓到了https的包并且也完成了他的扫描工作。
首先带大家了解什么叫被动扫描。被动扫描和主动扫描是一对,平时你输入一个url让工具进行爬取或扫描的这种扫描方式,叫做主动扫描,所有待扫描的链接全是工具主动爬取所得,那么自然主动扫描的结果其实有一部分取决于工具爬取的能力;与主动扫描不同的是,被动扫描的必要条件是一个代理,可供使用者将客户端的所有流量代理到工具上,被动扫描的结果取决于使用者在使用客户端时产生的流量,也就是发起过的请求,而不取决于工具主动爬取的能力。市面上商用的主动扫描的工具不少,商用的被动扫描器并没有多少,最出名就是burpsuite和appscan。
了解完被动扫描之后,其实只需要做好一点就行,那就是把所有的流量代理到burpsuite即可,那么下一个问题是,如何能够让app所有流量代理过去。
首先,允许设备所在网络能够把流量代理到burpsuite上,那么就要先配置好burpsuite的监听地址。如果情况特殊,无法找到局域网ip,那可以选择all interfaces也可以(主要原因可能是在burpsuite启动后才分配到网卡ip,所以导致代码读取不到ip,不过完全不影响操作)。
配置好burpsuite后,把拦截器关闭,观察HTTP History。
接下来说下android上如何设置,尽量使用root过的真机或是模拟器来进行安全测试。第一步当然是保证网络通畅,将无线网络代理设置成burpsuite监听的地址(我这里是192.168.1.3:8080),
并通过浏览器访问到页面(http://ip:port
或者http://burp,后者能生效的原因是因为代理过程中可以劫持所有的dns所以官方绑定了这么一个域名)点击右上角下载证书,修改文件后缀成cer,设置中一些安全选项或其他选项中进行安装证书,接下来就可以抓爆了。
接下来再介绍下如何抓到iOS的包。这里以手头上在用的iOS13.3为例。和Android一样,需要和burpsuite监听地址在同一个局域网内,并且保证网络通畅,设置wifi的代理为burpsuite的监听地址。使用safari打开burpsuite的页面下载证书并点击安装,
点击允许后,回到设置最上面可以看到描述文件,一路点击安装确认即可:
证书在设置-通用-描述文件与设备管理中可以查看,点击进去选择完全信任。
接下来就可以试下访问百度,再看burpsuite抓到的是否有iphoneUA的https百度包:
到这就成功的在burpsuite上抓到了设备上所有app的大部分的包,这里不谈论app双向加密,因为会涉及到一部分逆向和脱壳。
这之后,被动扫描的结果就可以看到了。所有可以扫描的漏洞类型都在scanner-issue definition可以看到,不过还是友情提示下,扫描器并不能解决所有问题,世界上暂时没有一款扫描器能够扫描出业务逻辑漏洞,所以尽量还是手动抓包进行渗透测试。
最后我邀请你进入我们的【软件测试学习交流群:785128166】, 大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播课,收获更多测试技巧,我们一起进阶Python自动化测试/测试开发,走向高薪之路
作为一个软件测试的过来人,我想尽自己最大的努力,帮助每一个伙伴都能顺利找到工作。所以我整理了下面这份资源,现在免费分享给大家,有需要的小伙伴可以关注【公众号:程序员二黑】自提!