莊淼
摘要:SQL Server作為一種數(shù)據(jù)庫管理系統(tǒng),因其操作簡便,程序并不復雜因此被廣泛應用到各行各業(yè)中,是當前中小型數(shù)據(jù)庫管理的重要工具。但是,隨著信息技術(shù)、計算機技術(shù)的不斷發(fā)展,數(shù)據(jù)庫中的數(shù)據(jù)信息日益增長,而網(wǎng)絡的全面普及,使得數(shù)據(jù)庫與網(wǎng)絡資源之間關(guān)系更為密切,海量的數(shù)據(jù)信息成為非法入侵的重要對象。可以說,網(wǎng)絡的安全對數(shù)據(jù)庫的安全性有著極為重要的影響,加強SQL Server數(shù)據(jù)庫安全影響因素分析,提高系統(tǒng)安全性能刻不容緩?;诖?,本文立足SQL Server數(shù)據(jù)庫實際,以數(shù)據(jù)庫系統(tǒng)安全設計的重要性為切入點,對當前SQL Server數(shù)據(jù)庫存在的安全隱患進行全面剖析,并提出了相應的優(yōu)化措施,以期能夠推動SQL Server數(shù)據(jù)庫的安全性。
關(guān)鍵詞:SQL Server數(shù)據(jù)庫;安全性能;優(yōu)化設計
中圖分類號:TP311? ? ? ? 文獻標識碼:A
文章編號:1009-3044(2019)17-0001-02
開放科學(資源服務)標識碼(OSID):
近幾年,隨著SQL Server數(shù)據(jù)庫的全面普及,給人們的日常生活、工作都帶來了很多便捷,尤其是現(xiàn)代工業(yè)產(chǎn)業(yè)都需要SQL Server數(shù)據(jù)庫的技術(shù)支撐,SQL Server數(shù)據(jù)庫的有效發(fā)展對整個社會的科技、經(jīng)濟、文化等領(lǐng)域的發(fā)展都有著極為重要的促進作用。因此,立足SQL Server數(shù)據(jù)庫的廣泛應用,探討其安全影響因素,優(yōu)化設計措施,對推動現(xiàn)代社會科技發(fā)展以及經(jīng)濟增長都有著極為深遠的現(xiàn)實意義。
1 SQL Server數(shù)據(jù)庫安全設計的重要性
隨著網(wǎng)絡信息技術(shù)的廣泛發(fā)展和全面普及,在很大程度上推動了SQL Server數(shù)據(jù)庫相關(guān)技術(shù)的進一步發(fā)展和應用。尤其是在信息技術(shù)、計算機技術(shù)等的應用過程中,數(shù)據(jù)庫技術(shù)是基礎,同時也是關(guān)鍵,主要是由于數(shù)據(jù)庫中儲存著海量信息,因此數(shù)據(jù)庫的安全運行決定著這些數(shù)據(jù)的安全性。可以說,在確保數(shù)據(jù)庫正常運行的基礎上,進一步優(yōu)化系統(tǒng)設計,是提高數(shù)據(jù)庫安全性的重要手段[1]。SQL Server數(shù)據(jù)庫在很多企事業(yè)中應用較為普遍,建立一個高效、安全的數(shù)據(jù)庫運行機制能夠確保系統(tǒng)的有效運行。
在當前SQL Server數(shù)據(jù)庫的運行過程中,數(shù)據(jù)庫安全設計的優(yōu)化關(guān)鍵就在于保護數(shù)據(jù)庫中的信息數(shù)據(jù),確保數(shù)據(jù)信息的安全和完整,提高數(shù)據(jù)庫的保密性。因為,一旦數(shù)據(jù)庫遭遇非法入侵,其所存儲的數(shù)據(jù)的安全性將受到嚴重威脅,極易出現(xiàn)資料外泄,從而給用戶造成嚴重的經(jīng)濟損失。對此,為了確保SQL Server數(shù)據(jù)庫中數(shù)據(jù)的安全,就必須要加強系統(tǒng)的安全設計。
2 SQL Server數(shù)據(jù)庫安全影響因素分析
2.1不良的口令政策
在SQL Server數(shù)據(jù)庫的使用過程中,很多用戶長期采用單一口令,或是直接默認口令來進行SQL Server數(shù)據(jù)庫以及數(shù)據(jù)信息的保護工作,這是影響SQL Server數(shù)據(jù)庫安全的重要因素之一。因此,必須要加強口令政策,定期更改系統(tǒng)口令,同時用戶所設置的口令必須要達到10位數(shù)以上,并采用數(shù)字+字母+符合的形式,以此來增強口令的性能級別。
2.2 SQL 注入
SQL注入是基于現(xiàn)行的SQL Server數(shù)據(jù)庫應用,將非法請求傳送到數(shù)據(jù)庫后臺執(zhí)行的一種技術(shù)手段。在如何實現(xiàn)將非法請求傳遞到數(shù)據(jù)庫后臺的工作中,如果SQL Server數(shù)據(jù)庫在接收到傳遞信息時,未對指令的安全性進行驗證就直接傳遞到SQL進行運作請求,那么就為SQL注入提供了直接攻擊和非法入侵的條件[2]。比如,攻擊者通過對SQL語句進行偽裝或篡改,或是按照系統(tǒng)原有的網(wǎng)絡格式對正確指令進行修改,從而將帶有病毒性的SQL請求以正確指令的形式向SQL Server數(shù)據(jù)庫進行傳輸。
2.3 交叉站點腳本
SQL Server數(shù)據(jù)庫在接收傳輸數(shù)據(jù)或是指令后,必須要進行嚴格的審核和驗證,對數(shù)據(jù)或指令進行清潔處理,從而有效避免出現(xiàn)交叉站點腳本攻擊。交叉站點腳本攻擊方式能夠?qū)eb服務器原有的數(shù)據(jù)庫連接進行破壞,通常情況下黑客(入侵者)可以借助網(wǎng)絡蠕蟲,將客戶方的站點腳本路徑改為網(wǎng)絡應用程序的輸出路徑,以此來收集用戶cookie的相關(guān)數(shù)據(jù)資源,進而獲取用戶的賬戶登錄信息。
2.4數(shù)據(jù)丟失
影響SQL Server數(shù)據(jù)庫安全的因素中,最常見同時也是最不受重視的問題就是數(shù)據(jù)的丟失情況。在數(shù)據(jù)庫進行數(shù)據(jù)傳輸、存儲以及使用過程中由于人為操作不當,會導致重要數(shù)據(jù)的傳輸區(qū)域的安全性得不到有效保障,從而使得數(shù)據(jù)庫備份磁帶的安全性受到影響。常見情況是一些十分重要的數(shù)據(jù)在合法查詢的答案中產(chǎn)生,使得重要信息意外泄露,因此需要加強數(shù)據(jù)的監(jiān)督和檢查。
3 SQL Server數(shù)據(jù)庫安全性能的優(yōu)化措施
3.1設置驗證模式,使用強密碼
加強SQL Server數(shù)據(jù)庫安全性能的優(yōu)化設計,首先要強化身份驗證和訪問許可。其中,在身份驗證中可以設計兩種模式:Windows身份驗證和混合驗證。當然,為了能夠切實提高SQL Server數(shù)據(jù)庫的安全,建議使用Windows身份驗證。當用戶通過Windows進行賬號連接時,SQL Server系統(tǒng)將借助Windows主體對用戶的賬號和密碼進行審查和驗證,也就是說由Windows對用戶的身份進行最終確認[3]。Windows身份驗證是依托于Kerberos 安全協(xié)議所提供的強密碼驗證手段。若是選擇混合驗證模式時,因為SQL Server數(shù)據(jù)庫系統(tǒng)的管理員賬號sa并非保密的,因此就成為非法入侵的首要攻擊對象,所以除非系統(tǒng)程序需要使用sa賬號,否則應當禁止sa賬戶。尤其是在對sa賬戶進行密碼設置時,應當選擇強密碼驗證,這是因為如果sa賬戶密碼為空或是弱密碼,很多入侵者通過相關(guān)軟件工具能夠?qū)ζ淇诹钸M行破解,如圖1所示,借助X-SCAN工具就能夠獲得主機10.106.1.27的SQL Server數(shù)據(jù)庫管理員的賬號密碼。
如果sa賬戶密碼一旦被入侵者破解獲取,那么其就可以通過對系統(tǒng)存儲過程sp_configure的調(diào)用,實現(xiàn)對擴展存儲過程xp_cmd?shell的運行,進而將命令字符通過xp_cmdshell轉(zhuǎn)化為系統(tǒng)的操作命令并執(zhí)行,最后以文本形式對有所輸出進行返回。比如,入侵者要想在SQL Server數(shù)據(jù)庫服務器所在主機新建一個hacker$系統(tǒng)賬號,就可以通過對系統(tǒng)存儲過程進行調(diào)動,執(zhí)行exec xp_cmdshell 'net user hacker$ hacker888/add'命令,將新建的hacker$系統(tǒng)賬號提升為管理員,進而對服務器所在主機進行非法入侵,盜取相關(guān)數(shù)據(jù)信息,后果不堪設想。
3.2加強SQL Server數(shù)據(jù)庫的訪問控制
除了通過設置身份驗證外,還可以借助訪問許可的控制來提高SQL Server數(shù)據(jù)庫的安全性。在SQL Server數(shù)據(jù)庫安全性能優(yōu)化設計過程中,進行系統(tǒng)訪問許可控制主要是對用戶訪問數(shù)據(jù)庫的圖表、應用、數(shù)據(jù)等項目進行權(quán)限控制,同時根據(jù)用戶的身份信息對其刪除、增減、修改等權(quán)限進行約束。SQL Server數(shù)據(jù)庫的訪問控制設計主要是依托用戶身份分類管理來實現(xiàn)的,訪問控制設計技術(shù)是整個系統(tǒng)安全設計的重要環(huán)節(jié),主要由SQL Server數(shù)據(jù)庫系統(tǒng)的授權(quán)設計、SQL Server數(shù)據(jù)庫的訪問權(quán)限管理以及SQL Server數(shù)據(jù)庫權(quán)限分類三部分組成,加強這三部分的安全設計,就能夠在很大程度上提高SQL Server數(shù)據(jù)庫安全管理的有效性。
3.3數(shù)據(jù)庫的備份和恢復策略
在影響SQL Server數(shù)據(jù)庫安全的因素中操作不當、人為破壞、黑客攻擊等都有可能會導致數(shù)據(jù)庫數(shù)據(jù)丟失,因此通過系統(tǒng)備份和數(shù)據(jù)恢復技術(shù)能夠?qū)?shù)據(jù)丟失風險降至最低,并確保SQL Server數(shù)據(jù)庫的正常運作。因此,SQL Server數(shù)據(jù)庫優(yōu)化設計過程中,強化備份和恢復功能是極為重要的措施。一旦數(shù)據(jù)庫發(fā)生系統(tǒng)故障,就可以通過備份文件和日志文件將數(shù)據(jù)恢復到出現(xiàn)故障前的狀態(tài),雖然不能確保數(shù)據(jù)完全恢復,但是也能將數(shù)據(jù)丟失所帶來的損失降至最低。因此,在設計備份和恢復功能時,要著重注意以下幾方面問題:①備份類型的選擇。常用的備份類型有完全備份、日志備份、差異備份等。完全備份就是對整個SQL Server數(shù)據(jù)庫進行全面?zhèn)浞荩鋬?yōu)點是備份涵蓋面廣,但是在備份過程中消耗時間長,占用空間資源大。因此,全面?zhèn)浞菘擅恐芏ㄆ谶M行一次,通常用戶大多選擇這一備份形式。日志備份是與數(shù)據(jù)庫文件區(qū)分并獨立存在的文件,主要是對數(shù)據(jù)庫中插入、更新、刪除、提交等模式變化進行記錄,在進行備份時只需要對上次備份進行復制就可以實現(xiàn)對數(shù)據(jù)庫數(shù)據(jù)的備份,由于這種模式耗時少,因此需要在較短時間內(nèi)自動進行備份。差異備份主要是指在對系統(tǒng)進行全面?zhèn)浞莺蟮竭M行差異備份這一時間段,對系統(tǒng)中存在修改、增減的文件進行備份,這種備份方式所占磁盤空間不大,同時備份時間適宜,建議以天為單位進行備份。②備份設備。在對SQL Server數(shù)據(jù)庫進行數(shù)據(jù)備份時,所選用的備份設備要便于能夠存儲備份數(shù)據(jù)庫,比如磁盤設備等。
結(jié)語:通過實踐研究顯示在SQL Server數(shù)據(jù)庫的應用過程中,要想提高數(shù)據(jù)庫的安全性能,就必須要意識到影響其安全性的因素,通過采取設置驗證模式,使用強密碼、加強SQL Server數(shù)據(jù)庫的訪問控制、數(shù)據(jù)庫的備份和恢復策略等優(yōu)化設計手段,為SQL Server數(shù)據(jù)庫的安全管理提供有力保障,確保系統(tǒng)數(shù)據(jù)的查詢、使用以及存儲過程更加安全可靠。
參考文獻:
[1] 武萬軍. SQL數(shù)據(jù)庫的構(gòu)建與安全性維護技術(shù)方案研究[J].數(shù)字技術(shù)與應用,2016(3):210-210.
[2] 陳巖巖 . SQL Server數(shù)據(jù)庫性能的影響因素及性能優(yōu)化路徑[J].現(xiàn)代信息科技,2017.
[3] 陳紅艷. 淺析SQL Server數(shù)據(jù)庫的安全問題[J].科技創(chuàng)新導報,2016(35).
[4] 錢文波, 謝金寶. SQL Server數(shù)據(jù)庫性能優(yōu)化技術(shù)[J].微型機與應用,1999,18(3):7-9.
【通聯(lián)編輯:唐一東】