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

Windows Server 2003 防木馬權限鎖死與系統加固完整清單

編輯:關於伺服器

Windows Server 2003 雖已停止主流支援,仍有存量系統在線。本文整理從安裝、帳號、權限、服務、登錄表、IIS 到元件卸載的纏繞防禦清單,將攻擊面壓至最低。

階段 0:安裝與基線

  1. 最小安裝:僅勾選「應用程式伺服器」→「ASP.NET」「啟用網路 COM+ 存取」「IIS 管理員」「公用檔案」「WWW 服務」→「ASP」「WebDAV 視需求」。
  2. 安裝後立即執行 Windows Update 打全補丁。
  3. 用 Ghost/Clonezilla 做乾淨基線映像,後續每次變更前備份。
  4. 安裝殺毒軟體、解壓縮工具等常用軟體,再做第二張映像。

階段 1:網路縮減與連接埠管控

  • 網路連線 → 僅保留「Internet 通訊協定 (TCP/IP)」,移除 NetBEUI、NWLink 等。
  • TCP/IP 進階 → 停用 NetBIOS over TCP/IP。
  • 啟用 Windows 防火牆(ICF),僅開放 80/443/3389(改埠) 等必要埠。
  • 修改遠端桌面埠 3389 → 10000+:
    reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp" /v PortNumber /t REG_DWORD /d 10000 /f
    reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v PortNumber /t REG_DWORD /d 10000 /f
    
    防火牆同步放行新埠,重開機生效。

階段 2:帳號與認證硬化

項目設定值
Guest 帳號停用 + 設 20+ 字元複雜密碼
Administrator重命名(如 SvcAdmin_2024)
建立蜜罐帳號名稱 Administrator,權限最低,密碼 20+ 字元
共用資料夾權限移除 Everyone,僅授權具體群組/帳號
帳號鎖定策略閾值 3 次、鎖定 20 分鐘、重置計數 20 分鐘
密碼策略最小 8 字元、複雜度啟用、歷史 5 次、最長壽命 42 天
不顯示上次登入用戶HKLM\Software\Microsoft\Windows\CurrentVersion\Winlogon\DontDisplayLastUserName = 1

階段 3:NTFS 權限最小化

# 系統盤、資料盤
icacls C:\ /inheritance:r /grant:r "Administrators:(OI)(CI)F" "SYSTEM:(OI)(CI)F"
icacls "C:\Documents and Settings" /inheritance:r /grant:r "Administrators:(OI)(CI)F" "SYSTEM:(OI)(CI)F"

# 高風險執行檔 僅限 Administrators + SYSTEM
for %f in (cacls.exe cmd.exe net.exe net1.exe ftp.exe tftp.exe telnet.exe netstat.exe regedit.exe at.exe attrib.exe format.com del) do icacls "C:\Windows\System32\%f" /inheritance:r /grant:r "Administrators:F" "SYSTEM:F"

# 移動/重命名敏感工具
move C:\Windows\System32\cmd.exe C:\Windows\System32\cmd_disabled.exe
move C:\Windows\System32\ftp.exe C:\Windows\System32\ftp_disabled.exe
move C:\Windows\System32\format.com C:\Windows\System32\format_disabled.com

# 刪除預設 Web 根目錄
rd /s /q C:\inetpub

階段 4:本地安全性原則精選

secpol.msc → 本機原則:

  • 稽核原則:全部「成功、失敗」稽核,除「稽核程序追蹤」無。
  • 使用者權利指派:
    • 關機系統 → 僅 Administrators
    • 允許透過終端機服務登入 → 僅 Administrators, Remote Desktop Users
  • 安全性選項:
    • 互動式登入:不顯示上次用戶名 → 啟用
    • 網路存取:不允許 SAM 帳戶匿名列舉 → 啟用
    • 網路存取:可匿名存取的共用/管道/登錄機碼 → 全部清空
    • 帳戶:重新命名系統管理員/來賓帳戶 → 已完成

階段 5:停用非必要服務(services.msc)

服務名稱建議理由
TCP/IP NetBIOS Helper停用無 NetBIOS 需求
Server停用不提供檔案/列印共享
Computer Browser停用非網域環境
Messenger停用垃圾彈窗入口
Remote Registry停用防遠端改登錄
Remote Desktop Help Session Mgr停用不需遠端協助
Error Reporting Service停用不上傳錯誤報告
Print Spooler無印表機則停用減少攻擊面

