Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

Windows Server 2003 提高 FSO 安全性實戰技巧:隔離虛擬主機檔案存取

編輯:Windows Server 常見問題解答

ASP 的 FileSystemObject (FSO) 提供強大的檔案系統存取能力,若不加限制,惡意使用者可透過 FSO 木馬讀寫伺服器上任意檔案,嚴重威脅虛擬主機安全。本文分享多年實戰經驗:在啟用 FSO 的前提下,透過 NTFS 權限隔離,確保不同虛擬主機使用者無法跨目錄存取檔案。

核心原則:最小權限 + 匿名使用者隔離

步驟一:移除 C 槽 Everyone/Users 群組權限

  1. 右鍵 C 槽 →「內容」→「安全性」頁籤。
  2. 移除 Everyone、Users 群組。
  3. 若網站 ASP 程式無法執行,加入 IIS_WPG 群組並給予「讀取與執行」權限。
  4. 重新開機生效。

C 槽安全性設定

此步驟後,FSO 木馬已無法跨目錄存取檔案。

步驟二:為每個網站建立專屬匿名使用者並授權

以 E:\Abc 為 Abc.com 網站根目錄為例:

  1. 建立專屬帳號:「電腦管理」→「本機使用者和群組」→「使用者」→ 新增 Abc 使用者,設定密碼永不過期、使用者無法變更密碼、隸屬 Guests 群組。
  2. 設定目錄 NTFS 權限:右鍵 E:\Abc →「安全性」→ 移除 Everyone → 新增 Administrators 與 Abc 並給予「完全控制」。
  3. 設定 IIS 匿名存取身分:IIS 管理員 → Abc.com →「內容」→「目錄安全性」→「驗證與存取控制」編輯 → 匿名存取帳號選擇剛建立的 Abc → 輸入密碼確認。

IIS 匿名驗證設定

結果驗證

網站訪客以 Abc 匿名身分存取,該帳號僅對 E:\Abc 擁有權限,FSO 操作自動限制在該目錄下,無法讀寫其他網站檔案,達到虛擬主機間的儲存隔離。

補充:解除 FSO 上傳 200KB 限制

  1. 停止 IIS Admin Service 服務。
  2. 編輯 C:\Windows\System32\Inetsrv\Metabase.xml,找到 AspMaxRequestEntityAllowed。
  3. 預設值 204800 (200KB),修改為 51200000 (50MB)。
  4. 重新啟動 IIS Admin Service 服務。
Copyright © Windows教程網 All Rights Reserved