KeyFrame

Pen Testing for Beginners | Complete Step-by-Step Tutorial (2026)

Tech-Know-G·5月24日週日·53 min英文

三句話摘要

以 Burp Suite 對 OWASP Juice Shop 進行 Web 滲透測試,實際示範 IDOR 漏洞的發現、驗證與報告撰寫流程。 --- IDOR 漏洞的根本原因是伺服器端缺乏逐次授權驗證,只要能修改 URL 中的物件 ID 就能橫向存取他人資料,而 Burp Suite 的 Repeater 與 Intruder 是快速發現並批量驗證此類漏洞的最直接手段。 滲透測試的目的是找漏洞、給修補,而非破壞系統。 真實場景中,測試者在取得授權後模擬攻擊者行為,目標是在上線前找出弱點並通知開發團隊修補,而非刻意破壞應用程式。

重點整理

重點
  • 1

    滲透測試的目的是找漏洞、給修補,而非破壞系統。 真實場景中,測試者在取得授權後模擬攻擊者行為,目標是在上線前找出弱點並通知開發團隊修補,而非刻意破壞應用程式。

  • 2

    測試前必須徹底理解應用程式業務邏輯與角色權限。 講師強調在動手測試前,要與開發團隊開會,釐清使用者角色(Customer、Support、Admin)、敏感資料範圍、關鍵工作流程及測試範圍(Scope),再製作角色矩陣(Role Matrix)才能有系統地執行授權測試。

  • 3

    Burp Suite 作為代理(Proxy)可完整攔截與重放 HTTP 流量。 透過 HTTP History 掌握所有請求、使用 Repeater 手動重放與修改參數、再以 Intruder 批次自動化枚舉,是發現 IDOR 等存取控制漏洞的標準操作流程。

  • 4

    IDOR 漏洞核心在於伺服器端缺少授權驗證。 應用程式直接將內部物件識別碼(Basket ID)暴露於 API 路徑,且未在伺服器端確認請求者是否有權存取該資源,導致攻擊者只需修改 ID 數字即可橫向存取其他用戶資料。

  • 5

    --

實用技巧與重點

乾貨
  • 工具與環境
  • Burp Suite Community Edition(可從 portswigger.net 下載)
  • OWASP Juice Shop(靶機,部署於 AWS EC2,使用 Docker Image)
  • Burp Suite 內建 Chromium Browser(已整合 Proxy)
  • Mobile Xterm(SSH 連線至 AWS EC2 伺服器)
  • HTTP 方法
  • GET:讀取資料
  • POST:建立新資料(如註冊、新增購物項目)
  • PUT:完整更新資料
  • PATCH:部分更新資料
  • DELETE:刪除資料
  • HTTP 狀態碼
  • 200 OK:請求成功
  • 201 Created:資源成功建立
  • 304 Not Modified:快取未變更
  • 401 Unauthorized:未通過認證
  • 403 Forbidden:已認證但無授權
  • 404 Not Found:資源不存在
  • 500 Internal Server Error:伺服器端錯誤
  • 發現的漏洞(實際示範)
  • 匿名用戶可提交任意評分(超過上限 5 分,輸入 50 仍被接受)→ Business Logic Vulnerability
  • Repeater 可重放相同回饋請求,無限次建立重複評論 → Replay Attack
  • 修改 POST 請求中的 `author` 欄位可冒充其他用戶 → Impersonation(嚴重度:High)
  • IDOR:GET `/rest/basket/{id}` 端點僅驗證 JWT Token 存在,未驗證 Token 是否對應該 Basket ID → 以同一 Token 存取 Basket 1–10 全部回傳 200 OK
  • IDOR 實際操作步驟
  • 登入後加入商品至購物籃,攔截 GET `/rest/basket/7` 請求
  • 送至 Repeater,確認回傳自己帳號(User ID: 25)的購物籃資料
  • 將路徑中的 `7` 改為 `2`,送出後得到 User ID: 2 的購物籃資料(Raspberry Juice)
  • 送至 Intruder,設定 Sniper Attack,Payload 為數字 1–10,Step 1
  • 啟動攻擊,Basket ID 1–10 全部回傳 200 OK,成功列舉所有用戶購物籃
  • 滲透測試報告必要欄位
  • Title(漏洞名稱)
  • Severity(嚴重度,此案例為 High)
  • Technical Description(技術說明)
  • Impact(影響)
  • Proof of Concept(截圖 + 重現步驟)
  • Recommendation(修補建議:實作伺服器端每次物件存取的授權驗證)
  • 修補建議
  • 伺服器端針對每個物件存取請求實作授權驗證(Server-side Authorization Validation)
  • 滲透測試前置步驟
  • 與應用程式團隊開會,理解業務邏輯與使用者角色
  • 定義測試範圍(In-scope URL、API;Out-of-scope:生產資料庫、第三方頁面)
  • 取得各角色測試帳號
  • 建立角色矩陣(Role Matrix):列出每個角色對每個功能的存取權限
  • --

結論

結論

IDOR 漏洞的根本原因是伺服器端缺乏逐次授權驗證,只要能修改 URL 中的物件 ID 就能橫向存取他人資料,而 Burp Suite 的 Repeater 與 Intruder 是快速發現並批量驗證此類漏洞的最直接手段。

完整解析

詳細

Web 應用程式滲透測試(Pentesting)的目標是在應用程式正式上線前,模擬真實攻擊者的行為,找出安全弱點並提交修補建議,而非破壞系統。講師以客戶服務模型(Client-Server Model)作為基礎概念切入:瀏覽器(Chrome)是客戶端,部署在 AWS EC2 上的 OWASP Juice Shop 是伺服器端,所有互動都透過 HTTP 請求與回應完成。Burp Suite 作為中間人代理(Proxy),能完整攔截並記錄這些流量,是 Web 滲透測試的核心工具。

