ASP 的 FileSystemObject (FSO) 提供強大的檔案系統操作能力,但也帶來嚴重安全隱患:惡意腳本可讀寫伺服器任意檔案。禁用 FSO 又會導致合法 ASP 程式無法運行。如何在允許 FSO 的前提下,防止跨站點讀寫?以下是多年實踐總結的加固方案。
第一步:清理 C 槽根目錄權限
右鍵 C 槽 →「共享與安全」→「安全」頁籤,刪除 Everyone、Users 群組。若導致 ASP 完全無法運行,再添加 IIS_WPG 群組並重啟主機。此舉可阻斷 FSO 木馬的基礎運行環境。

進階隔離:為每個站點建立專屬匿名帳號
以 E:\Abc\Abc.com 為例:
Abc 用戶,設定密碼永不過期、隸屬 Guests 組。E:\Abc →「安全」,移除繼承權限,刪除 Everyone,僅保留 Administrators 與 Abc 的完全控制權限。Abc。
此後,網站訪問者以 Abc 身分運行,僅能在自身目錄下使用 FSO,徹底隔離了虛擬主機間的檔案存取。
停止 IIS Admin Service,編輯 Windows\System32\Inetsrv\Metabase.xml,找到 AspMaxRequestEntityAllowed,預設 204800 (200KB),改為 51200000 (50MB),重啟服務即可。