核心命題: 攻擊鏈上真正稀缺的資源不是漏洞,而是憑據。一個已經打進內網的攻擊者,如果拿不到有效帳號,處境其實非常被動。 本文角度: 概念解釋與防禦視角。只講原理與防範,不含任何操作細節。
為什麼憑據是整條鏈的樞紐
把企業網路想像成一棟大樓:
- 漏洞是沒關好的窗;
- 立足點是爬進來的那扇窗;
- 憑據則是門禁卡。
爬窗進來只能待在一間房裡。真正讓攻擊者能「在整棟樓自由走動」的,是拿到門禁卡——也就是有效的帳號與密碼(或其等價物)。
這也是為什麼公開的演練復盤普遍顯示:攻擊系統的最後一哩路往往卡在憑據,需要人類專家介入提供。
四個必須分清的概念
概念一:密碼 ≠ 雜湊(Hash)
- 密碼是使用者輸入的字串(例如某個常用詞加數字);
- 雜湊是密碼經過單向運算後得到的一串固定長度字元。
關鍵在於「單向」:由雜湊無法直接反推出密碼,但可以逐一嘗試(把候選密碼雜湊後比對)。
防守含義: 只要雜湊外洩,弱密碼就等於已經洩漏——不需要真的破解演算法。這解釋了為什麼密碼強度與長度如此重要。
概念二:為什麼「不輸入密碼」也能登入(Pass-the-Hash)
在很多舊式驗證協定中,系統比對的是雜湊,而不是明文密碼。這意味著:只要你手上有雜湊,就能直接拿去驗證,不需要知道原始密碼。
於是出現一個反直覺的現象:攻擊者「不知道密碼」,卻能登入。
防守含義: 這正是為什麼現代做法強調改用不依賴雜湊的驗證機制(例如憑證式登入、Kerberos 的特定強化設定),以及為什麼「抓到雜湊」與「抓到密碼」要視為同等嚴重。
概念三:Kerberos——企業內部的「通行證系統」
Active Directory(企業常見的身分管理系統)預設使用 Kerberos 作為驗證協定。它的運作可以這樣理解:
- 使用者向票務中心證明身分(通常用雜湊);
- 票務中心發一張票(Ticket),憑票可以存取特定服務;
- 存取服務時出示票即可,不必每次都重新輸入密碼。
這個設計本身是為效率與安全而生,但它的特性也帶來幾類風險(例如票可以被重放、可以被請求給錯誤的對象等)。
防守含義: 企業應該關注的不只是「密碼夠不夠強」,還包括「票的壽命多長」「誰能申請高權限的票」。
概念四:橫向移動——由一台機器到整個網域
取得第一組憑據之後,攻擊者的目標是複製這個過程:用這組憑據登入另一台機器 → 在該機器上找到更多憑據 → 繼續擴大。
這就是「橫向移動」。它的可怕之處在於每一次成功都會讓下一次更容易——權限像滾雪球。
攻擊者從哪裡「撿到」憑據
理解來源,才能設計防守:
| 來源 | 白話說明 |
|---|---|
| 記憶體 | 某些系統會把驗證資料暫存在記憶體中 |
| 設定檔/腳本 | 自動化腳本裡硬編碼的帳號密碼 |
| 瀏覽器/郵件客戶端 | 使用者勾選「記住密碼」後儲存的憑據 |
| 共用檔案 | 含憑據的文件、備份檔 |
| 服務帳號 | 長期不更換、權限過大的機器帳號 |
值得注意的是:大部分憑據不是「被破解」的,而是「被放置在不該在的地方」。
為什麼「憑據隔離」是最高性價比
把上面所有內容收斂成一句防守建議:讓攻擊者即使拿到一組憑據,也走不遠。
具體做法包括:
- 最小權限:日常作業不使用管理員帳號;
- 即時授權:需要用時才臨時授予高權限,用完即撤;
- 分段管理:不同系統使用不同的管理員帳號,避免「一把鑰匙開全部門」;
- 特權帳號集中管理:記錄誰在什麼時候使用了哪個特權帳號;
- 定期輪換:尤其是服務帳號與機器帳號。
這些做法沒有任何新奇之處,但它們直接對應攻擊鏈上最脆弱的一環。
給非技術讀者的一句話
如果只能記住一件事:企業的資安強度,很大程度取決於「一組密碼外洩之後,攻擊者能走多遠」。 而這取決於帳號權限的設計,而不是防火牆的數量。
下一步
- 想了解憑據在整體攻擊鏈中的位置,可閱讀個案導入
- 想了解攻擊者取得立足點之後如何建立通道,可閱讀隧道技術圖解
- 想從防守角度系統性檢視,可閱讀從紅隊復盤看防禦