Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> 電腦軟體教學 >> 伺服器技術 >> 關於伺服器

防範 ASP Wood Horse (WebShell) 四大核心組件禁用與權限收斂策略

編輯:關於伺服器

ASP Wood Horse 主要濫用三大 COM 組件與 Cmd.exe 實現檔案操作、命令執行、系統偵察。透過註冊表重命名、ACL 收斂、組件註銷可大幅提升攻擊成本。

組件一:Scripting.FileSystemObject (FSO)

功能:檔案/目錄讀寫刪除、建立、移動、屬性讀取

防護措施

  1. 註冊表重命名 ProgID:
    HKEY_CLASSES_ROOT\Scripting.FileSystemObject → Scripting.FileSystemObject_Disabled
    HKEY_CLASSES_ROOT\Scripting.FileSystemObject\CLSID → 修改或刪除值
  2. 註銷組件 (影響合法 ASP 應用):
    regsvr32 /u C:\WINNT\SYSTEM\scrrun.dll
  3. ACL 拒絕 Guest/Everyone 存取 scrrun.dll:
    cacls C:\WINNT\system32\scrrun.dll /e /d guests

組件二:WScript.Shell

功能:執行命令、讀寫註冊表、環境變數、網路映射、建立捷徑

防護措施

  1. 重命名 ProGID:
    HKEY_CLASSES_ROOT\WScript.Shell → WScript.Shell_Disabled
    HKEY_CLASSES_ROOT\WScript.Shell.1 → WScript.Shell.1_Disabled
    對應 CLSID 同步修改
  2. 或刪除 CLSID 值

組件三:Shell.Application

功能:檔案操作、命名空間瀏覽、執行程式、系統資訊查詢

防護措施

  1. 重命名:
    HKEY_CLASSES_ROOT\Shell.Application → Shell.Application_Disabled
    HKEY_CLASSES_ROOT\Shell.Application.1 → Shell.Application.1_Disabled
    CLSID 同步修改
  2. ACL 拒絕 shell32.dll:
    cacls C:\WINNT\system32\shell32.dll /e /d guests

組件四:Cmd.exe 直接調用

cacls C:\WINNT\system32\cmd.exe /e /d guests

生效與驗證

  • 所有修改需 重啟 IIS (iisreset / 重啟 WWW 服務) 方可生效
  • 測試:上傳含 Server.CreateObject("Scripting.FileSystemObject") 的 ASP 檔,應返回 800401f3 錯誤

纵深防御補充

  • 應用程式池身分使用最低權限自訂帳號 (非 NetworkService/LocalSystem)
  • 網站目錄 ACL:程式碼目錄 Read+Execute、上傳目錄 Read+Write 禁用 Execute
  • 部署 WAF/請求過濾模組 (URLScan/ModSecurity/IIS Request Filtering)
  • 定期掃描 Web 目錄異常檔案 (WebShell 特徵、異常副檔名)
  • 啟用審核原則:物件存取失敗、程序建立、權限使用
組件禁用屬於「阻斷利用鏈」,屬於纵深防御一環,無法替代代碼審計、權限最小化、入侵檢測等根本措施。
Copyright © Windows教程網 All Rights Reserved