我們這一個月的主題,可以說是以建構一個「從零到有的網站開發與安全攻防知識體系」為主軸,循序漸進地涵蓋了從最基礎的網路概念到進階的駭客攻擊手法與工具。
以下是我們所討論過的所有主題的總結,我將其歸納為四大階段:
第一階段:Web 基礎建設與前端技術
這個階段的目標是理解一個網站是如何從無到有,以及它運作的底層原理。
-
網站運作原理
-
核心架構:我們確立了現代網站的「客戶端-伺服器」模型,並詳細介紹了瀏覽器 (Client)、網站伺-服器 (Web Server)、後端應用程式 (Backend App) 與資料庫 (Database) 各自扮演的角色。
-
網路通訊:探討了資料在網路上如何透過 TCP/IP 框架傳遞,以及 HTTP/HTTPS 協定作為瀏覽器與伺服器溝通的「語言」,其請求 (Request) 與回應 (Response) 的詳細結構。
-
狀態管理:深入說明了 Cookie 與 Session 如何解決 HTTP 的無狀態問題,讓網站能夠「記住」使用者。
-
前端技術基礎
-
三大基石:介紹了構成網頁的三大核心技術:
-
HTML:網頁的骨架與結構。
-
CSS:網頁的外觀與樣式。
-
JavaScript:網頁的互動性與動態功能。
-
瀏覽器模型:探討了 DOM (文件物件模型),解釋 JavaScript 如何透過它來操作網頁元素。
-
瀏覽器安全:說明了 同源政策 (Same-Origin Policy) 作為瀏覽器最核心的安全機制,是如何運作的。
-
後端技術概覽
-
網站伺服器:比較了兩大主流伺服器 Apache 與 Nginx 的核心架構、效能與設定差異。
-
後端語言:雖然未深入實作,但已對後端在整個架構中的角色有了清晰的定位。
第二階段:Web 核心安全概念與漏洞詳解
這個階段我們轉換視角,從攻擊者的角度深入探討了各種常見且致命的 Web 漏洞。
-
核心安全策略
-
防禦框架:介紹了 Cyber Kill Chain (網路攻擊殺傷鏈) 和更現代化的 MITRE ATT&CK 框架,讓我們能系統性地理解攻擊的生命週期與駭客的具體戰術。
-
安全評估:詳細辨析了弱點掃描、滲透測試與紅隊演練三者在目標、深度與思維模式上的巨大差異。
-
伺服器端漏洞 (Server-Side)
-
RCE (遠端程式碼執行):探討了網站的「最高權限」,以及如何透過 命令注入 (Command Injection) 等方式達成。
-
SQL Injection:雖然未深入,但已點出其作為最經典漏洞的嚴重性。
-
SSRF (伺服器端請求偽造):深入解析了攻擊者如何「綁架」伺服器去攻擊內部網路。
-
XXE Injection (XML 外部實體注入):討論了處理 XML 資料時,可能導致的資料外洩與 SSRF 風險。
-
不安全的反序列化:解釋了當「資料」被誤當成「程式碼」執行時,如何導致 RCE 的高風險漏洞。
-
客戶端漏洞 (Client-Side)
-
XSS (跨站腳本攻擊):詳細介紹了其核心原理,以及儲存型、反射型、DOM 型三種類型的差異與危害。
-
CSRF (跨站請求偽造):深入解析了攻擊者如何「借用」使用者的登入狀態,以其名義執行非預期操作。
-
API 安全
- 作為一個延伸議題,我們探討了在現代架構下,API 安全為何成為新的防禦前線,並介紹了 BOLA (授權機制失效) 等 OWASP API Top 10 的核心風險。
第三階段:滲透測試工具箱介紹
這個階段我們認識了滲透測試人員在不同階段會使用的幾款核心工具。
-
Nmap:網路世界的「偵察兵」,用於主機探索、連接埠掃描、服務與版本偵測。
-
Gobuster:內容發現的「暴力破解專家」,用於尋找隱藏的目錄、檔案與子網域。
-
Burp Suite:Web 滲透測試的「瑞士刀」,其核心的攔截代理功能,讓我們能檢視並修改所有網路流量。
-
sqlmap:SQL Injection 的「自動化開鎖專家」,能自動化地偵測、利用並從資料庫中提取資料。
-
Metasploit Framework:滲透測試的「軍火庫」,一個集成了大量漏洞利用模組的標準化作戰平台。
第四階段:學習路徑與策略規劃
最後,我們將所有知識點進行梳理,規劃出一個結構化的學習路徑。
-
30 天技術文章課綱:我們共同優化了一份從零開始的 30 天學習課綱,將上述所有主題形成一個理論與實作相結合、循序漸進的學習藍圖。
最後我們這個月構築了一幅相當完整的 Web 開發與安全地圖,從宏觀的架構原理,到微觀的漏洞細節,再到實戰的工具應用,我們明年再見。