Serv-U 作為廣泛部署的 Windows FTP 服務器,若維持預設設定極易遭受暴力破解、提權攻擊、Webshell 植入等威脅。本文針對 Serv-U v3.x~v6+ 版本,提供三層防禦策略:修改/隱藏本地管理埠與密碼、收斂 Web 目錄執行權限與程式檔案存取、以低權限帳號運行服務,構建纵深防禦體系。
Everyone 擁有任何服務器目錄的「完全控制」權限。127.0.0.1:43958 (v3.x 以上版本)LocalAdministrator#l@$ak#.lk;0@P (內建常數)| 版本 | 修改管理埠 | 修改管理密碼 | 備註 |
|---|---|---|---|
| v6 以下 | UltraEdit 開啟 ServUDaemon.exe / ServUAdmin.exe,搜尋十六進位 B6AB (43958) → 替換為自訂埠 (如 3039 = 0x0BDE) | 同樣用 UltraEdit 搜尋預設密碼字串 → 替換為等長度自訂字串 | ⚠ v6 以下有遠端緩衝區溢出漏洞 (CVE-2004-XXXX),強烈建議升級 |
| v6 以上 | 編輯 ServUDaemon.ini 新增:LocalSetupPortNo=12345 | 編輯 ServUDaemon.ini 新增:LocalSetupPassword=MD5雜湊值(密碼為空時才用預設值) | 修改後程式碼中對應邏輯亦需同步 (重編譯或官方支援) |
43958 所有遠端 IP 存取。12345:IPsec 封鎖 12345 遠端存取,僅允許 127.0.0.1 / 管理機 IP。C:\Program Files\Serv-U (建議安裝至非預設路徑)。Administrators:完全控制SYSTEM:完全控制 (服務運行需求)Users/Guests/IIS_IUSRS:拒絕存取 (含讀取/列表/執行)ServUDaemon.exe、ServUDaemon.ini 分析管理埠/密碼、替換二進位檔植入後門。Local System (最高權限) 運行,一旦被利用漏洞執行任意代碼即獲得系統完整控制權。Users 群組,非 Administrators/Power Users) 運行服務,縮小攻擊面。svc_servu),密碼複雜、設定永不過期。services.msc) → Serv-U FTP Server → 內容 → 登入 → 選擇「此帳號」輸入 svc_servu 及密碼 → 確定 → 重新啟動服務。| 防禦層 | 核心動作 | 阻擋威脅 | 驗證方式 |
|---|---|---|---|
| 管理介面 | 修改埠 + 強密碼 + IPsec 白名單 | 本地提權後劫持管理介面 | Telnet 127.0.0.1:新埠 失敗 / 遠端 IP 連線被拒 |
| 目錄權限 | Web 目錄無執行權 / Serv-U 程式目錄拒絕低權用戶 | Webshell 讀取/竄改設定、植入後門 | 嘗試讀取 ServUDaemon.ini 失敗 / 上傳 .asp/.php 無法執行 |
| 服務權限 | 低權限帳號運行服務 | 漏洞利用獲得 System 權限 | 服務進程擁有者為 svc_servu / 管理介面新增用戶失敗 (預期) |
實施上述三層防禦,配合定期修補 Windows/IIS 漏洞、啟用 FTPS 加密傳輸、審計日誌異常告警,可將 Serv-U 服務器的攻擊面壓縮至最小,大幅降低被植入後門、資料外洩、勒索軟體加密 FTP 資料等風險。