安全性测试:OWASP ZAP 2.8 使用指南(四):ZAP扫描移动应用安全

时间:2024-02-17 11:37:29

在做移动应用(APP,小程序等)测试时,需要关注应用安全性。

ZAP是可以用来进行手机移动应用渗透性测试扫描的。

正因为ZAP是采用“中间代理”的形式,截取并扫描所有客户端与服务器的交互请求,作为客户端之一种的移动端应用当然也在其范围之内。

更多ZAP代理原理和设置请翻阅安全性测试:OWASP ZAP 2.8 使用指南(三):ZAP代理设置

 

需求

  • 安装于PC端的OWASP ZAP客户端

  • 手机模拟器/真机

 

安卓设置

我们将移动APP的形式分为两种情况:

被测APP不使用HTTP协议,安卓机器已被root,请使用ProxyDoid

被测APP使用HTTP协议,或者是手机网站,请使用默认安卓代理

 

使用ProxyDroid

ProxyDroid是安卓的一个免费开源软件。

ProxyDroid包含了一系列代理工具和防火墙等,可以轻松实现对于APP交互信息的导向。

使用ProxyDroid需要取得手机root权限。

  1. 打开ProxyDroid
  2. 修改代理为OWASP ZAP代理的IP
  3. 启用代理开关
  4. 赋予root权限

 

使用默认安卓代理

  1. 确保手机wifi和ZAP代理处于同一局域网内

  2. 进入手机“设置-无线和网络-WLAN”
  3. 选中已连接的wifi选择“修改网络”
  4. 勾选“显示高级选项”
  5. 选择代理方式为“手动”
  6. 填入ZAP地址和端口

 

配置好代理后,移动应用上的所有出入信息都将被ZAP截获,在截获的同时ZAP将实施“被动扫描”,将他们初扫一遍。

由于许多APP可能有鉴权操作(小程序由于微信的openid存在又要更受限),所以ZAP的两种爬虫:默认爬虫和Ajax爬虫都不是特别给力。

推荐连上ZAP代理以后,再对被测程序进行手动访问,所有页面将被ZAP记录,待主要页面访问完毕后再使用“主动扫描”即可。