設定你的SQL SERVER 弱點分析 Configure Your SQL Server Attack Surface

在保護完善的系統中執行安全演習,例如侵入系統竊取資料的利益遠大於侵入攻擊系統的難度.為了要防禦每一種攻擊系統的手法,依靠深度防禦可以在幾個地方帶給攻擊者一些困難.

安裝你的執行個體期間,你可以指定幾個驗證選項模式是否可被存取.如果你限制執行個體只能透過Windows
登入認證存取的話,那你可以避免掉大部分的攻擊方法,因為這可以確保任何使用者的連線都必須先經過Windows網域的認證才能存取該執行個體.

安裝完後,你可以設定網路協定來允許遠端連線.如果沒有開啟遠端連線的話,攻擊者必須要先訪問並存取機器才可以登入你正在執行的執行個體.遠端連線和驗證模式的設定,通常都是你執行個體的第一道防線.

 

SQL Server 每個功能都能啟動存取,但同樣的也提供一種方法讓攻擊者可以找到如何進入系統的方法.攻擊者大多使用外部介面或ad
hoc 執行能力.當你安裝SQL Server 執行個體後,任何執行核心引擎的功能預設都是被停用的.

 

你可以透過執行個體中的系統預存程序 sp_configure 執行各種功能的啟動或關閉.下列清單描述你的執行個體上,有那些選項是該被應用的.除非你真的特別需要某些功能,不然下列清單中的功能都是應該被停用的:

Ad Hoc Distributed Queries

允許使用者執行 OPENROWSET和OPENDATASOURCE.由於查詢文字中會包含密碼,暴露登入和密碼的攻擊.你如擬需要頻繁的存取遠端資料來源,你應該使用連結的伺服器.

CLR Enabled

啟用 Common Language Runtime(CLR) 就表示可以使用任何.NET語言編寫觸發程序,使用者定義函數和預存程序,如C#.NET去執行你的SQL Server 引擎.如果CLR被關閉,將無法執行CLR.

Cross Database Ownership
Chaining (CDOC)

允許使用者不需要複查權限即可跨資料庫 ,只要擁有權鏈結沒有被停用.

Database Mail

啟用 Database Mail 功能.

External Key Management

允許核可外部密鑰管理 (EKM)軟體來管理你的執行個體所使用的加密密鑰.

Filestream Access Level

在你的執行個體上啟用 FILESTREAM功能.當你設定1時,你可以使用T-SQL來操作FILESTREAM資料.當你設定2時,你可以從你的應用程式直接使用Windows API和FILESTREAM資料有所互動.

OLE Automation Procedures

允許 OLE automation 程序被執行.你可以使用更穩定更靈活的CLR
程序來取代任何的OLE automation 程序,

Remote Admin Connections

啟用遠端專用管理員連接 (DAC).如果遠端管理連接沒有啟用,你必須先連接到該機器的桌面後執行你的執行個體,然後才能建立DAC連接.

SQL Mail XPs

啟用 SQL Mail 是為了向後相容.所有的SQL
Mail 功能都將被 Database Mail取代.

Xp_cmdshell

啟用 xp_cmdshell,這樣就能執行作業系統(operating system)命令.

 

 

來源出處: Microsoft Press book Microsoft SQL Server
2008 Step by Step
by Mike Hotek