首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL Server 2005 安全性強化實戰清單:從 SA 帳號到擴展預存程序

     編輯:關於SqlServer

SQL Server 2005 相較 2000 大幅強化安全模型,但預設安裝仍存在風險。本文提供生產環境必執行的 3 大類強化操作,附 T-SQL 腳本與 GUI 步驟,打造纏深層防禦。

1. SA 帳號「改名、強密、降權」三部曲

-- T-SQL 方式 (建議在維護窗口執行)
USE master;
GO
-- 1. 重新命名 SA (混淆攻擊目標)
ALTER LOGIN [sa] WITH NAME = [sql_admin_prod];
GO
-- 2. 設定高強度密碼 (需符合密碼策略)
ALTER LOGIN [sql_admin_prod] WITH PASSWORD = 'P@ssw0rd!Complex#2024';
GO
-- 3. 如不需 SA 權限,可停用
ALTER LOGIN [sql_admin_prod] DISABLE;
GO

GUI 操作:SSMS → 安全性 → 登入 → sa → 右鍵屬性 → 一般/狀態頁籤修改名稱、密碼、停用登入。

✅ 2005 新增:強制密碼策略 (複雜度、過期、鎖定)、密碼過期提醒,務必勾選。

2. 認證模式與內建帳號清理

  • 認證模式:僅啟用「Windows 驗證模式」最安全;業務需混合模式時,嚴禁空密碼 SA
  • 移除 BUILTIN\Administrators:SSMS → 安全性 → 登入 → BUILTIN\Administrators → 刪除,防止 OS 管理員直接成 sysadmin
  • 清理孤立使用者:EXEC sp_change_users_login 'Report'; 發現孤立帳號 → 刪除或映射
  • 停用/拒絕多餘登入:屬性 → 狀態 → 「登入」設為「已停用」、「連接資料庫引擎」設為「拒絕」

3. 擴展預存程序「斬斷後門」

xp_cmdshell 是最高風險擴展預存程序,允許執行任意 OS 命令 (如 net user hacker /add)。

-- 停用 xp_cmdshell (需 sysadmin)
EXEC sp_configure 'show advanced options', 1; RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 0; RECONFIGURE;
EXEC sp_configure 'show advanced options', 0; RECONFIGURE;

-- 徹底移除 (更安全)
EXEC sp_dropextendedproc 'xp_cmdshell';

其他高風險擴展程序同理檢視:xp_regread、xp_regwrite、xp_dirtree、xp_subdirs、xp_fileexist 等,業務不用即移除。

進階防護清單 (依資安等級逐項落實)

項目建議設定
預設連接埠修改 1433 → 非標準埠,防火牆限制來源 IP
加密連線強制 TLS 1.2+,憑證驗證
審計啟用登入失敗/成功、結構變更、權限變更審計
最小權限原則應用帳號僅授予特定 Schema 的 SELECT/EXECUTE
資料庫加密TDE (透明資料加密) 保護靜態資料
定期修補套用最新 CU/GDR,關注 CVE

安全性非一次設定,而是持續程序。建立基線、定期稽核、事件響應,才能真正守護資料資產。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved