在做移動應用(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權限。
- 打開ProxyDroid
- 修改代理為OWASP ZAP代理的IP
- 啟用代理開關
- 賦予root權限
-
確保手機wifi和ZAP代理處於同一局域網內
- 進入手機“設置-無線和網絡-WLAN”
- 選中已連接的wifi選擇“修改網絡”
- 勾選“顯示高級選項”
- 選擇代理方式為“手動”
- 填入ZAP地址和端口

配置好代理后,移動應用上的所有出入信息都將被ZAP截獲,在截獲的同時ZAP將實施“被動掃描”,將他們初掃一遍。
由於許多APP可能有鑒權操作(小程序由於微信的openid存在又要更受限),所以ZAP的兩種爬蟲:默認爬蟲和Ajax爬蟲都不是特別給力。
推薦連上ZAP代理以后,再對被測程序進行手動訪問,所有頁面將被ZAP記錄,待主要頁面訪問完畢后再使用“主動掃描”即可。
