Web滲透測試實務

訓練目標:

建立完整的 Web 滲透測試流程與攻擊思維,讓學員能在授權範圍內進行系統化偵查、資產盤點與風險判定;熟練漏洞驗證與利用方法並能產出可重現的測試步驟

訓練技能:

了解滲透流程,並熟練使用 Burp Suite與常用滲透掃描工具;掌握手動與自動檢測流程,能辨識並驗證XSS、SQLi、檔案上傳、SSRF、認證等常見漏洞;具備基本撰寫測試報告、分類風險等級的判斷。

課程規劃:

分為四大模組:概論(攻擊模型、滲透流程)、工具操作(常用滲透工具實作)、漏洞挖掘實作(利用BurpSuite尋找常見漏洞)、實戰靶機演練(由淺入深的靶機挑戰);

就業展望:

可應徵資安工程師、弱點掃描工程師、滲透測試工程師,具實戰經驗後可往紅隊、資深滲透測試發展。


Day1 web滲透概論


1. 核心理論模型 (Cyber Security Frameworks)

在資安領域,我們使用標準化的模型來分析攻擊行為與系統弱點:

Cyber Kill Chain (網路攻擊鏈)

由 Lockheed Martin 提出,將攻擊行為分解為七個階段。理解此模型有助於我們在攻擊的不同階段建立防禦點。

  • 重點概念: 偵查、武器化、傳遞、漏洞利用、安裝、指揮控制 (C2)、行動。
  • 深入閱讀: Cyber Kill Chain 詳解

Vulnerability Assessment (漏洞評估, VA)

在執行滲透測試前,必須先了解何謂漏洞評估。這是一個系統化地發現、確認並區分系統弱點優先級的過程。


2. 滲透測試實作:情報收集 (Information Gathering)

情報收集是滲透測試中最關鍵的一環,決定了後續攻擊的成功率。

A. 被動偵查 (Passive Reconnaissance)

定義: 在不直接接觸目標伺服器的情況下獲取資訊,隱蔽性最高。

  1. Google Dorks (Google 駭客語法): 利用搜尋引擎強大的索引能力,挖掘目標洩漏的敏感資料或後台路徑。
  2. 網路空間搜尋引擎: 使用如 Shodan 或 Censys 搜尋全球連網設備的開放埠口與服務版本。

B. 主動偵查 (Active Reconnaissance)

定義: 直接發送封包至目標系統進行掃描,雖然資訊準確,但容易被防火牆或 IDS (入侵偵測系統) 記錄。

  1. Nmap:網路掃描之王 用於發現主機、掃描 Port 口、辨識作業系統與服務版本。
  2. ffuf:高效 Web 模糊測試工具 用於快速爆破隱藏目錄、檔案名稱或 API 參數。

Day2 滲透工具應用

第一天我們學會了如何收集情報,Day 2 的重點將放在「驗證漏洞」。我們將學習如何利用自動化工具提升效率,並深入探討 Web 安全中最致命的威脅:SQL 注入與密碼安全性。


1. 滲透測試與自動化掃描 (Automated Scanning)

在進入手動分析前,熟練使用自動化驗證工具能幫助我們快速鎖定目標的「低掛果實」。

滲透測試核心流程

理解滲透測試(Penetration Testing)的標準化作業程序,確保測試過程合法且專業。

Nuclei:基於模板的漏洞掃描

Nuclei 是現代資安圈極受歡迎的工具,能透過社群維護的 YAML 模板進行快速、可擴展的掃描。


2. 深度剖析:SQL Injection (SQLi) 攻擊與防護

SQL 注入是 Web 應用中最具破壞性的漏洞之一,能導致資料庫完全淪陷。

理論基礎

  • SQLi 原理: 攻擊者如何透過輸入惡意 SQL 指令來改變原始查詢邏輯。
  • 深入閱讀: SQL Injection 基本原理

實作演練

  1. Login Bypass (登入繞過): 練習如何利用邏輯漏洞,在不具備密碼的情況下進入管理後台。
  2. SQLMap:自動化 SQL 注入神器

3. 身份驗證與密碼安全性 (Identity & Password Security)

