Vista 透過核心層級重構大幅提升可靠性與安全性。本文深入解析九大支柱技術:內核交易管理器(KTM)、強化崩潰轉儲、磁碟區陰影複製、BitLocker 全磁碟加密、核心模式簽章(KMCS)、受保護進程、位址空間配置隨機化(ASLR)、服務強化與限制寫入服務。
1. 核心交易管理器(KTM)與 TxF/TxR
應用程式可建立交易,將多項檔案/登錄變更原子化:全成功提交、任一失敗回滾。NTFS 擴充 TxF、登錄擴充 TxR,底層仰賴 CLFS(通用記錄檔系統)確保斷電也能復原。Windows Update、系統還原皆基於此機制。
2. 強化崩潰轉儲支援
- 更早初始化轉儲功能(驅動程式載入前),捕捉開機早期藍屏
- 64KB 區塊寫入取代 4KB,大型轉儲檔速度提升 10 倍
- 應用程式崩潰處理移至 Windows Error Reporting (WER) 服務,避免堆疊損壞導致無法回報
3. 磁碟區陰影複製服務(VSS)統一備份架構
- 快照非完整複製,而是「原始扇區備份 + 作用中資料」疊合視圖
- Vista 將「系統還原」從檔案過濾器改為 VSS 快照,統一使用者資料與系統保護,消除冗餘備份
- 「先前版本」介面讓使用者直接還原誤刪/修改檔案
4. BitLocker 全磁碟加密
- FVE(全磁碟加密)過濾驅動程式在 NTFS 層下運作,128-bit AES + 散佈器
- FVEK(磁碟加密金鑰)由 VMK(磁碟主金鑰)加密,VMK 再由 TPM 1.2、PIN、USB 金鑰保護
- 啟動測量鏈:BIOS → MBR → Bootmgr → OS Loader,任一變更即拒絕解密,防止離線攻擊、啟動套件

5. 核心模式程式碼簽章(KMCS)
- 64 位元 Vista 強制載入經 WHQL 或受信任 CA 簽章的驅動程式,阻擋 Rootkit
- 32 位元允許未簽章但記錄事件,兼容舊驅動
- 測試簽章模式(
bcdedit /set testsigning on)供開發除錯,桌面浮水印標識

6. 受保護進程
- 限制存取介面:僅允許查詢映像名稱、終止/暫停,禁止注入執行緒、讀寫記憶體、偵錯
- 載入模組必須經 WHQL 或 DRM 簽章
- 核心可查詢「未簽章驅動程式是否載入」,決定是否解鎖高解析度內容(AACS/PMP 需求)
- 範例:
Audiodg.exe(音訊裝置圖形隔離)即為受保護進程
7. 位址空間配置隨機化(ASLR)
- 每次開機隨機選擇 256 個 64KB 對齊位址之一作為 DLL 載入基址,執行檔同理
- 惡意程式無法預測 API 位址,大幅降低緩衝區溢出利用成功率
- 副作用:記憶體配置更緊湊、頁表減少、TLB 遺漏降低
- 需編譯器標記
/DYNAMICBASE(VS2005 SP1+ 支援)

8. 服務安全性重構
- 服務 SID:每服務唯一 SID(
sc showsid 服務名),資源 ACL 僅授權該 SID,隔離同帳戶服務
- 限制寫入服務:
svchost -k LocalServiceNoNetwork 群組,寫入權限僅限服務 SID、Everyone、登入會話 SID
- 擁有者權限 SID:限制物件擁有者權限,防止被入侵服務竄改 ACL
- 啟動權杖精簡:服務控制管理器依聲明特權建立權杖,未聲明特權自動移除(
sc qprivs 服務名 查詢)

9. 限制寫入服務實例
單一 svchost -k LocalServiceNoNetwork 進程承載:基礎篩選引擎、診斷原則服務、Windows 防火牆、效能記錄與警示、Windows Media Center 啟動器。進程權杖含「受限」標籤,無法存取僅授權給 LOCAL SERVICE 非受限標籤的物件。
結語
Vista 核心安全架構確立了現代 Windows 防禦基石:交易式狀態管理、硬體綁定加密、強制簽章鏈、進程隔離、隨機化佈局、最小權限服務模型。後續版本(Win7/8/10/11)皆在此基礎上演進強化。