學習目標
- 理解軟體限制原則 (Software Restriction Policies, SRP) 架構與運作機制
- 掌握四大規則類型(雜湊、憑證、路徑、區域)的特性與適用情境
- 能規劃並部署「預設拒絕,白名單允許」的高安全性執行環境
- 設定檢查層級、受信任發行者管理、強制/豁免管理員等進階選項
適用範圍
- Windows Server 2003 網域環境下的 Windows XP Professional SP1 用戶端
- 獨立 (Workgroup) Windows XP Professional SP1 用戶端
什麼是軟體限制原則?
SRP 是一套策略驅動機制,讓管理者定義「哪些程式允許執行、哪些禁止」,於執行階段強制攔截違規程式。核心價值:
- 防止惡意程式、病毒、木馬未經授權執行
- 避免未授權軟體造成版本衝突或相容性問題
- 支援 .exe、腳本 (.vbs, .js, .wsf)、Windows Installer (.msi)、ActiveX 等多種程式碼類型
- 整合 Active Directory 與群組原則 (GPO),支援網域/OU/站層級部署;亦可於本機原則單機設定
SRP 架構三階段運作流程
- 策略建立:管理者於 MMC「群組原則物件編輯器」→「Windows 設定」→「安全性設定」→「軟體限制原則」建立規則。建議為 SRP 建立獨立 GPO。
- 策略下發與生效:電腦設定於啟動時下載;使用者設定於登入時生效。可用
gpupdate.exe /force 強制重新整理。
- 執行階段強制:使用者啟動程式/腳本時,SRP 執行引擎依優先順序評估規則,決定允許或阻擋。使用者不會看到任何提示視窗,直接被攔截。
核心決策:預設安全等級 — 「不受限」vs「不允許」
| 模式 | 預設行為 | 管理模式 | 適用情境 |
| 不受限 | 允許所有程式執行,除非被「不允許」規則明確封鎖 | 黑名單:逐一新增禁止規則 | 鬆散管理環境、僅需封鎖少數已知惡意/衝突程式 |
| 不允許 | 封鎖所有程式執行,除非被「不受限」規則明確允許 | 白名單:逐一新增允許規則 | 高安全環境(推薦)、嚴格管控軟體清單、防禦未知威脅 |
最佳實務:採用「不允許」模式,建立完整授權應用程式白名單。雖初期部署成本較高,但能從根本杜絕未授權程式碼執行。
四大規則類型深度解析
1. 雜湊規則 — 最精確的檔案指紋
- 原理:對檔案內容計算 MD5 或 SHA-1 雜湊值,形成唯一指紋。即使檔案移動、重命名,雜湊值不變。
- 組成:
[雜湊值]:[檔案長度]:[演算法ID] (例:7bc04acc0d6480af862d22d724c3b049:126:32771)
- 優點:極難繞過;適用靜態環境、固定版本程式
- 缺點:程式更新/修補後雜湊值改變,需重新建立規則
- 建立步驟: GPO 編輯器 →「其他規則」右鍵→「新雜湊規則」→「瀏覽」選取檔案 (如
Excel.exe) → 自動計算雜湊 → 設定安全等級「不允許」或「不受限」
2. 憑證規則 — 信任發行者身分
- 原理:驗證程式的數位簽章憑證,信任特定發行者 (如 Microsoft、VeriSign 簽署軟體)
- 憑證來源:商業 CA (VeriSign 等)、企業 PKI (Windows 2000/2003 CA)、自我簽署憑證
- 優點:程式更新版本、路徑變更皆不影響,只要簽章有效即受信任
- 啟用前提: 預設關閉。需於「本機安全性原則」→「安全性選項」→「系統設定:為軟體限制原則對 Windows 執行檔使用憑證規則」→「啟用」
- 匯出發行者憑證建立規則: IE→「工具」→「網際網路選項」→「內容」→「憑證」→「受信任的發行者」→選取目標→「詳細資料」→「複製到檔案」→選 DER 編碼 (.cer) → 於 SRP「新增憑證規則」匯入 .cer
3. 路徑規則 — 目錄層級管控
- 原理:指定資料夾路徑 (本機路徑、UNC 路徑、登錄路徑) 或完整檔案路徑。資料夾規則會遞迴包含子目錄。
- 注意:若桌面有捷徑指向程式,路徑規則需同時涵蓋「執行檔路徑」與「捷徑路徑」才能正常執行。
- 環境變數支援:可使用
%ProgramFiles%、%UserProfile% 等變數,適應不同安裝路徑。但使用者環境變數可被一般使用者竄改,系統變數較安全。
- 預設路徑規則: SRP 內建兩條「不受限」路徑規則:
%SystemRoot% 及 %SystemRoot%\System32,確保系統核心程式不受阻擋。
4. 區域規則 — 針對 IE 下載程式碼
- 原理:依據程式來源的 IE 安全性區域 (近端內部網路、信任的網站、網際網路、受限制的網站、我的電腦) 判斷信任度
- 適用:僅對經由 IE 下載並標記區域資訊的程式碼 (如 ActiveX、.exe 下載) 有效
- 限制:手動複製、網路共享、郵件附件執行不受區域規則約束
規則優先順序 (由高至低)
- 雜湊規則
- 憑證規則
- 路徑規則
- 區域規則
- 預設規則
同層級多條規則時,「不允許」優先於「不受限」。善用優先順序可建立精細例外機制 (例:路徑規則允許 C:\Apps,但雜湊規則封鎖該目錄下特定有漏洞版本)。
進階設定選項
執行檔類型擴充
「詳細資料」窗格 →「指定的檔案類型」可增減受管制副檔名 (預設含 .exe, .dll, .vbs, .js, .msi 等)。
強制執行範圍
- 所有使用者 (預設)
- 除本機管理員外的所有使用者 — 建議啟用,避免管理員被自身原則鎖死無法修復
檢查層級
- 針對 DLL 檢查:可選「不檢查 DLL」以提升效能 (預設檢查)
下集預告
下篇將實作演示:
- 建立「不允許」預設模式的完整白名單部署流程
- 結合雜湊、憑證、路徑規則的混合策略設計
- 疑難排解:常見誤判、規則衝突、效能影響分析
- 從獨立機擴展至網域 GPO 統一部署最佳實務