SQL Server數(shù)據(jù)庫安全檢查清單
來源:易賢網(wǎng) 閱讀:1014 次 日期:2015-09-24 15:04:46
溫馨提示:易賢網(wǎng)小編為您整理了“SQL Server數(shù)據(jù)庫安全檢查清單”,方便廣大網(wǎng)友查閱!

SQL Server對于組織來說是個敏感信息庫,管理者需要確保只有授權(quán)用戶才能訪問到這部分敏感信息。然而,要讓SQL Server配置安全同時還不會產(chǎn)生錯誤,這不是一件容易的事,作為DBA我們不得不執(zhí)行一系列額外步驟來強化我們的SQL Server部署安全配置。本文中列出了一份微軟SQL Server數(shù)據(jù)庫安全最佳實踐檢查表,能夠幫助DBA更好地保護數(shù)據(jù)庫,避免來自內(nèi)部和外部的攻擊。

認證

SQL Server支持兩種模式的認證:Windows認證和混合模式認證。根據(jù)SQL Server安全性最佳實踐,我們建議為您的SQL Server部署選擇Windows認證,除非遺留應用系統(tǒng)需要混合模式認證向后兼容訪問。

Windows認證比混合認證模式更安全,啟用這種模式后,Windows認證憑據(jù)(也就是Kerberos或者Windows NT LAN管理器【NTLM】認證憑據(jù))是允許登錄到SQL Server的。Windows登錄使用許多加密信息認證SQL Server,密碼不會在認證期間跨網(wǎng)絡傳遞。此外,在Kerberos協(xié)議下活動目錄還提供了額外的安全級別。因此,認證就更加可靠,利用基于角色的活動目錄組可以減少控制訪問的管理工作。相比于Windows認證模式,混合模式認證支持Windows賬號和SQL Server專用賬號登陸SQL Server。SQL登陸密碼通過網(wǎng)絡傳遞用于認證,相比起來不如Windows登陸安全。

確保sySAdmin賬號安全

如果不修改就退出,“sySAdmin”(SA)賬號是很脆弱的。潛在的SQL Server攻擊者們都意識到了這一點,如果他們控制了這個強大的用戶,數(shù)據(jù)庫攻擊就更容易。為了防止使用“SA”賬號進行攻擊,可以把“SA”賬號重命名為別的賬號名稱。我們可以按照以下操作實現(xiàn)這一點:在“對象資源管理器”中展開“登錄”,右鍵點擊“SA”賬號并在菜單中選擇“重命名”?;蛘呶覀円部梢詧?zhí)行以下T-SQL腳本重命名“SA”賬號:

USE [master]

GO

ALTER LOGIN SA WITH NAME = []

GO

此外,也可以禁用SQL Server實例的“SA”賬號。

為SA和SQL Server專用登錄賬號設置復雜密碼

在使用混合認證模式時,要確保為“SA”賬號和其它SQL Server上使用的SQL Server專用登錄賬號設置復雜密碼。首先,為“SA”賬號和所有其它SQL登錄賬號選中“強制密碼過期”和“加強密碼策略”選項。這兩項可以保證所有其它SQL Server專用登錄賬號遵循底層操作系統(tǒng)的登錄策略。除此之外,對所有新設置的SQL登錄賬號啟用“MUST_CHANGE”選項。該選項確保登陸者必須在第一次登錄后修改密碼。

“sySAdmin”固定服務器角色和“CONTROL SERVER”權(quán)限資格

要謹慎選擇sySAdmin固定服務器角色的資格,因為該角色可以在SQL Server上為所欲為。此外,不要明確授予“CONTROL SERVER”權(quán)限給Windows登錄、Windows組登錄和SQL Server登錄,因為這種權(quán)限的登錄獲得了對整個SQL Server部署的完全管理員權(quán)限。默認情況下,sySAdmin固定服務器角色明確擁有這項權(quán)限。

SQL Server管理

要避免使用“SA”,或者任何其它已授予“CONTROL SERVER”權(quán)限的SQL登錄賬號,或者sySAdmin固定服務器角色下轄成員管理SQL Server實例。相反,要為DBA們設置專門的Windows登錄賬號,給這些賬號分配“sySAdmin”權(quán)限作為管理用途。要給用戶分配權(quán)限,可以使用內(nèi)建的固定服務器角色或者數(shù)據(jù)庫角色,也可以創(chuàng)建你自己定制的服務器角色和數(shù)據(jù)庫角色滿足你更精細化的權(quán)限控制。

禁用guest用戶訪問

默認情況下,guest用戶存在于每個用戶和系統(tǒng)數(shù)據(jù)庫下,它是安全封閉環(huán)境下的潛在安全風險,因為它允許與數(shù)據(jù)庫無關的用戶登錄訪問數(shù)據(jù)庫。由于這一潛在風險,我們需要在所有用戶和系統(tǒng)數(shù)據(jù)庫(除了msdb)中禁用guest用戶。這樣才能保證公共服務器角色成員不能訪問SQL Server實例上的用戶數(shù)據(jù)庫,除非用戶被明確授權(quán)訪問這些數(shù)據(jù)庫。

限制對公共角色授權(quán)

由于潛在的安全風險, 我們可以使用下面的擴展存儲過程取消公共角色的訪問權(quán)限。

此外,不要明確分配權(quán)限給用戶公共角色和對系統(tǒng)存儲過程的訪問。要列出公共角色可用的存儲過程,可以執(zhí)行如下查詢:

SELECT o.[name] AS [SPName]

,u.[name] AS [Role]

FROM [master]..[sysobjects] o

INNER JOIN [master]..[sysprotects] p

ON o.[id] = p.[id]

INNER JOIN [master]..[sysusers] u

ON P.Uid = U.UID

AND p.[uid] = 0

AND o.[xtype] IN ('X','P')

減少SQL Server Surface Area

配置SQL Server時應該僅安裝必要的功能特性,安裝后使用SQL Server系統(tǒng)的外圍界面禁用不需要的功能。你還可以使用基于策略的管理功能創(chuàng)建系統(tǒng)策略為一個或多個SQL Server系統(tǒng)實施精細配置設置。

強化SQL Server端口

另一項SQL Server安全性最佳實踐是使用SQL Server配置管理器修改SQL Server安裝時的默認端口。而且,要使用專門TCP端口替代動態(tài)端口。此外,要確保避開常見的TCP端口(比如1433和1434),不要用這些端口做客戶端請求和交互,因為這些端口過于為人熟知,容易成為攻擊目標。

禁用SQL Server瀏覽器服務

要確保SQL Server瀏覽器服務只運行在多個SQL Server實例運行其上的單個SQL Server上。SQL Server瀏覽器服務顯示了網(wǎng)絡環(huán)境中的SQL Server信息,這在安全封閉的環(huán)境中可能成為潛在安全威脅。

SQL Server服務賬號

我們應該創(chuàng)建專用低權(quán)限域賬戶來運行SQL Server服務。此外,要定期檢查SQL Server服務賬號成員,確保它們不是任何域用戶組或本地用戶組的成員,因為那樣會使這些用戶具備不必要的權(quán)限。

確保SQL Server錯誤日志和注冊鍵的安全

使用NTFS權(quán)限確保SQL Server錯誤日志和注冊鍵安全,因為它們可以展現(xiàn)關于SQL Server實例和安裝的大量信息。

更多信息請查看IT技術(shù)專欄

更多信息請查看數(shù)據(jù)庫
易賢網(wǎng)手機網(wǎng)站地址:SQL Server數(shù)據(jù)庫安全檢查清單
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇剩?/div>

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 加入群交流 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)