網站滲透測試怎麼做?檢測項目與流程
網站滲透測試是由資安專家在授權範圍內,模擬攻擊者測試網站的前台、後台與 API,驗證登入機制、權限控管、資料輸入與業務邏輯能不能被突破。常見的做法是依 OWASP Top 10 與 OWASP 網站安全測試指南(WSTG)規劃測試項目,交付附佐證的報告,修補後再複測。
這篇寫給即將上線新網站、或被客戶要求提供測試報告的軟體公司與電商團隊,依實際送測順序說明:範圍怎麼切、要測哪些項目、送測前準備什麼、報告與複測怎麼看,以及什麼時候該測。需要委外測試,可以參考我們的 滲透測試服務。
網站滲透測試是什麼?和一般滲透測試有什麼不同?
網站滲透測試是滲透測試的一種,範圍限定在 Web 應用程式與它呼叫的 API。和內網或基礎架構測試相比,它更著重身分驗證、權限控管與業務邏輯,這些問題自動化掃描工具很難判斷,需要人工依角色逐一測試。
舉個電商的例子:會員 A 把網址中的訂單編號改成別人的編號,就看到別人的收件地址;或在結帳時把商品數量改成負數,讓總金額變小。這類漏洞不會出現在弱點掃描報告裡,卻正是網站滲透測試最常找到的問題。黑箱、白箱、灰箱等測試方式的差異,可以參考 滲透測試 的完整說明。
檢測範圍:前台、後台、API、第三方元件
網站滲透測試的範圍通常包括四塊:一般使用者看到的前台、管理人員使用的後台、前後台呼叫的 API,以及網站使用的第三方元件。範圍要在簽約前逐一列清楚,因為報價與時程主要由它決定。
後台最常被漏掉。很多企業只送測前台網址,但後台的管理員帳號一旦被突破,影響遠大於前台。API 也一樣:手機 App 與網頁前端共用同一組 API 時,測試要涵蓋所有端點,而不只是網頁上看得到的功能。
第三方元件分成兩類處理。網站自己載入的套件與框架,可以檢查版本與已知弱點;外部服務如金流、簡訊、第三方登入,只能測試網站與它們串接的方式,不能直接攻擊服務商的系統,送測前要確認對方的測試政策或改用沙盒環境。

依 OWASP Top 10:2025 的網站測試項目
網站滲透測試的項目,多半以 OWASP Top 10:2025 作為檢核清單,再依 WSTG 的測試案例執行。下表挑出網站最常相關的類別,說明在網站上的樣子與測試人員怎麼測:
| OWASP 類別 | 網站上常見的例子 | 測試方式 |
|---|---|---|
| A01 權限控管失效 | 改網址參數就看到別人的訂單、一般會員能進後台頁面 | 用不同角色的帳號,交叉存取彼此的資料與功能 |
| A02 安全設定錯誤 | 預設帳號未關閉、錯誤頁面露出系統資訊 | 檢查設定、安全標頭與管理介面是否對外 |
| A03 軟體供應鏈失效 | 使用有已知弱點的前端套件或外掛 | 比對套件版本與公開弱點資訊 |
| A05 注入 | 搜尋框、表單欄位可被注入 SQL 或指令 | 對每個輸入點送出特製資料,觀察回應 |
| A06 不安全的設計 | 結帳流程可跳過付款步驟、優惠券可重複使用 | 依業務流程設計濫用情境 |
| A07 身分驗證失效 | 沒有登入嘗試次數限制、重設密碼連結可被猜測 | 測試登入、忘記密碼與工作階段管理 |
| A10 例外狀況處理不當 | 異常輸入導致錯誤訊息洩漏資料或流程失效 | 送出非預期格式與邊界值 |
API 則另外參考 OWASP API Security Top 10 2023,排名第一的是「物件層級授權失效」(Broken Object Level Authorization),也就是透過 API 直接存取不屬於自己的資料,原理與網頁上的 A01 相同。
網站滲透測試的執行流程
網站滲透測試的流程和一般滲透測試相同,分成界定範圍與測試規範、資訊蒐集、弱點探測、受控利用、報告,以及修補後複測 6 個步驟。網站測試特別要多花時間的,是第一步的角色與權限整理。
建議送測前先畫一張「角色權限表」:列出訪客、一般會員、付費會員、客服、管理員等角色,各自可以看到與操作哪些功能。測試人員會依這張表逐一驗證越權存取,表格越完整,越能找出 A01 類的漏洞。
送測前檢查清單
送測前準備得越完整,測試越不會影響營運,報告也越貼近實際風險。以下 8 項是網站專案特別需要確認的:
| # | 準備項目 | 已確認 |
|---|---|---|
| 1 | 網址、子網域與 API 清單,並註明排除的項目 | ☐ |
| 2 | 角色權限表,以及每種角色各兩組測試帳號 | ☐ |
| 3 | API 文件(例如 OpenAPI/Swagger)與 App 版本 | ☐ |
| 4 | 測試帳號的驗證碼、多因子驗證是否需要暫時調整 | ☐ |
| 5 | 金流、簡訊、電子郵件等外部服務改用沙盒或測試模式 | ☐ |
| 6 | 測試資料不使用真實客戶個資 | ☐ |
| 7 | 是否將測試來源 IP 加入 WAF 或 CDN 的允許清單 | ☐ |
| 8 | 書面授權、測試時段、緊急聯絡人與停止條件 | ☐ |
第 4、5 項最常被忽略。測試帳號每次登入都要收簡訊驗證碼,測試會一直中斷;金流若沒有切換到測試模式,可能真的產生交易。第 7 項要依目的決定:想測網站本身的漏洞,可暫時放行測試 IP;想同時檢驗 WAF 的防護效果,就不要放行。

