高寒 喻金科
摘要:隨著計(jì)算機(jī)網(wǎng)絡(luò)通信技術(shù)的迅速發(fā)展,數(shù)據(jù)庫的應(yīng)用也越來越廣泛,數(shù)據(jù)庫的安全問題也成為學(xué)者的研究熱點(diǎn)。數(shù)據(jù)庫的安全是檔案管理系統(tǒng)設(shè)計(jì)中最為重要的一部分。大量的檔案數(shù)據(jù)存放在數(shù)據(jù)庫中,如果無法確保其安全性,將會導(dǎo)致系統(tǒng)中許多重要的數(shù)據(jù)丟失、被竊取、修改、損壞等一系列問題。文章以檔案管理系統(tǒng)為研究對象,分析數(shù)據(jù)庫的安全問題,并提出相對應(yīng)的策略與措施。
關(guān)鍵詞:檔案管理系統(tǒng);數(shù)據(jù)庫;安全問題;防范策略
1 檔案管理系統(tǒng)中數(shù)據(jù)庫的作用
近年來,隨著數(shù)據(jù)庫的不斷發(fā)展,網(wǎng)絡(luò)信息時(shí)代下的檔案管理方法越來越趨向于數(shù)字化,將原本耗費(fèi)大量人力物力的紙質(zhì)檔案轉(zhuǎn)變成計(jì)算機(jī)語言,使用統(tǒng)一的、智能化的軟件管理系統(tǒng),已經(jīng)逐漸成為檔案管理的主流。利用計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)和數(shù)據(jù)庫技術(shù),可以使檔案管理系統(tǒng)變得比較規(guī)范高效和安全。
檔案信息管理系統(tǒng)大多是以單位或部門的局域網(wǎng)為背景,運(yùn)用先進(jìn)的計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)和計(jì)算機(jī)信息處理手段,將相關(guān)的信息存放在數(shù)據(jù)庫中,這種方式有利于檔案的管理人員更加高效地處理繁瑣的單位或部門人員檔案信息。數(shù)據(jù)庫的安全性代表著整個(gè)系統(tǒng)的安全性,尤其對于大型國有企業(yè)、外資企業(yè)以及國家公務(wù)人員的檔案管理系統(tǒng)特別重要,檔案信息一旦泄露,將造成嚴(yán)重的后果。
2 數(shù)據(jù)庫中存在的不安全因素
數(shù)據(jù)庫的安全是指有效地保護(hù)數(shù)據(jù)庫,以防一些未授權(quán)操作者的不合法使用造成的數(shù)據(jù)泄密、更改及破壞。數(shù)據(jù)庫在正常的情況下都能夠保證數(shù)據(jù)的安全及其系統(tǒng)的穩(wěn)定,為用戶提供正確的數(shù)據(jù),但在網(wǎng)絡(luò)科技發(fā)達(dá)的今天,依然存在很多不安全因素。
2.1外界入侵
在檔案管理系統(tǒng)中,數(shù)據(jù)庫中存放著大量的個(gè)人重要信息,由于大多的管理系統(tǒng)是發(fā)布到局域網(wǎng)中,相關(guān)用戶可以通過應(yīng)用程序讀取相關(guān)的信息,因此就會遭到各種外部入侵。
外部入侵主要的表現(xiàn)形式有:(l)檔案數(shù)據(jù)庫中的內(nèi)容在應(yīng)用程序?qū)尤绻艿椒欠ㄓ脩舻牟樵?、修改和刪除等操作,會造成檔案數(shù)據(jù)庫數(shù)據(jù)信息的泄漏、更改和丟失。(2)檔案數(shù)據(jù)庫文件本身在操作系統(tǒng)層如果被非法用戶更名、移動、修改或者刪除,將會造成數(shù)據(jù)庫文件無法運(yùn)行訪問、被全部復(fù)制泄密或數(shù)據(jù)全部丟失等嚴(yán)重問題。(3)檔案管理系統(tǒng)數(shù)據(jù)庫在數(shù)據(jù)庫的存儲層遭到網(wǎng)絡(luò)黑客的非法攻擊,將會導(dǎo)致數(shù)據(jù)庫文件出現(xiàn)嚴(yán)重問題。
2.1.1計(jì)算機(jī)病毒
計(jì)算機(jī)病毒是近年來最常見的網(wǎng)絡(luò)安全問題之一,它可以自我復(fù)制,永久地或是通常是不可恢復(fù)地破壞自我復(fù)制的現(xiàn)場,達(dá)到破壞信息系統(tǒng)、取得信息的目的。從破壞效果上看,一部分計(jì)算機(jī)病毒會將儲存的數(shù)據(jù)信息刪除,另一部分則會導(dǎo)致計(jì)算機(jī)硬件由于超負(fù)荷運(yùn)轉(zhuǎn)而損壞。計(jì)算機(jī)病毒具有很強(qiáng)的傳染性,可以通過很多常見的渠道侵入電腦,防不勝防。一些計(jì)算機(jī)水平很高的非法分子往往會利用設(shè)計(jì)出的新的計(jì)算機(jī)病毒,以此來竊取管理系統(tǒng)中數(shù)據(jù)庫的信息。
2.1.2特洛伊木馬
木馬程序也是計(jì)算機(jī)網(wǎng)絡(luò)信息安全的一個(gè)重要威脅,相比于計(jì)算機(jī)病毒,木馬程序的隱秘性更強(qiáng),一些隱藏在公開的程序內(nèi)部,收集環(huán)境的信息,利用用戶的合法權(quán)限對數(shù)據(jù)安全進(jìn)行攻擊。它主要是利用網(wǎng)絡(luò)已有的漏洞,在防火墻中開一個(gè)“后門”并植入木馬病毒,悄無聲息地完成竊取信息的任務(wù)。病毒與木馬程序都是利用計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)自身的漏洞來完成攻擊,以互聯(lián)網(wǎng)為媒介,擴(kuò)大其傳播的范圍。
2.1.3天窗或隱秘通道
在管理系統(tǒng)的合法程序內(nèi)部的一段程序代碼,在特定的條件下如特殊的一段輸入數(shù)據(jù)將會啟動這段代碼,從而許可此時(shí)的攻擊可以跳過系統(tǒng)原本設(shè)置的安全稽核機(jī)制進(jìn)而輕易進(jìn)入系統(tǒng),以實(shí)現(xiàn)對數(shù)據(jù)防范的攻擊,達(dá)到竊取數(shù)據(jù)的目的。
2.2 SQL注入
應(yīng)用層在后臺數(shù)據(jù)庫傳遞結(jié)構(gòu)化查詢語言( StructuredQuery Language,SQL)查詢時(shí),如果為攻擊者提供了影響該查詢的能力,就會引發(fā)SQL注入。攻擊者通過影響傳遞給數(shù)據(jù)庫的內(nèi)容來修改SQL自身的語法和功能,并會影響SQL所支持?jǐn)?shù)據(jù)庫的功能。SQL注入是影響企業(yè)運(yùn)營且最具破壞性的漏洞之一。
2.3人為錯(cuò)誤與傳輸威脅
系統(tǒng)管理人員或系統(tǒng)的用戶某些錯(cuò)誤的輸入,應(yīng)用程序的不正確使用,都有可能導(dǎo)致系統(tǒng)內(nèi)部安全機(jī)制的失效,導(dǎo)致非法訪問數(shù)據(jù)的可能,也可能導(dǎo)致系統(tǒng)拒絕提供數(shù)據(jù)服務(wù)。大多數(shù)的數(shù)據(jù)庫都應(yīng)用在基本的網(wǎng)絡(luò)環(huán)境中,在網(wǎng)絡(luò)系統(tǒng)中無論是調(diào)用命令還是信息的反饋都是通過網(wǎng)絡(luò)傳輸實(shí)現(xiàn)的。因此對數(shù)據(jù)庫而言都存在著網(wǎng)絡(luò)信息傳輸?shù)耐{。
2.4物理環(huán)境及硬件的威脅
與紙質(zhì)存儲模式相似,網(wǎng)絡(luò)的信息存儲也需要相對穩(wěn)定且安全的環(huán)境。然而現(xiàn)實(shí)的生活之中總會出現(xiàn)各種非人力可以控制的自然的或者意外的事故,如地震、火災(zāi)、水災(zāi)等都會導(dǎo)致硬件的破壞,進(jìn)而導(dǎo)致數(shù)據(jù)庫的丟失和損壞。 磁盤故障、控制器故障、電源故障、存儲器故障以及芯片和主板故障都是計(jì)算機(jī)的硬件故障,這屬于人力不可控的范圍,一旦故障發(fā)生,將會導(dǎo)致數(shù)據(jù)的損毀、丟失,值得慶幸的是這不會導(dǎo)致數(shù)據(jù)的泄密。問能力及范圍,以防止非法用戶的侵入或合法用戶的不慎操作所造成的破壞。訪問控制策略定義了信息系統(tǒng)安全性最高層次的指導(dǎo)原則,包括對自主訪問控制(DiscretionaryAccess Control,DAC)、強(qiáng)制訪問控制(Mandatory AccessControl,MAC)、多級關(guān)系數(shù)據(jù)庫、基于角色及證書的訪問控制、數(shù)字版權(quán)管理等。
3.5數(shù)據(jù)庫加密技術(shù)
數(shù)據(jù)庫的加密系統(tǒng),主要是對存儲在數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行不同級別的存儲加密。數(shù)據(jù)庫的加密系統(tǒng)可以在3個(gè)不同層次實(shí)現(xiàn),分別是操作系統(tǒng)、DBMS內(nèi)核層及DBMS外層。加密的基本流程如圖1所示,將要加密的數(shù)據(jù)使用密匙進(jìn)行加密,變換成別人無法識別的形式。數(shù)據(jù)的解密過程是其逆過程。系統(tǒng)采用DBMS外層加密方式,數(shù)據(jù)加密算法使用3DES,動態(tài)的多級密匙管理。
3 數(shù)據(jù)庫的安全防范措施
針對檔案管理系統(tǒng)中可能會出現(xiàn)的上述幾種不安全因素,提出以下幾種防范措施。
3.1物理備份
數(shù)據(jù)庫的物理備份豐要是指不管所存儲的數(shù)據(jù)文件的內(nèi)容如何,全盤將數(shù)據(jù)庫文件拷
圖1數(shù)據(jù)加密基本流程貝作為備份,根據(jù)實(shí)施條件和方式不同,并考慮到提高數(shù)據(jù)保障度的需要將物理備份分為兩種,一是冷備份也稱脫機(jī)(offline)備份或后備,指在數(shù)據(jù)庫正常關(guān)閉后,對包括所有用戶的數(shù)據(jù)文件和表、所有日志文件、控制文件及數(shù)據(jù)庫初始化文件等所有文件及其功能進(jìn)行備份。二是熱備份也稱聯(lián)機(jī)(online)備份或后備,指在數(shù)據(jù)庫運(yùn)行狀態(tài)下將聯(lián)機(jī)日志的轉(zhuǎn)儲文件歸檔,在數(shù)據(jù)庫內(nèi)部建立一個(gè)所有進(jìn)程和作業(yè)的詳細(xì)、準(zhǔn)確的記錄備份,數(shù)據(jù)庫可從一個(gè)聯(lián)機(jī)備份中完全恢復(fù),并通過歸檔的日志恢復(fù)數(shù)據(jù)庫到過去某一時(shí)刻的狀態(tài)(也稱回滾)。聯(lián)機(jī)備份過程提供了完全的時(shí)間點(diǎn)恢復(fù),甚至可達(dá)秒級恢復(fù),并且是在數(shù)據(jù)庫保存打開和正常運(yùn)行的狀態(tài)下進(jìn)行。
3.2邏輯備份
數(shù)據(jù)庫的邏輯備份就是利用SQL將某個(gè)數(shù)據(jù)庫的記錄集讀出來并將其寫入一個(gè)轉(zhuǎn)儲文件中進(jìn)行保存。讀出來的這些記錄與其物理位置是無關(guān)的,這是數(shù)據(jù)庫備份經(jīng)常使用的一種方式。SQL Sever2008提供的export(導(dǎo)出)和import(導(dǎo)入)工具可用于實(shí)現(xiàn)數(shù)據(jù)庫的邏輯備份。
3.3異地備份
為防止物理環(huán)境及硬件的損壞所造成的數(shù)據(jù)信息的丟失,多數(shù)數(shù)據(jù)庫管理系統(tǒng)常采用一種備份方式為異地備份,將數(shù)據(jù)庫文件在另外的地方實(shí)時(shí)產(chǎn)生一份可用的副本,此副本的使用不需要做數(shù)據(jù)恢復(fù),可以將副本立即投入使用。異地備份也有很多的方式,云備份就是當(dāng)下最流行的一種方式。
3.4數(shù)據(jù)庫的訪問控制
訪問控制(Access Control,AC)是數(shù)據(jù)庫安全最基本、最核心的技術(shù),是通過某種途徑顯式地準(zhǔn)許或限制訪29
3.6 SQL注入防御
由于SQL注入攻擊針對的是應(yīng)用開發(fā)過程中的編程不嚴(yán)密,因而對于絕大多數(shù)防火墻來說,這種攻擊是“合法”的,問題的解決只有依賴于完善編程。可以通過代碼層進(jìn)行一些合理的操作來降低或消除SQL注入,也可以使用能提高應(yīng)用程序總體安全的運(yùn)行時(shí)優(yōu)化處理或配置更改的平臺層防御措施,還可以利用操作系統(tǒng)來預(yù)防SQL注入?,F(xiàn)今科技的發(fā)展下,解決SQL注入的問題的方式越來越多,數(shù)據(jù)庫的設(shè)計(jì)者可以通過不同的途徑和方式進(jìn)行對該數(shù)據(jù)庫的防御。
3.7數(shù)據(jù)庫水印技術(shù)
數(shù)據(jù)庫水印是指在不破壞數(shù)據(jù)庫數(shù)據(jù)的前提下,用新號處理的方法在數(shù)據(jù)庫數(shù)據(jù)中嵌入不易察覺且很難移除的標(biāo)記,以達(dá)到保護(hù)數(shù)據(jù)版權(quán)及驗(yàn)證數(shù)據(jù)庫數(shù)據(jù)完整性的目的。在數(shù)據(jù)庫中嵌入水印信息,是數(shù)據(jù)庫安全研究的一個(gè)新的研究方向,可以比較快地解決數(shù)據(jù)庫數(shù)據(jù)版權(quán)保護(hù)和完整性驗(yàn)證問題。
4結(jié)語
隨著網(wǎng)絡(luò)信息科技的不斷發(fā)展,數(shù)據(jù)庫在檔案管理系統(tǒng)中的應(yīng)用將會越來越廣泛,檔案系統(tǒng)的安全性倍受關(guān)注,因此,數(shù)據(jù)庫安全的課題也將越來越受關(guān)注,并將成為一個(gè)多方面的綜合性課題。目前,雖然對數(shù)據(jù)庫安全的保護(hù)措施已經(jīng)有了很大的進(jìn)展,但仍然還存在著目前無法根治的安全問題。筆者認(rèn)為,在未來的發(fā)展中,只有不斷地發(fā)現(xiàn)和解決新的問題,才能不斷地加強(qiáng)數(shù)據(jù)庫的安全性能,進(jìn)而提高檔案信息的安全性。
[參考文獻(xiàn)]
[1]劉智珺.數(shù)據(jù)庫安全性研究[J]武漢生物工程學(xué)院學(xué)報(bào),2006 (1):1-2
[2]王冬梅,丁莉.淺析Sqlsever數(shù)據(jù)庫安全措施[J]開發(fā)研究與設(shè)計(jì)技術(shù),2010 (1):145-146
[3]陳越,費(fèi)曉飛.數(shù)據(jù)庫安全[M].北京:國防工業(yè)出版社,2011
[4]劉濤,胡凱,等.大型數(shù)據(jù)庫應(yīng)用與安全[M].北京:中國水利水電出版社,2016
[5]克拉克.SQL注入攻擊與防御[M]黃曉磊,譯2版北京:清華大學(xué)出版社,2013
[6]劉曉強(qiáng).信息系統(tǒng)與數(shù)據(jù)庫技術(shù)[M].北京:高等教育出版社,2015.