⚠️ 安全聲明
本文旨在分析已知攻擊手法原理,協助防禦者理解威脅模型並部署防護措施。嚴禁將此資訊用於未經授權的滲透測試或非法入侵。所有技術細節均基於公開文獻整理,不提供可直接執行的攻擊腳本或工具下載連結。
攻擊鏈概述
攻擊者利用 Web 應用程式漏洞 (SQL Injection、檔案上傳缺陷等) 取得 Webshell,進而在目標主機執行指令,透過連接埠轉發工具 (fpipe、htran 等) 將本機回環介面 (127.0.0.1:43958) 上的 Serv-U 管理介面映射至可存取的埠,再使用預設管理帳號 (LocalAdministrator / #l@$ak#.lk;0@P) 登入 Serv-U 管理主控台,新增具備系統管理員權限的 FTP 帳號並啟用 SITE EXEC 指令執行任意系統指令,最終取得作業系統最高權限。
關鍵弱點條件
- Serv-U 安裝預設值未修改:管理埠 43958 僅綁定 127.0.0.1、預設管理帳號/密碼固定。
- 目標主機已遭植入 Webshell 且具備執行指令權限 (可啟動連接埠轉發程式)。
- 防火牆/網路裝置未限制內部異常連線或反向連線。
防護建議
1. 修改 Serv-U 預設設定 (最優先)
- 編輯
ServUDaemon.ini,在 [GLOBAL] 區段新增:
LocalSetupPortNo=自訂高位埠 (例: 54321)
- 使用強式隨機密碼取代預設管理密碼。
- 限制管理介面僅允許特定管理工作站 IP 存取 (防火牆規則或 Serv-U IP 存取規則)。
2. 修補 Web 應用程式漏洞
- 定期掃描並修復 SQL Injection、檔案上傳驗證繞過、路徑遍歷等漏洞。
- 部署 WAF (Web Application Firewall) 攔截惡意請求。
- Web 目錄嚴格執行「寫入即不執行、執行即不寫入」權限分離。
3. 主機層面強化
- 啟用 Windows 防火牆/主機型 IPS,封鎖非必要輸出連線 (特別是反向 Shell 常用埠)。
- 啟用 AppLocker / Software Restriction Policies,限制可執行檔路徑 (禁止
%TEMP%, Web 目錄 執行)。
- 定期稽核排程工作、服務、啟動項,偵測異常持久化機制。
4. 網路層面監控
- 部署流量分析 (NetFlow/sFlow) 偵測內部主機對外異常長連線 (可能為反向 Shell/隧道)。
- 隔離 DMZ 與內網,實施零信任網路分段,限制橫向移動。
事件回應指引
- 發現 Webshell:立即離線受影響主機,保留記憶體/磁碟鏡像供鑑識。
- 檢查 Serv-U 設定檔與日誌 (
ServUDaemon.log),確認是否有非授權管理登入或 SITE EXEC 記錄。
- 全面掃描主機異常帳號、排程工作、服務、啟動登錄鍵值。
- 變更所有服務帳號密碼,重新簽發 SSL 憑證。
- 根因分析並修補入口漏洞,完成前不得重新上線。
參考資源
- Serv-U 官方安全配置指南
- MITRE ATT&CK: T1505.003 (Web Shell), T1021.004 (Pass the Hash), T1572 (Protocol Tunneling)
- OWASP Web Shell Detection Cheat Sheet