原本停用的服務保持停用,除非業務確認必須。

階段 6:登錄表核心加固

# 1. 完全隱藏「顯示隱藏檔案」選項
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL" /v CheckedValue /t REG_DWORD /d 0 /f

# 2. TCP/IP 堆疊強化
reg add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v SynAttackProtect /t REG_DWORD /d 2 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v EnablePMTUDiscovery /t REG_DWORD /d 0 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v NoNameReleaseOnDemand /t REG_DWORD /d 1 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v EnableDeadGWDetect /t REG_DWORD /d 0 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v KeepAliveTime /t REG_DWORD /d 300000 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v PerformRouterDiscovery /t REG_DWORD /d 0 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v EnableICMPRedirects /t REG_DWORD /d 0 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v IGMPLevel /t REG_DWORD /d 0 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v DefaultTTL /t REG_DWORD /d 258 /f   # 干擾指紋辨識

# 3. 禁止 IPC$ 空連線
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Lsa" /v RestrictAnonymous /t REG_DWORD /d 1 /f

# 4. 關閉預設共享自動建立
reg add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" /v AutoShareServer /t REG_DWORD /d 0 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" /v AutoShareWks /t REG_DWORD /d 0 /f

階段 7:啟動腳本雙重保險刪除共享

建立 del_share.bat 放入「啟動」資料夾:

@echo off
net share C$ /delete
net share D$ /delete
net share E$ /delete
net share F$ /delete
net share IPC$ /delete
net share ADMIN$ /delete

階段 8:IIS 6.0 站點鎖死

  • 網站內容與系統盤分離,存放專用資料磁區。
  • 啟用「父路徑」視應用需求,原則關閉。
  • 移除未用腳本對應(.asa, .cer, .cdx, .htr, .idc, .shtm, .stm 等),保留 .asp/.aspx/.asmx。
  • 自訂 404 錯誤頁 → 靜態 HTML,避免洩漏路徑資訊。
  • 站點權限:讀取/腳本執行(僅限腳本),其餘(寫入、目錄瀏覽、索引、日誌存取)全部拒絕。
  • 啟用 W3C 擴充日誌,每日審核,日誌目錄權限僅 Administrators+SYSTEM。

階段 9:應用程式碼層面

  • 資料庫連線字串、帳密封裝在 COM+/DLL,ASP 僅呼叫元件。
  • 驗證頁面檢查 Request.ServerVariables("HTTP_REFERER") 防繞過。
  • 刪除 .inc、.bak、.tmp 等備份檔,或設定 IIS 拒絕直接存取。

階段 10:IIS 權限隔離模型(多站點共存)

  1. 每站點建立專用本機帳號(如 WebSiteA_User)。
  2. IIS 站點/虛擬目錄 → 目錄安全性 → 匿名存取 → 編輯 → 指定該帳號。
  3. NTFS:所有磁碟移除該帳號權限,唯獨站點實體目錄授予「讀取+執行」,並移除繼承、加入 Administrators+SYSTEM。

階段 11:卸載高風險系統元件

regsvr32 /u %windir%\system32\wshom.ocx
del %windir%\system32\wshom.ocx
regsvr32 /u %windir%\system32\shell32.dll
# 注:shell32.dll 為核心檔,僅解除註冊 WScript.Shell/Shell.Application/Network,勿刪除檔案

重開機後 WScript.CreateObject("WScript.Shell") 等將失效,阻斷大量 VBS/JS 下載器。

驗證清單

  • net view \\127.0.0.1 → 空
  • net share → 無 $ 尾碼共享
  • nmap -sS -p 139,445,3389,10000 <IP> → 僅新 RDP 埠開放
  • wmic useraccount get name,status → 僅預期帳號啟用
  • 嘗試 cscript //nologo test.vbs(含 CreateObject("WScript.Shell"))→ 應報錯

⚠️ 本清單針對 Windows Server 2003 獨立/工作群組 Web/DB 伺服器。網域控制器、Exchange、SQL Server 叢集等角色需額外調整,切勿盲目套用導致服務中斷。

Copyright © Windows教程網 All Rights Reserved