xp_cmdshell 擴展預存程序未被移除/禁用(預設啟用)xp_cmdshell "net user hacker P@ssw0rd /add";
GO
xp_cmdshell "net localgroup administrators hacker /add";
GO
xp_cmdshell 位於 master 資料庫,以 SQL Server 服務帳號權限執行 OS 命令| 層級 | 措施 | 優先度 |
|---|---|---|
| 帳號 | SA 必須設定 16+ 字元高強度密碼(大小寫+數位+特殊符號),安裝時即完成 | ⭐⭐⭐⭐⭐ |
| 帳號 | 重命名 SA 帳號,建立同名誘餌帳號觸發告警 | ⭐⭐⭐⭐ |
| 網路 | 防火牆限制 1433 僅允許應用伺服器 IP 存取 | ⭐⭐⭐⭐⭐ |
| 功能 | 移除 xp_cmdshell:EXEC sp_dropextendedproc 'xp_cmdshell' | ⭐⭐⭐⭐ |
| 功能 | 或禁用:EXEC sp_configure 'xp_cmdshell', 0; RECONFIGURE | ⭐⭐⭐⭐ |
| 權限 | SQL 服務帳號使用最低權限網域帳號,非本地系統/管理員 | ⭐⭐⭐⭐⭐ |
| 審計 | 啟用登入失敗審計,異常登入即時告警 | ⭐⭐⭐ |
net user / lusrmgr.msc「資料庫被攻破最多丟資料,怎麼可能拿到系統權限?」
錯誤。SQL Server 架構允許高權限資料庫操作透過 xp_cmdshell、CLR、OLE Automation 等橋樑直接觸達作業系統。資料庫安全即系統安全的關鍵防線。