前言:防禦非法登入需構建纵深防御
單一防線必潰。從應用程式、資料庫、作業系統到網路邊界,七層防禦體系層層設防,將攻擊成本推至不可承受之重。
七層防禦詳解
- 資料庫最小權限與存儲程序封鎖
• 僅讀業務(如新聞瀏覽)僅授予 `SELECT` 權限。
• 不同模組使用不同帳號/權限,實現橫向隔離。
• 嚴格配置可呼叫的存儲程序,**禁用高危程序**(`xp_cmdshell`、CLR 整合、`sp_OA*` 等),防止 SQL 注入後利用資料庫執行系統指令。
- 輸入參數嚴格驗證與過濾
• 伺服端驗證:長度、型別、格式、字元集(白名單機制)。
• 拒絕所有未預期的中繼字元(單引號、分號、註解符號 `--`、`/*` 等)。
• 使用參數化查詢/預編譯語句,徹底杜絕 SQL 注入根源。
- 管理後台存取控制
• 強制 HTTPS、雙因子認證(2FA)。
• **IP 白名單限制**:僅允許管理網段/堡壘機 IP 存取。
• 非標準埠、隱藏路徑、登入失敗鎖定與告警。
- 作業系統功能封鎖
將高危系統工具移出系統路徑並設定嚴格 ACL:
cmd.exe、tftp.exe、ftp.exe、net.exe、reg.exe、wscript.exe、cscript.exe、powershell.exe
→ 移至受保護目錄,僅授予 Administrators 讀取/執行權限。
- 網路存取控制(NAC/ACL)
• 邊界防火牆/安全群組:預設拒絕,僅開放業務必要埠。
• 伺服器本機防火牆:限制管理埠(SSH 22、RDP 3389、WinRM 5985/5986)僅對信任 IP 開放。
• 微分段:東西向流量同樣檢查,防止橫向移動。
- HTTP 內容過濾與 WAF
• 部署 Web 應用防火牆(ModSecurity、商業 WAF),即時攔截 SQLi、XSS、命令注入、掃描器特徵。
• 整合威脅情報饋送,自動更新規則集。
• 針對上傳功能:檔案型別驗證(Magic Number)、病毒掃描、儲存於非執行目錄、隨機化檔名。
- 考慮全站 HTTPS(TLS 1.2+)
• 加密傳輸防竊聽、防竄改、防重放。
• 繞過多數自動化掃描/注入工具(僅支援 HTTP)。
• HSTS、Secure Cookie、CSP 標頭進一步強化瀏覽器端防禦。
開發階段隱形風險提醒
- 第三方元件/開源庫:圖片上傳、驗證碼、登入驗證等現成代碼,務必審計安全性(CVE 掃描、原始碼審查)。
- 複製貼上文化:網路/書本範例代碼往往未經安全強化,直接引入極高風險。
- 安全左移:代碼審查、SAST/DAST 掃描納入 CI/CD 流程,漏洞早發現、早修復。
總結
非法登入防禦的核心公式:
最小權限 + 輸入驗證 + 存取控制 + 系統加固 + 流量檢測 + 加密傳輸 + 安全開發生命週期 (SDL)
缺一不可,持續演進。