網站滲透測試報告與複測
網站滲透測試報告應包含管理摘要、每項發現的嚴重程度、重現步驟與佐證、影響說明、修補建議,以及多個弱點如何串成攻擊鏈。修補完成後的複測,會把每項發現更新為已修復、部分修復或尚存。
讀報告時,先看攻擊情境:一個「中風險」的資訊洩漏,加上一個「中風險」的權限問題,可能串成直接取得客戶資料的路徑。複測報告則是客戶與稽核最想看的文件,它證明問題不只被找到,也已經處理。
上線前、改版後:網站滲透測試的時機
網站滲透測試最好安排在三個時間點:新網站正式上線前、重大改版或新增金流與會員功能後,以及每年定期一次。被核定資通安全責任等級的機關另有法定頻率,一般企業則依客戶要求與網站風險安排。
依民國 115 年 1 月 7 日修正的資通安全責任等級分級辦法,A 級特定非公務機關的全部核心資通系統每年辦理一次滲透測試,B 級與 C 級每二年一次。上線前的測試要預留修補與複測時間,不要排在上線前兩天;若時程真的很趕,至少先完成登入、權限與金流相關功能的測試。

各步驟最常見的錯誤
界定範圍時最常見的錯,是只送測前台而漏掉後台與 API。準備階段常見的錯,是只給一組管理員帳號,測試人員無法驗證不同角色之間的越權問題。
報告階段的問題通常出在修補方式:只修了報告上那一個網址,同樣的寫法在其他頁面還在。修補時應找出同一類問題的共同成因一次處理,這比逐筆修補更有效。網站上線後若還想確認整體資安狀況,可以再安排一次 資安健診。
網站下個月要上線,現在該先做哪一步?
先做兩件事:把前台、後台與 API 的清單和角色權限表整理出來,並和開發團隊確認上線前能預留多少修補時間。有了這兩份資料,就能估出測試範圍與時程,避免最後在上線前一週才發現高風險問題。
想依網站的功能與上線時程安排測試,可以參考我們的 滲透測試服務,或 直接與顧問聊聊貴公司的狀況。
網站滲透測試常見問題
網站滲透測試要多久?
時間主要取決於範圍,包括頁面與功能數量、角色數量、API 端點數,以及是否包含後台與 App。範圍確定後才能估算時程,也要預留修補與複測的時間。送測前把網址清單、角色權限表與 API 文件準備好,估算會更準確。
可以在正式環境測嗎?
可以,但範圍必須嚴格控管。測試環境能降低對營運的影響,前提是設定與資料結構要和正式環境足夠相似,結果才有參考價值;在正式環境測試時,應避開尖峰時段、約定停止條件,並避免使用真實客戶資料。
網站多久要測一次?
一般建議每年定期一次。新網站上線前、重大改版或新增金流與會員功能後,也要加測。被核定資通安全責任等級的特定非公務機關,A 級核心系統每年一次,B、C 級每二年一次;客戶或產業標準另有要求時,依其要求辦理。
參考資料
- OWASP Top 10:2025 – 網站應用程式十大風險類別。OWASP
- OWASP Web Security Testing Guide – 網站安全測試案例,穩定版 v4.2。OWASP
- OWASP API Security Top 10 2023 – API 十大風險。OWASP · 2023 年
- 資通安全責任等級分級辦法 – 附表規定各等級滲透測試頻率。全國法規資料庫 · 民國 115 年 1 月 7 日修正
