## OWASP ZAP操作手冊
- 是否儲存記錄

首次啟動ZAP會被詢問是否要保持ZAP會話,zap會話會默認預設的名稱與地址存到DB,
1. 儲存並以current timestamp為名稱
2. 儲存並自設名稱
3. 不保存任何紀錄
---
- UI功能

1. 菜單欄
-文件:新建/打開舊會話等
-編輯:可選擇
>安全模式 - 禁止進行潛在的危險操作、
受保護模式 - 只能對範圍內的URL進行(可能)危險的操作、
標準模式 - 可執行任何操作、
攻擊模式 - 發現範圍到的新link後,對其進行主動掃描、
-查找:開啟或關閉下方功能Tab(歷史,搜尋...等)
-分析:自訂掃描策略
-報告:掃描後產出報告
-工具:選項(Options)可產出動態SSL證書,設定Local Proxy等
-Import
-幫助
2. 工具欄 - 提供快速訪問最常用組件的接口
3. 樹狀結構窗口 - 顯示被測網站樹狀結構圖
4. 工作站窗口 - 顯示請求、反饋以及腳本,並且允許編輯他們
5. 訊息窗口 - 顯示掃描執行後的詳細結果
6. Footer - 顯示主要自動工具的執行狀況以及警告的匯總
---
- 設定ZAP為代理主機(Proxy)
設定ZAP為Proxy目的是使用ZAP去記錄網路封包以及更改請求(Requset)參數來進行測試,先在FireFox瀏覽器設定使用ZAP為Proxy,網頁送出的Request便會經過ZAP再回到網頁程式
1. 到ZAP取得憑證(工具->選項>Dynamic SSL Certificates),按Generate產生SSL憑證並儲存

2. 選項 -> 憑證

3. 憑證管理員

4. 匯入憑證

5. 勾選信任

6. 網路設定 -> 連線設定

7. 連線設定 -> 手動設定Proxy

8. 返回FireFox瀏覽器,ZAP介面上會自動顯示瀏覽過的網站以及請求封包的詳細資料

---
- 自動掃描
1. 輸入要測試的Url,ZAP Spider會將整個網站內的分頁進行掃瞄

2. 選擇要使用的ajax spider
> User Traditional Spider: 抓取WEB中的HTML資源
> Use Ajax Spider: 適用較多Ajax請求的網路環境
> Ajax Spider: 可使用Chrome/Firefox Headless,是指無介面瀏覽器,只運行在背景裡,適合在網頁上執行測試,如從網頁抓取資訊,檢查瀏覽器訪問某些資源的狀態
3. 點擊攻擊
4. 訊息窗口顯示以不同風險級別歸類的警告數目

5. 由紅至藍 -> 風險由高至低,點擊標籤可查詢詳細資料

---
- 手動掃描
被動掃描與自動攻擊能力對初步檢查網頁應用漏洞時是個好的方法,但也有很多侷限
* 例如:
> 1.任何需要用戶權限的頁面都無法被被掃,除非已配置ZAP的權限功能,否則ZAP不會處理所需的權限授權。
> 2.測試人員對於被掃和自動攻擊所執行的攻擊類型並無太多控制能力。
> 3.爬蟲遇到表單時只會填入基本的預設信息,但若是手動掃瞄以填寫更相關的訊息,得到更多關於該站點的訊息。
1. 輸入想要掃描的Url, 選擇要啟動的瀏覽器

2. 手動掃瞄介面UI

> 1. Scope : 將目前頁面加入掃描範圍中
> 2. Break : 設定成On之後可以暫停Request並查看內容
> 3. Show/Enable : 可查看隱藏的Input等html tag
> 4. Page Alerts : 查看此頁面的掃瞄結果
> 5. Comment: 可看建議
> 6. Sites Tree: 可瀏覽訪問記錄的Http Message
> 7. Spider: 執行爬蟲掃描

> 8. Attack Mode: 開啟攻擊模式
> 9. Site Alerts: 觀看整個網頁與其他連結的掃描結果
3. 使用DVWA測試Owasp Zap修改Http Request

此為下拉選單,不可輸入Sql Injection語法

查詢選擇2之後的Http Message可發現 id=2&Submit=Submit

將此修改為 id=2 or 2=2&Submit=Submit,並選擇Replay in Browser

測試完成