ZAP桌面應用
ZAP桌面應用的UI由以下元素組成:
1. 菜單欄 – 提供多種自動化和手動工具的訪問
2. 工具欄 – 提供快速訪問最常用組件的用戶接口
3. 樹結構窗口 – 展示被測網站樹結構和腳本樹
4. 工作站窗口 – 展示請求,反饋以及腳本,並且允許編輯他們
5. 信息窗口 – 展示工具執行的詳細結果
6. 頁腳 – 展示主要自動工具的執行狀態以及警告的匯總

在使用ZAP時,你可以點擊菜單欄中的幫助或者按F1來查看ZAP桌面應用的用戶指引。
更多信息請查看ZAP在線幫助文檔。
重要:
只可以在當你有權使用主動攻擊的方式測試某一應用時才可以使用ZAP。
因為ZAP的運作方式會讓應用如同遭受真實攻擊,應用的功能和數據都有可能因此受損。
如果你擔心使用ZAP會給被測應用帶來風險,你可以切換到安全模式(ZAP的可用功能會大大減少)。
要切換成安全模式,點擊主菜單欄的“模式”下拉菜單選擇安全模式。
運行自動掃描
最簡單使用ZAP的方式就是通過快速開始菜單。
快速開始是在你安裝ZAP時默認添加的一個附加組件。
要執行一次快速開始的自動掃描:
1. 啟動ZAP並且在工作站窗口中點擊快速開始。
2. 點擊自動掃描按鈕。
3. 在URL欄中,填入將被掃描的Web應用的URL。
4. 點擊“攻擊”按鈕。

ZAP會進一步使用爬蟲技術爬取Web應用,並且被動掃描爬到的每一個頁面。
然后ZAP會使用主動掃描器去攻擊所有發現的頁面、功能和參數。
ZAP提供了兩種用來爬取Web應用的爬蟲,用戶可以選擇使用。
傳統的ZAP爬蟲會通過Web應用反饋的HTML查找鏈接。
這種爬蟲速度快,但是對於使用AJAX技術通過JavaScript來生成鏈接的應用而言,顯得不那么有效。
對於AJAX應用,ZAP的AJAX爬蟲會更加有效。這種爬蟲會通過喚起瀏覽器進程來探索Web應用,並且會追蹤動態生成的鏈接。
AJAX爬蟲比傳統爬蟲速度要慢,並且在無界面模式下要求進一步配置才能使用。
ZAP會被動掃描所有以代理形式接收到的請求和反饋。
到這一步為止,ZAP還只做了被動掃描。被動掃描不會以任何形式改動任何反饋信息,所以相對是安全的。
這種掃描是在后台線程中執行的,並不會減緩掃描速度。
被動掃描有助於發現部分問題,並且提供一些基礎的Web安全性信息,幫助進一步確定測試方向。
主動掃描,則會通過一些預設的攻擊來達到發現更多漏洞的目的。
對於被測目標而言,主動掃描會發起真實的、可能造成損失的攻擊。
所以不要對你沒有測試權限的目標進行主動掃描。
解讀測試結果
當ZAP爬取你的Web應用時,他會創建這個應用的頁面結構圖,以及加載這些頁面用到的資源文件。
然后他會記錄每個頁面的請求和反饋,並且就這些請求和反饋中可能的安全性問題發出警告。
在ZAP的站點視圖里,我們可以以樹結構查看掃描到的所有URL。
查看警告和警告詳情。
頁腳的左手邊列出了在測試過程中發現的警告數目,以不同的風險級別歸類。
這些風險類型是:

要查看測試中的警告信息:
1. 在信息窗口中點擊警告標簽
2. 點擊單個警告,將在右側信息窗口展示被測URL以及所發現的漏洞
3. 在工作台窗口,可以查看請求反饋的頭部和反饋體,有漏洞的部分將被高亮顯示。
手動掃描應用
被動掃描和自動攻擊功能對於開始檢查你的Web應用漏洞時一個很好的方法,但是也有很多局限。
比如:
-
任何需要用戶鑒權的頁面都無法被被動掃描,除非你配置了ZAP的鑒權功能,否則ZAP不會處理所需的權限授權。
-
對於被動掃描和自動攻擊所執行的攻擊類型而言,測試人員並無太多控制能力。事實上ZAP還提供了多種掃描和攻擊能力。
爬蟲可以很好的基本探索一個站點,但是只有結合手動探索才能更高效。
舉個例子來說,爬蟲在遇到表單時,只會填入基本的默認信息。但是用戶可以填寫更相關的信息,這樣又可以為ZAP提供更多該站點的信息。
對於需要真實郵件地址來完成注冊的頁面以及類似的頁面尤其如此。
爬蟲可能會填入隨機字串,然后得到報錯。
用戶則可以根據報錯提供合法輸入,這樣當表單正確提交后,又有更多站點的內容可以被訪問並被爬取到。
你應該在ZAP代理下訪問你的整個Web應用。
這樣做的好處是,當你手動訪問站點時,ZAP會被動掃描訪問過程中觸發的請求和反饋,並檢查其中的漏洞,進一步完成站點樹結構,記錄掃描到的所有漏洞警告。
讓ZAP訪問到你的Web應用的所有頁面是很重要的,以求探明所有頁面之間的鏈接。
如果存在隱藏的頁面,這是不安全的,因為這些頁面可能在沒有被注意的情況下就被發布上線。
所以在手動訪問站點時,盡可能做到全面。
通過快速開始菜單,你可以快速的啟動ZAP代理的瀏覽器。
通過這種方式打開的瀏覽器也會無視任何證書警告。

手動訪問站點:
1. 啟動ZAP,點擊工作台窗口中的快速開始按鈕
2. 點擊手動訪問
3. 在URL框體內填入要訪問的URL
4. 選擇要使用的瀏覽器
5. 點擊啟動瀏覽器按鈕
這樣可以以全新的用戶配置(profile)啟動你安裝的瀏覽器。
如果你想帶上已有的用戶配置,比如說已安裝的瀏覽器插件等,那么你只能手動啟動瀏覽器,並且配置其以ZAP為代理,導入和信任ZAP Root CA證書。