在正式測試前,講師強調「了解應用程式」是不可省略的前置作業。測試者需要與開發團隊開會,確認應用程式的業務邏輯、使用者角色(Customer、Support、Admin)、敏感資料的所在、測試環境範圍(UAT 而非生產環境)。接著建立角色矩陣,逐功能標注各角色是否有權存取,例如 Admin 可刪除訂單,而 Customer 和 Support 不行。這個矩陣直接成為後續授權測試的測試案例清單,大幅提高測試效率與覆蓋率。

實際操作部分,講師以 OWASP Juice Shop 示範了數個漏洞。首先在匿名狀態下提交評論,透過 Burp Suite Repeater 發現可無限重放請求(Replay Attack),並可修改請求中的 `author` 欄位冒充他人(Impersonation);評分欄位接受超出正常範圍的數值(輸入 50 依然被接受),屬於 Business Logic Vulnerability。接著進入本次課程的主軸——IDOR(Insecure Direct Object Reference,不安全的直接物件參考)。講師登入後將商品加入購物籃,攔截到 `GET /rest/basket/7` 的請求,這個 `7` 就是直接暴露的內部物件識別碼(Basket ID)。在 Repeater 中將 `7` 改為 `2`,伺服器回傳 200 OK 並吐出其他用戶的購物籃內容,確認漏洞存在。最後利用 Intruder 的 Sniper Attack 模式,以數字 1–10 批次枚舉,所有 Basket ID 均回傳 200 OK,代表任意登入用戶都能用單一 JWT Token 橫向存取所有人的購物資料。

課程最後講師展示了滲透測試報告的格式:標題、嚴重度(High)、技術說明、影響範圍、截圖與重現步驟,以及修補建議——伺服器端應在每次物件存取時驗證請求者的 Token 是否對應該資源的擁有者。他並總結幾條實務原則:測試前必須先理解應用程式、製作角色矩陣、理解 API 架構、工具是輔助而非替代思考,以及所有發現都必須驗證後再提報,避免誤報浪費開發團隊的時間。

---

關鍵時刻

Pipeline v2

帶時間戳的重點,會在逐字稿層級分析上線後產生。目前請先透過原始影片觀看。

事實查核

Pipeline v2

說法查證是下一次管線升級的一部分。KeyFrame 只會顯示它真正能驗證的內容。

更多「Web2 安全」的內容

Apple Can’t Fix This Security Exploit…
編輯精選
7 min
Web2 安全英文6月20日

Apple Can’t Fix This Security Exploit…

TechLinked

  • Apple 舊款 iPhone 存在不可修補的硬體漏洞:由 Paradigm Shift 研究團隊發現,漏洞位於 USB 控制器層,可在 iOS 啟動前就取得設備控制權。由於需要實體接觸與有線連接,一般使用者日常風險較低,但手機被竊後就可能成為攻入者的入口。
  • META 積極推動聯邦立法以對抗州級訴訟:面對全美超過千件涉及平台縱容犯罪的民事案件,META 選擇透過遊說要求聯邦政府介入、統一管轄,以取代各州分散的訴訟壓力。這是防禦性法律策略,而非從根本解決平台安全問題。
  • Waymo 自駕安全問題持續累積:近 4,000 起事故紀錄中包含闖入施工封閉區、駛入水中等嚴重情境,已觸發多次 NHTSA 正式調查與召回。這顯示自駕技術在非結構化環境下仍有系統性弱點。
Eksploitasi LPE Terbaru 2026: Dirty Frag | CVE-2026-43284 & CVE-2026-43500 | Rooting Linux
10 min
Web2 安全英文6月20日

Eksploitasi LPE Terbaru 2026: Dirty Frag | CVE-2026-43284 & CVE-2026-43500 | Rooting Linux

Naughtysec

  • DirtyFrag 機制類似 DirtyPipe,但因無 Race Condition 而不會造成 Kernel 崩潰或觸發 Buffer Overflow,舊版類似漏洞(如 Buckeye 時期)因有競爭條件會導致伺服器變得如 DoS 狀態,DirtyFrag 解決了這個不穩定問題。
  • 目標防火牆封鎖了標準 Reverse Shell(PentestMonkey 的 bash/nc 類型),因此必須改用 Chisel 建立 TCP Tunnel,再透過 gsocket 穿透防火牆,而非直接連線。
  • gsocket 的 session 具備高度持久性,即使伺服器重啟後連線仍可維持,講者提到曾有 session 存活超過一年,使其成為理想的隱蔽隧道工具。
Hack The Box Administrator | Full Walkthrough
編輯精選
23 min
Web2 安全英文6月20日

Hack The Box Administrator | Full Walkthrough

Cole Mahoney Cybersecurity

  • BloodHound 的「Outbound Object Control」是核心突破口:每換一個使用者就立刻回到 BloodHound 查看該帳號對外的 AD 物件控制權,這條鏈式思維決定整個攻擊路線,是橫向移動的核心依據。
  • 強制改密碼(ForceChangePassword)是 GenericAll 最快的利用方式:對 Michael、Benjamin 等帳號都直接用 `net rpc password` 改密,比注入 ACE 或其他手法更直接,適合在已控帳號有 GenericAll 的場景快速推進。
  • Password Safe 資料庫是隱藏的憑證倉庫:Benjamin 因隸屬 Share Moderators 群組能存取 FTP,其中藏有 `backup.psafe3` 加密資料庫;用 `pwsafe2john` 提取 hash、John 破解 master password 後,即可取出 Emily 的明文密碼。