Windows 7 提供兩層程式執行管控機制:舊版「軟體限制原則」(白/黑名單)與新版「AppLocker」(規則型、支援發布者/路徑/雜湊、可針對使用者/群組)。本文詳細比較並示範實作步驟。
一、軟體限制原則 (SRP) - 相容性機制
gpedit.msc → 使用者設定 → 管理範本 → 系統 →「不要執行指定的 Windows 應用程式」(黑名單)或「只執行指定的 Windows 應用程式」(白名單)。
- 啟用 →「顯示」→ 新增完整檔名(含副檔名),如
badgame.exe。
- 缺點:僅能比對檔名,使用者改名即可繞過;無法區分版本/簽章。
二、AppLocker - 企業級管控 (專業版/企業版/旗艦版)
先決條件
- 服務「Application Identity」設為「自動」並啟動。
- 以管理員身分執行
gpedit.msc。
規則建立流程(以可執行檔規則為例)
- 電腦設定 → Windows 設定 → 安全性設定 → 應用程式控制原則 → AppLocker → 可執行檔規則。
- 右鍵空白處 →「建立預設規則」(確保系統核心程式可執行)。
- 右鍵 →「建立新規則」→ 精靈引導:
- 權限:允許/拒絕。
- 使用者/群組:指定套用對象(如 Everyone、特定群組)。
- 條件類型:發布者(數位簽章、版本範圍)、路徑(資料夾/檔案)、檔案雜湊(精確比對)。
- 發布者條件滑桿可調整範圍:特定版本 → 產品名稱(所有版本) → 發布者(該廠商所有產品)。
- 命名規則 → 完成。
三、比較總結
| 特性 | 軟體限制原則 | AppLocker |
| 支援版本 | 所有版本 | 專業版/企業版/旗艦版 |
| 比對依據 | 檔名/路徑/雜湊 | 發布者/路徑/雜湊 |
| 版本範圍控制 | 無 | 發布者條件滑桿精確控制 |
| 使用者/群組針對性 | 無(僅使用者設定) | 電腦設定下可指定 SID/群組 |
| 稽核模式 | 無 | 有(僅記錄不強制) |
| 管理介面 | gpedit.msc / secpol.msc | gpedit.msc / PowerShell / Group Policy Management Console |
建議
- 家用/小型環境:SRP 白名單(僅允許已知程式)較簡單有效。
- 企業環境:部署 AppLocker,採發布者規則允許簽章受信任軟體,拒絕未簽章/不明發布者程式,並啟用稽核模式觀察誤判再強制。