第二十一天~~~ ,接續前面資料庫,今天來介紹一個不錯的SQL 漏洞評估工具
,可以利用SSMS內建功能確定資料庫的環境
、帳號
、資料
等設定有沒有風險
官網操作說明
功能僅適用於 SQL Server Management Studio (SSMS) v17.4 或更高版本
可能會因為版本差異掃描的規則數量會有不一樣
以下規則來源為:SQL Vulnerability Assessment rules reference guide所屬,針對規則逐步學習了解並記錄,有些規則不是適用於SQL Server就沒去了解行錫
高
帳號盤點,確保有無可疑帳號
中
中
高
高
高
高
SQL Server 提供角色來幫助管理權限。角色是對其他主體進行分組的安全主體。數據庫級角色在其權限範圍內是數據庫範圍的。此規則檢查最小的主體集是否是固定數據庫角色的成員
高
可以使用憑證或非對稱金鑰來簽署預存程序、函數或觸發程序。 這是針對無法透過擁有權鏈結繼承權限或擁有權鏈結中斷 (例如動態 SQL) 的案例所設計。 此規則會檢查對已簽署模組所做的變更,這類變更表示可能出現惡意用途。
中
中
中
中
低
低
低
低
低
低
低
低
低
低
高
Microsoft 不再支持舊版本的 SQL Server。
高
高
高
弱加密算法可能導致資料加密保護被破解!!
高
高
中
透明資料加密(TDE)可在不需變更應用程式的情況下,對資料庫、相關聯的備份和交易記錄檔執行即時加密和解密,防止資料洩漏。
VA1102:除 MSDB 以外的所有數據庫都應禁用 Trustworthy 高
開啟資料庫的Trustworthy屬性後。DB2上的User2可藉由預存程序模擬User1的身分去存取DB1上的資源。雖然很方便但相對也是很危險,一旦有心人士擁有某個資料庫db_owner或 db_ddladmin 等相關安全權利,且知道 login 及其他資料庫的 user 關係,就有安全疑慮。因為他可以輕易的利用Execute As的方式存取原本不可以碰觸的資源。
(要Alter Database Set TrustWorthy,需要Sysadmin的權限)
VA1245: 目標資料庫和主資料庫之間的dbo信息應該是一致的高
VA1256:不應在資料庫中定義使用者 CLR 組件高
VA1277:Polybase 網路加密應啟用高
PolyBase 是一項技術,可直接在SQL Server內存取與合併非關聯式和關聯式資料。Polybase網路加密選項會在使用 Polybase 時加密控制和資料通道。
VA1044:除非特別需要,否則應禁用遠程管理連接中
VA1051:應在所有資料庫上停用 AUTO_CLOSE中
AUTO_CLOSE 選項可指定資料庫是否正常關機,並在最後一個使用者中斷連線後釋出資源。
SELECT name AS [Role],type
FROM sys.database_principals
如果有任何錯誤的地方歡迎提出。
可以觀看我們團隊的鐵人發文喔~