摘 要:隨著信息社會的飛速發(fā)展,數(shù)據(jù)庫已經(jīng)在社會上和人們生活中占據(jù)了十分重要的地位,同時對數(shù)據(jù)庫安全有了更高的要求。數(shù)據(jù)庫安全就是指保護(hù)數(shù)據(jù)庫以防止非法使用所造成的信息泄露、更改或破壞,本文首先對數(shù)據(jù)庫安全的威脅因素作了介紹,然后基于SQL Server對數(shù)據(jù)庫的安全策略和配置進(jìn)行了探討。
關(guān)鍵詞:數(shù)據(jù)庫安全;SQL Server;安全配置
中圖分類號:TP311.13 文獻(xiàn)標(biāo)識碼:A 文章編號:1674-7712 (2013) 14-0000-01
近年,黑客盜取數(shù)據(jù)庫的手段和技術(shù)在不斷提升。雖然數(shù)據(jù)庫自身的防護(hù)能力也在提升,但相比黑客的手段來說,單純的數(shù)據(jù)庫防護(hù)還是力不從心。數(shù)據(jù)庫安全配置已經(jīng)不是一種新興的技術(shù)手段,但是卻在數(shù)據(jù)庫安全事件頻發(fā)的今天給我們以新的啟示。數(shù)據(jù)庫安全涉及黑客病毒、軟件漏洞以及安全意識缺乏等多方面。這就要求我們要加強數(shù)據(jù)庫安全意識并掌握一定的安全防范技術(shù)。
一、數(shù)據(jù)庫安全的威脅因素
數(shù)據(jù)庫安全就是指保護(hù)數(shù)據(jù)庫以防止非法使用所造成的信息泄露、更改或破壞,目前,數(shù)據(jù)庫受到的威脅大致有這么幾種:
(一)內(nèi)部人員錯誤
數(shù)據(jù)庫安全的一個潛在風(fēng)險就是內(nèi)部人員錯誤。最常見表現(xiàn)包括:由于內(nèi)部人員操作不慎而造成數(shù)據(jù)意外刪除或泄漏。雖然這并不是一種惡意行為,但很明顯,這種行為會造成某種意想不到的數(shù)據(jù)風(fēng)險。
(二)社交工程
由于攻擊者使用的釣魚技術(shù)比較高級,在合法用戶不知不覺地將安全機密提供給攻擊者時,就會發(fā)生很多嚴(yán)重攻擊。在此情況下,用戶可能會通過一個受到損害的網(wǎng)站等方式將信息提供給貌似合法的請求,從而不斷被釣魚攻擊。
(三)內(nèi)部人員攻擊
很多數(shù)據(jù)庫攻擊源自單位內(nèi)部。薪資水平以及人際矛盾都有可能引起雇員的不滿,從而導(dǎo)致內(nèi)部人員攻擊的增加。這些內(nèi)部人員受到貪欲或報復(fù)欲的驅(qū)使,且不受防火墻及入侵防御系統(tǒng)等的影響,容易給企業(yè)帶來風(fēng)險。
(四)錯誤配置
黑客可以使用數(shù)據(jù)庫的錯誤配置控制“肉機”訪問點,從而通過錯誤配置繞過認(rèn)證方法并訪問敏感信息。這種配置缺陷容易成為攻擊者借助特權(quán)發(fā)動某些攻擊的主要手段。如果沒有重新正確配置數(shù)據(jù)庫,非特權(quán)用戶就有可能訪問未加密的文件。
(五)未打補丁的漏洞
如今攻擊已經(jīng)從公開的漏洞利用發(fā)展到更精細(xì)的方法,并不斷挑戰(zhàn)傳統(tǒng)的入侵檢測機制。漏洞利用的腳本在數(shù)據(jù)庫補丁發(fā)布的幾小時內(nèi)就可以被發(fā)到網(wǎng)上。馬上就可以通過漏洞利用代碼,再加上好多單位的補丁周期比較長,實質(zhì)上幾乎把數(shù)據(jù)庫的大門完全打開了。
二、SQL Server的安全配置
數(shù)據(jù)庫的安全配置在進(jìn)行安全配置之前,首先必須對操作系統(tǒng)進(jìn)行安全配置,保證操作系統(tǒng)處于安全狀態(tài)。然后再對SQL Server的進(jìn)行必要的安全審核和安全配置。
(一)使用安全的密碼策略
密碼策略是所有安全配置的第一步,很多數(shù)據(jù)庫賬號的密碼太過簡單,這跟系統(tǒng)密碼太過簡單是一個道理。對于sa更應(yīng)注意,同時不要讓sa賬號的密碼寫于應(yīng)用程序或者腳本中。建議密碼含有多種數(shù)字字母組合并10位以上,同時養(yǎng)成定期修改密碼的好習(xí)慣,數(shù)據(jù)庫管理員應(yīng)該定期查看是否有不符合密碼要求的賬號。
(二)使用安全的賬號策略
由于SQL Server不能更改sa用戶名稱,也不能刪除這個超級用戶,所以除了使用一個非常強壯的密碼,最好不要在數(shù)據(jù)庫應(yīng)用中使用sa賬號,只有當(dāng)沒有其他辦法時才使用sa。建議數(shù)據(jù)庫管理員新建立一個擁有與sa一樣權(quán)限的超級用戶來管理數(shù)據(jù)庫。很多主機使用數(shù)據(jù)庫應(yīng)用只是用來做查詢、修改等簡單功能的,請根據(jù)實際需要分配賬號,并賦予僅僅能夠滿足應(yīng)用要求和需要的權(quán)限。安全的賬號策略還包括不要讓有管理員權(quán)限的賬號泛濫。
(三)加強數(shù)據(jù)庫日志的記錄
審核數(shù)據(jù)庫登錄事件的“失敗和成功”,在實例屬性中選擇“安全性”,將其中的審核級別選定為全部,這樣在數(shù)據(jù)庫系統(tǒng)和操作系統(tǒng)日志里面,就詳細(xì)記錄了所有賬號的登錄事件。請定期查看SQL Server日志檢查是否有可疑的登錄事件發(fā)生,或者使用DOS命令。
(四)管理擴展存儲過程
對存儲過程進(jìn)行大手術(shù),并且對賬號調(diào)用擴展存儲過程的權(quán)限要慎重。其實在多數(shù)應(yīng)用中根本用不到多少系統(tǒng)的存儲過程,而SQL Server的這么多系統(tǒng)存儲過程只是用來適應(yīng)廣大用戶需求的,所以請刪除不必要的存儲過程,因為有些系統(tǒng)的存儲過程能很容易地被人利用起來提升權(quán)限或進(jìn)行破壞。
(五)使用協(xié)議加密
SQL Server 2000使用的Tabular Data Stream協(xié)議來進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)交換,如果不加密的話,所有的網(wǎng)絡(luò)傳輸都是明文的,包括密碼、數(shù)據(jù)庫內(nèi)容等,這是一個很大的安全威脅。能被人在網(wǎng)絡(luò)中截獲到他們需要的東西,包括數(shù)據(jù)庫賬號和密碼。所以,在條件容許情況下,最好使用SSL來加密協(xié)議,當(dāng)然,您需要一個證書來支持。
(六)修改TCP/IP使用的端口
更改原默認(rèn)的1433端口。在實例屬性中選擇網(wǎng)絡(luò)配置中的TCP/IP協(xié)議的屬性,將TCP/IP使用的默認(rèn)端口變?yōu)槠渌丝凇T趯嵗龑傩灾羞x擇TCP/IP協(xié)議的屬性,選擇隱藏SQL Server實例。如果隱藏了SQL Server實例,則將禁止對試圖枚舉網(wǎng)絡(luò)上現(xiàn)有的SQL Server實例的客戶端所發(fā)出的廣播作出響應(yīng)。這樣,別人就不能用1434來探測您的TCP/IP端口了(除非用Port Scan)。
三、結(jié)束語
隨著計算機網(wǎng)絡(luò)技術(shù)的發(fā)展,數(shù)據(jù)庫應(yīng)用技術(shù)已經(jīng)深入到社會生活中的方方面面,數(shù)據(jù)庫安全問題將是一個永遠(yuǎn)都不會停止的話題,更加突出了數(shù)據(jù)庫安全的重要性。如何做好數(shù)據(jù)庫安全防范,也是一個很艱巨的工作。所以,我們必須結(jié)合實際情況,具體分析數(shù)據(jù)庫安全薄弱環(huán)節(jié),并制定切實可行的安全對策,才能更好地保護(hù)數(shù)據(jù)庫的安全。
參考文獻(xiàn):
[1]韓衛(wèi),張艷蘇.MIS中數(shù)據(jù)庫安全性研究[J].計算機工程,2002.
[2]劉智珺,潘雪峰.數(shù)據(jù)庫安全性研究[J].武漢生物工程學(xué)院學(xué)報,2006.
[3]劉啟原,劉怡.數(shù)據(jù)庫與信息系統(tǒng)的安全[M].北京:科學(xué)出版社,2000.