一、 安全威脅與法則
1、 安全定義
2、 安全威脅
3、 安全法則
安全定義:
在SQLServer環境中,安全性可以認為是【數據保護】。包括:
? 數據只能被已授權的用戶訪問。
? 數據被安全地存儲。
? 數據要被安全地傳輸。
? 數據可恢復
以下是詳解:
1、 數據只能被已授權的用戶訪問:
必須使用一個強身份驗證機制去確保數據被安全地訪問。從2000開始(以前的沒用過),允許SQL登錄及Windows認證登錄。其中Windows身份驗證更為安全。
2、 數據被安全地存儲:
首先要保證數據文件被安全地存放在文件系統中。安全的文件系統要求用戶被授權后才能訪問其任何文件。NTFS格式的文件系統能提供內置的和外接驅動系統足夠的安全性。Storage Area Networks(SANs)系統同樣能提供高安全性。
3、 數據要被安全地傳輸:
對于數據安全傳輸的問題,要考慮的其中一點是SQLServer和請求應用程序之間的路徑安全。要時刻記住請求應用程序未必就是終端用戶系統(各類Windows操作系統)。很多請求應用程序是另一個服務器。對此,數據傳輸都需要加密。對于網絡環境(不管有線無線,特別是無線),加密是唯一的安全保障。
4、 數據可恢復:
對于某些攻擊者,只希望你丟失數據,對此,不許做好備份并保證備份存儲的安全。
為安全目的的數據分類:
數據的安全性根據企業的發展而有所變化。所有數據都有其價值,但是在安全分類時,必須有所側重。可以通過以下步驟獲取分類信息:
? 通過問卷來確定信息的價值。
? 對于每類信息,作出合適的應用。
? 對于每類的安全分類,作出適當的安全方案來保護。
以下在安全性中有所作用的安全方案:
? Firewalls(防火墻)(63%)
? Antivirus(殺毒軟件)(59%)
? Encryption(加密)(46%)
? VPNs(虛擬專用網絡)(45%)
? Strong Passwords(強密碼策略)(40%)
? Spam filtering(垃圾郵件過濾)(35%)
? E-Mail security(電子郵件安全)(34%)
安全理論:
為什么經常會受到攻擊?80%的公司來自于內部人員,比如有個員工受到某種刺激,有可能就會報復,這時候你的安全策略是否足夠。不管來自于誰的攻擊,足夠的安全策略都是需要的。對于攻擊者,無論其攻擊程度如何,都必須嚴陣以待。
真實世界中的安全:
每一個組織都需要處理信息、網絡和系統安全。你必須使用一些方法來保護,包括:
1、 授權
2、 認證
3、 賬號
4、 加密等等必要措施。
對于網絡系統,必須使用授權和認證來確保只有指定的人才能管理設備。
對于數據庫系統安全,你需要確保基于應用系統的代碼安全。對此,需要整理出一份安全檢查列表,并定時檢查。
安全威脅
威脅、漏洞和使用漏洞利用。
理解威脅、漏洞和使用漏洞利用首先要評估網絡安全。
1、威脅:指對系統的單獨、一組、環境甚至潛在損害。威脅分成兩部分:蓄意和無意的。
蓄意威脅:包括所有人的意愿想去做的行為。
無意威脅:一些只有上帝才知道什么時候會發生的行為。如電擊、臺風等不可抗拒的情況。一些人為的“錯誤”行為也包含在這部分。
2、漏洞:指系統或者對象(系統的一部分或者它的一個依賴實體)的一個弱點。
需要從硬件、軟件層面去分析,硬件方面可以通過供應商獲得,軟件方面就需要做充分的測試。
3、 漏洞利用:通過特定方法是漏洞暴露并利用。
攻擊者通過下面步驟嘗試進入系統:
3.1、在網絡中掃描的設備。
3.2、掃描這些設備。
3.3、發現正在運行的服務的版本。
3.4、研究漏洞。
3.5、發布針對一個或多個漏洞的攻擊。
通過這些步驟,你可以使用很多工具來實現你的攻擊。但作為計算機從業人員,不應該隨意攻擊別人。
攻擊目標一:Windows Server:
Windows/Linux操作系統是攻擊重點之一,因為它的重要性及使用廣泛性。如果攻擊者能滲透甚至毀滅Windows Server,對SQL Server的使用將是嚴重的打擊。攻擊方法有:
? 使用已知漏洞。
? 使用配置中的錯誤。
? 使用運行中的服務。
攻擊者可以通過各種方法,如掃描引擎、查找論壇等方式,找到已經漏洞。一些網站也提供這些信息:
http://www.microsoft.com/security/
http://milw0rm.com/
http://zone-h.org/
http://hackerwatch.org/
http://secunia.com/advisories/product/
作為DBA,應該不時地到這些地方查看在你所使用的硬件、操作系統和應用程序中的漏洞。并且深入研究SQLServer方面的漏洞。
配置錯誤攻擊可以通過使用【強密碼策略】來避免。但是,這一步需要一個團隊來協助。因為每個技術都需要在配置中能夠適合安全策略。
使用Microsoft Baseline Security Analyzer(MBSA):
在安裝了SQLServer的操作系統中使用MBSA是一個好的開始,可以使用以下步驟實現:
1、 使用管理員登錄Windows Server
2、 登錄網站并下載對應版本操作系統的軟件,然后安裝。同時注意,要選擇對應的語言。http://www.microsoft.com/downloads/details.aspx?familyid=B1E76BBE-71DF-41E8-8B52-C871D012BA78&displaylang=en
3、 安裝MBSA,并選擇默認安裝路徑。
4、 打開MBSA,然后掃描默認計算機名。根據計算機的配置不同,程序可能要運行幾秒到幾分鐘。
有很多服務無論使用什么方法都是不安全的。比如telnet等。所以,除非支持SSH甚至更高級別的安全方案,否則不要使用telnet。無線熱點和舊的網絡也是具有不安全性。
使用認證系統:
認證系統是用于驗證用戶ID和允許授權用戶訪問資源。認證系統基于【證書】。
證書包含以下類型:
Something you know:包含密碼和PINs(個人識別號)
Something you have:包含key、smart cards、甚至RFID(無線射頻識別)條。
Something you Are:包含生物體的特征,如指紋、視網膜、甚至體重。
Windows Server支持以上三中證書。
認證系統可被弱協議、弱憑證等破解。
30位的小寫密碼組合就有254,186,582,832,900,000,000,000,000,000,000,000,000種。需要400萬*10的4次方年才能破譯。這對攻擊是沒有任何價值。
加密
對于敏感數據,必須加密。加密操作通常在兩個地方實現:傳輸和存儲。
對于傳輸加密,由于容易影響性能,需要權衡。但在無線環境中,數據的安全性就顯得很重要,特別是密碼程度不足的時候。
對于存儲加密,很多存儲攻擊實際上是認證攻擊。
攻擊目標二:SQL Server
SQLServer服務本身就是一個重要的攻擊點。由于SQL 登錄僅僅是密碼登錄,沒有什么安全性可言。需要關閉SQLServer非必須的服務。可以通過以下網站查看漏洞:
http://www.microsoft.com/technet/security/Bulletin/MS09-004.mspx
http://www.microsoft.com/technet/security/bulletin/ms08-040.mspx
攻擊目標三:網絡
如果網絡不安全,客戶端和服務器都很容易被攻擊
有線網絡
可以通過端口來攻擊,較為安全但已經越來越少的方式是“撥號連接”。
要重點防御:1433端口。
無線網絡
這步相關知識太多,不在這里詳解。
攻擊目標四:客戶端
客戶端往往是容易被忽略的攻擊目標。客戶端容易被攻擊的地方是SQL Injection(sql注入)、IIS/Apache、瀏覽器
當然,最容易的其中一種攻擊就是利用社交關系!!!
安全法則:
在具有良好的配置以后,需要考慮一些法則性的問題:
? 良好的設計是開端
? 信任,但要監控
? 深度防御
? 最小權限原則
良好的設計是開端
你所設計的系統必須首先是安全的。你的系統必須對必要的性質和功能開放,這種系統也叫:Closed-to-open 系統,在網絡部分,最少三個方面需要考慮:
? 網絡設計與安全性
? 安全方案的邊界
? 連通性方案
網絡設計與安全性
安全性必須在系統或者網絡中設計開始時就被考慮進去。安全設計包括創建系統和實現層級來保護有價值的信息。
安全方案的邊界
在Internet和DMZ(非軍事化區域)中創建防火墻是比較好的方法。
連通性方案
可以使用VLANs來增強安全性
信任,但監控
包括防御侵入、殺毒軟件和反流氓軟件等
深度防御
包括:
? 用戶意識
? 客戶端安全
? 網絡安全
? 服務器安全
? 邊界安全
最小權限
只賦予任務所需的最小權限即可。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