即使系統沒有程式碼漏洞,脆弱的密碼策略依然是致命傷。

密碼學理論

密碼破解實作

  1. Hashcat:世界最快的密碼恢復工具 學習如何利用 GPU 加速來破解不同類型的密碼雜湊。
  2. Medusa & Hydra:在線爆破工具 針對 SSH、FTP、HTTP 登入表單進行主動式密碼暴力破解。


Day3 漏洞挖掘方法

今天我們將放下自動化工具,拿起滲透測試員的「瑞士刀」—— Burp Suite。我們將學習如何攔截、分析並修改瀏覽器與伺服器之間的通訊,並深入探討伺服器端(Server-side)與商業邏輯(Logic)的致命漏洞。


1. Web 安全標準:OWASP Top 10

在開始挖掘漏洞前,必須先了解目前最威脅 Web 安全的十大風險。這是所有滲透測試報告的參考基準。


2. 工具王者:Burp Suite 實作

Burp Suite 是手動測試的必備工具,透過代理(Proxy)模式,我們可以掌控所有 HTTP 封包。

  • 核心功能練習:
    1. Proxy (代理): 觀察 HTTP 請求(Request)與回應(Response)的結構。
    2. Repeater (重發器): 手動修改參數並多次重送請求,觀察不同輸入的結果。
    3. Interceptor (攔截器): 在封包送出前即時攔截並竄改內容。
  • 進階聯防: Burp Suite 與 SQLMap 的協作技巧

3. 伺服器端漏洞 (Server-Side Vulnerabilities)

這類漏洞直接發生在後端伺服器,通常具有極高的破壞力。

OS Command Injection (指令注入)

當網頁程式將使用者輸入直接當作系統指令執行時,攻擊者可藉此控制伺服器作業系統。

File Upload (檔案上傳漏洞)

透過上傳惡意的 Web Shell (如 PHP 腳本),攻擊者可獲取伺服器的遠端程式執行權限 (RCE)。

Directory Traversal (目錄穿越)

利用 ../ 語法讀取伺服器上不應公開的敏感檔案(如 /etc/passwd)。


4. 邏輯與權限漏洞 (Logic & Access Control)

這類漏洞不一定有明顯的程式報錯,而是程式邏輯設計上的缺陷。

HTTP Host Header Attack

竄改 Host 標頭來繞過認證。

存取控制與 2FA 繞過

商業邏輯漏洞 (Business Logic)

利用程式對業務流程處理的疏忽(如:修改結帳金額、跳過付費步驟)。


Day4 實戰演練

今天我們將跳脫單一漏洞的思維,進入 ATT&CK 框架觀測攻擊全貌。我們會學習如何使用 Burp Suite 執行自動化複雜攻擊,並深入探討客戶端(Client-side)與其他進階漏洞。最後,我們將透過實際靶場與專業報告範例,完成滲透測試的最後一塊拼圖。


1. 攻擊者戰術框架:MITRE ATT&CK

了解漏洞後,我們需要一個地圖來標記攻擊進程。ATT&CK 框架幫助我們從「點」的漏洞轉向「面」的戰術分析。


2. Burp Suite 高階自動化實戰

利用 Burp Suite 的擴充功能與自定義配置,執行常規掃描無法發現的漏洞。

JWT 安全與 Bypass

JSON Web Token 的不當配置(如未驗證簽名)會導致身份偽造。

資訊洩漏

自動修改每次請求內容 + 配置不安全

商業邏輯

自動化執行多個請求 + 利用業務規則套利

Race Condition (條件競速)

利用系統處理併發請求的時間差,達成「超越限制」的行為(如重複領取優惠券)。


3. 客戶端漏洞

Client-Side 攻擊 (XSS & CSRF)

補充:SSRF (伺服器端漏洞)

利用 Web 應用作為跳板,攻擊內部私有網路。


4. 綜合演練

最後,透過 TryHackMe 靶場進行實戰。


5.滲透測試報告範例

技術再強,若無法寫出專業報告也無法在業界立足。參考全球優秀的滲透報告,學習如何描述風險、影響與修復建議。


其他補充說明

以下是滲透測試中較高階且具破壞力的漏洞類型: