應用程式安裝時若覆寫關鍵系統檔,輕則報錯、重則系統崩潰。Windows 2000/XP/2003 引入 Windows File Protection (WFP),自動偵測並還原被竄改的系統檔。本文解析 WFP 運作邏輯、受保護檔案類型、數位簽章驗證、與 SFC 手動控制指令。
.sys .exe .dll .ocx .fon .ttf(由登錄表決定),而非整個 Windows 資料夾。Dllcache(%SystemRoot%\System32\Dllcache)或安裝光碟複製正確版本覆蓋回去,並寫入事件記錄。calc.exe),幾分鐘後 WFP 會自動還原。Windows Installer 需安裝受保護檔時,不直接寫入,而是交給 WFP 判斷是否允許,確保安裝過程不破壞系統一致性。
命令列工具 sfc 語法:
SFC [/SCANNOW] [/SCANONCE] [/SCANBOOT] [/REVERT] [/PURGECACHE] [/CACHESIZE=x]
/SCANNOW:立即完整掃描並修復錯誤版本(需安裝光碟/SP/補丁)。/SCANONCE:下次重開機掃描一次。/SCANBOOT:每次開機掃描。/REVERT:恢復預設(取消排程掃描)。/PURGECACHE:清空 Dllcache(慎用,喪失離線修復能力)。/CACHESIZE=x:設定 Dllcache 大小(MB),預設 1024,最小 15。gpedit.msc。僅供極特殊測試環境使用,生產機**嚴禁停用**。
WFP 是系統穩定的隱形守護者,理解其機制可在排錯時判斷「檔案被竄改還原」是正常行為而非病毒。SFC 則是我們主動介入的手術刀,善用之。