#資安工具
![[軟體操作手冊/ZAP_Photo/image.png|312x121]]
### 壹、簡介
### 貳、安裝流程
### 參、事前配置
### 肆、 掃描實作
### 伍、 常見問題
^941166
---
#### <center> **壹、簡介** </center>
Zed Attack Proxy (ZAP) 是一款免費的開源滲透測試工具,由軟體安全專案 (SSP) 維護。ZAP 專為測試 Web 應用程式而設計,既靈活又可擴展。
ZAP 的核心是所謂的「中間層代理」。它位於測試人員的瀏覽器和 Web 應用程式之間,因此可以攔截和檢查瀏覽器和 Web 應用程式之間發送的訊息,根據需要修改內容,然後將這些資料包轉發到目的地。
---
#### <center> **貳、 安裝流程** </center>
##### 1. 依賴套件(需先安裝):
> 需先安裝Java,依賴套件如下:
> [JRE latest version](https://www.java.com/zh-TW/download/manual.jsp) > 依照作業系統安裝
> [JDK latest version](https://www.oracle.com/tw/java/technologies/downloads/) > 依照作業系統安裝
##### 2. ZAP本體
> [ZAP latest version](https://www.zaproxy.org/download/) > 依照作業系統選取 Installer [[#^941166 | (已知問題)]]
※以下範例會以Windows 11作業系統進行操作。
---
#### <center>**參、事前配置**</center>
##### 1.第一次開啟
這個畫面主要是問要不要關閉時也維持該session的狀態,這邊先選擇取消,(紅框的打勾之後Start即可。
<img src="軟體操作手冊/ZAP_Photo/image-1.png" style="width:400; text-align:LiArrowLeftToLine:" >
---
##### 2.憑證的設定
依照圖片說明進行,點選工具>選項
![[軟體操作手冊/ZAP_Photo/image-2.png]]
在搜尋框輸入”Server Certificates”,然後把憑證儲存起來,稍後會匯入。
<img src="image-3.png" style="width:700; text-align:LiArrowLeftToLine:">
> [!Todo] 提示
> 匯入憑證的設定:
> [[#^19c4ea | Chrome步驟]]
> [[#^caf32c | FireFox步驟]]
>
---
##### 3. 匯入憑證+代理伺服器設定-以Chrome為例
^19c4ea
> 依序點選設定>隱私權和安全性>安全性,再點選管理憑證。
> <img src="軟體操作手冊/ZAP_Photo/image-4.png" style="width:600; text-align:LiArrowLeftToLine:">
> <img src="軟體操作手冊/ZAP_Photo/image-5.png" style="width:600; text-align:LiArrowLeftToLine:">
接著匯入剛剛的憑證,
<img src="軟體操作手冊/ZAP_Photo/image-6.png" style="width:600; text-align:LiArrowLeftToLine:">
<img src="軟體操作手冊/ZAP_Photo/image-7.png" style="width:600; text-align:LiArrowLeftToLine:">
若跳出安全性警告,點選”是(Y)”。
> <img src="軟體操作手冊/ZAP_Photo/image-8.png" style="width:600; text-align:LiArrowLeftToLine:">
接著設定代理伺服器:
設定 > 網路和網際網路>Proxy >手動設定Proxy
<img src="軟體操作手冊/ZAP_Photo/image-9.png" style="width:600; text-align:LiArrowLeftToLine:">
接著依序填入
Proxy IP 位址: `http://localhost`
Port:8080 (ZAP預設,[可從這裡查看/修改](#port這邊))
不要為指定位址使用Proxy伺服器……:localhost;127.0.0.1
然後儲存就可以ㄌ
> <img src="軟體操作手冊/ZAP_Photo/image-10.png" style="width:600; text-align:LiArrowLeftToLine:">
##### 4. 匯入憑證+代理伺服器設定-以Firefox為例
^caf32c
- 進入設定畫面,在搜尋框輸入”憑證”,點選檢視憑證。
> <img src="軟體操作手冊/ZAP_Photo/image-11.png" style="width:800; text-align:LiArrowLeftToLine:">
- 匯入過程中,憑證的信任要記得打勾,
- 完成後可以看到ZAP的憑證已經掛上firefox。
> <img src="軟體操作手冊/ZAP_Photo/image-12.png" style="width:400; text-align:LiArrowLeftToLine:"><img src="軟體操作手冊/ZAP_Photo/image-13.png" style="width:400; text-align:LiArrowLeftToLine:">
- 接著設定代理伺服器,設定基本與Chrome的設定模式相同, 一樣在Firefox的設定搜尋框中,輸入Proxy,依序輸入下列:
> - [ ] Proxy IP 位址: http://localhost
> - [ ] Port:8080 (ZAP預設,[可從這裡查看/修改](#port這邊))
> - [ ] 直接連線:localhost,127.0.0.1 > 是逗號**不是分號**
- 設定好儲存就OKㄌ。
---
#### <center>肆、掃描實作</center>
##### 1. 網頁掃描-以FireFox為例:
- 先想一下,我們這次要測試的目標是一隻特定程式?還是整個系統?
範例會以某個系統進行,假定只掃登入程式(indexLogin)
第一次進來一定會看到這顆戴著防毒面具的人頭
看起來很恐怖,不理他,點continue to your target就會不見了
> ![[軟體操作手冊/ZAP_Photo/image-14.png| 就是他]]
- 以一般產製報告來說,不需進行攻擊也可進行報告製作,說明如下:
進到要掃描的網站,回到ZAP會發現多了一個站點,還有一些警示。
> ![[軟體操作手冊/ZAP_Photo/image-15.png| ZAP的首頁]]
^5e3fb4
- 在不進行攻擊的前提下,到這邊就可以[[#^aaa73c | 產製報告]]了。
---
- **注意!! 以下步驟為實際攻擊行為,未經許可請勿操作於外部網站!!**
因為這次是針對特定程式的掃描,要記得選定站點再右鍵:
> ![[軟體操作手冊/ZAP_Photo/image-16.png]]
- 接著直奔掃描規則(Policy)設定:
Default Alert Threshold分為low、Medium、High等級
這是漏洞檢測的門檻值,設定越高顯示的就越少,反之越低越多。
Default Attack Strength是攻擊強度,低 中 高 瘋狂4種等級。
確定後就可以開始掃瞄了。
> ![[軟體操作手冊/ZAP_Photo/image-17.png]]
- 掃描後報告產製:
從上方功能表,點選Report > Generate Report,會跳出這個視窗:
> ![[軟體操作手冊/ZAP_Photo/image-18.png]]
^aaa73c
- 如果要針對報表產製的樣式做更換,可以點選Template進行設定。
通常個人會選的是Traditional PDF Report,較美觀。產製樣式如下:
> ![[軟體操作手冊/ZAP_Photo/image-19.png| 格式選擇]]
> ![[軟體操作手冊/ZAP_Photo/image-20.png| 報表呈現結果]]
---
##### <center>伍、常見問題:</center>
- ##### 埠號
預設的port是8080,想更換的話在Network>Local Server/Proxies
> ![[軟體操作手冊/ZAP_Photo/image-21.png]]
- ##### 已知安裝問題:
**※如果出現了這個畫面**
> ![[軟體操作手冊/ZAP_Photo/image-22.png]]
> [!WARNING] 解決方式
> 可能是環境變數沒設定好,或是JRE版本太低(最低要求JRE version11 )
環境變數的設定從這邊:
左下角windows按鈕 > 右鍵 > 系統 > 進階系統設定 > 點選環境變數:
> ![[軟體操作手冊/ZAP_Photo/image-23.png]]
> ![[軟體操作手冊/ZAP_Photo/image-24.png]]
- 進入環境變數,直接看到下方系統變數的Path,
點選新增,然後輸入電腦安裝的java路徑,儲存後應可進行安裝
(必要時可能需重開機)
> ![[軟體操作手冊/ZAP_Photo/image-25.png]]
- ##### MAC安裝可能會遇到的問題:
ZAP 目前不是 Apple 認證的開發者。在 macOS 上,您將看到類似以下的訊息:
“OWASP ZAP.app”無法打開,因為無法驗證開發者。
要規避此警告,您需要轉到對話框底部的**系統偏好設定**>**安全性和隱私。**您將看到一條訊息,指出「OWASP ZAP」已被封鎖。在它旁邊,如果您信任下載的安裝程序,則可以按一下「**無論如何開啟」**。
> <img src="軟體操作手冊/ZAP_Photo/image-26.png" alt="center" style="width:400; text-align:LiArrowLeftToLine:">
> [!WARNING] 解決方式 (尚未驗證是否可行)
> 如果使用Ajax Spider掃描,可能會產生這個錯誤訊息,解釋如下:
> 1. OWASP ZAP在掃描時會模擬瀏覽器執行,在掃描前的設定**Use ajax spider**可以設定標頭,請使用已安裝的瀏覽器。
> 2. 如果瀏覽器太新也會不支援,因為他需要對應的webdriver和Selenium去啟動瀏覽器,但瀏覽器的更新很頻繁,所以你可以上網找更新的webdrivers,例如[Chrome最新的ChromeDriver](https://sites.google.com/chromium.org/driver/),放到`%USERPROFILE%\OWASP ZAP\webdriver\windows\64\`裡把原本的webdriver取代掉,重開OWASP ZAP再試一次,又或者是想辦法降低本機瀏覽器的版本