近幾年,醫(yī)院信息系統(tǒng)應(yīng)用越來越廣泛繁雜,醫(yī)院各種藥品處方數(shù)據(jù)、門診住院收費數(shù)據(jù)以及記錄患者診療過程的電子病歷都在醫(yī)院信息系統(tǒng)中得到統(tǒng)一存儲,醫(yī)院信息系統(tǒng)的信息安全也逐漸引起醫(yī)院的高度重視[1]。僅靠規(guī)章制度已無法完全禁止這些敏感數(shù)據(jù)不被非法統(tǒng)計、泄漏和修改,因此需要通過相應(yīng)的技術(shù)手段為醫(yī)院制度落實提供原始證據(jù),保存所有的查詢、更改記錄,從而確保準確解決實際問題[2]。
醫(yī)療工作對醫(yī)院信息系統(tǒng)的依托性越來越強,導(dǎo)致非法入侵醫(yī)院信息系統(tǒng)的手段錯綜復(fù)雜。原有的簡單用戶名、使用權(quán)限以及日志生成等管理已經(jīng)無法滿足醫(yī)院內(nèi)審計控制的需求,出現(xiàn)了以下問題:一個用戶名多人使用,長期閑置用戶名被使用,系統(tǒng)管理員分配的權(quán)限過大,黑客非法接入醫(yī)院局域網(wǎng)絡(luò)[3]。
造成這些安全問題的原因主要為:首先,醫(yī)院信息系統(tǒng)對于人員職責(zé)分配不明確,以及監(jiān)管失控等[4];其次,由于醫(yī)院信息系統(tǒng)是一個龐雜的系統(tǒng),安全漏洞屢見不鮮,黑客攻擊層出不窮;再次,個別醫(yī)院內(nèi)部工作人員受到統(tǒng)方等利益驅(qū)使[5],在不受防火墻、入侵檢測等網(wǎng)絡(luò)安全設(shè)備影響的情況下在系統(tǒng)內(nèi)部進行統(tǒng)方,給數(shù)據(jù)庫的安全帶來極大的威脅。
目前筆者所在醫(yī)院使用的數(shù)據(jù)庫管理系統(tǒng)已經(jīng)提供了記錄和監(jiān)視數(shù)據(jù)活動的功能,但存在很多漏洞。比如,依靠數(shù)據(jù)庫日志文件的審計方法,在開啟數(shù)據(jù)庫日志文件的功能時會影響數(shù)據(jù)庫自身的性能,并且數(shù)據(jù)庫日志文件也占據(jù)大量的存儲空間。日志文件顯示的是操作人員對數(shù)據(jù)庫的修改、插入和刪除等操作記錄,并沒有顯示對數(shù)據(jù)庫數(shù)據(jù)的查詢或瀏覽記錄[6],因此無法禁止不法人員查詢和竊取數(shù)據(jù)庫中重要的、保密的數(shù)據(jù)。更嚴重的是,數(shù)據(jù)庫日志文件有被插入、刪除、修改的風(fēng)險,無法體現(xiàn)審計的有效性與公正性。再比如,當審計和監(jiān)視的事件數(shù)量太大時,使用數(shù)據(jù)庫的安全監(jiān)視功能會影響服務(wù)器進程管理,從而導(dǎo)致跟蹤文件或跟蹤表變得很大,尤其在進行長時間監(jiān)視的情況下,直接影響醫(yī)療信息系統(tǒng)的性能和效率。綜上分析,應(yīng)用數(shù)據(jù)庫審計系統(tǒng)勢在必行。
數(shù)據(jù)庫審計系統(tǒng)能夠?qū)︶t(yī)院信息系統(tǒng)網(wǎng)絡(luò)中的各種數(shù)據(jù)庫進行全方位的安全審計,能保護醫(yī)院信息系統(tǒng)中的數(shù)據(jù)庫和服務(wù)器,具體包括以下幾方面。
審計系統(tǒng)記錄了所有對保護數(shù)據(jù)的訪問信息,其中包括文件操作、數(shù)據(jù)庫執(zhí)行SQL語句或存儲過程等。系統(tǒng)審計所有用戶對關(guān)鍵數(shù)據(jù)的訪問行為,防止外部黑客入侵訪問和內(nèi)部人員非法獲取統(tǒng)方等敏感信息。
審計系統(tǒng)統(tǒng)計和查詢所有被保護數(shù)據(jù)的變更記錄,包括核心業(yè)務(wù)數(shù)據(jù)庫表結(jié)構(gòu)、關(guān)鍵數(shù)據(jù)文件的修改操作等,防止外部和內(nèi)部人員非法篡改重要的醫(yī)療數(shù)據(jù)。
審計系統(tǒng)統(tǒng)計和查詢所有用戶的登錄成功和失敗嘗試記錄,記錄所有用戶的訪問操作和用戶配置信息及其權(quán)限變更情況,可用于事故和故障的追蹤和診斷。
審計系統(tǒng)記錄和發(fā)現(xiàn)用戶違規(guī)訪問,支持設(shè)定用戶黑白名單,支持定義復(fù)雜的合規(guī)規(guī)則,支持告警和阻斷。
應(yīng)用數(shù)據(jù)庫審計系統(tǒng)能夠?qū)W(wǎng)絡(luò)訪問數(shù)據(jù)庫的操作行為進行細粒度分析。該系統(tǒng)提供實時監(jiān)控、違規(guī)響應(yīng)、歷史行為回溯等操作分析功能,是滿足數(shù)據(jù)庫風(fēng)險管理和內(nèi)控要求、提升內(nèi)部安全監(jiān)管和保障數(shù)據(jù)庫安全的有效手段。
數(shù)據(jù)庫審計系統(tǒng)能夠深入細致地審計數(shù)據(jù)庫的各種操作及其內(nèi)容,能夠監(jiān)控和審計用戶通過各種方式訪問數(shù)據(jù)庫的行為。系統(tǒng)審計的行為包括DDL、DML、DCL及其他操作,審計的內(nèi)容可以細化到庫、表、記錄、用戶、存儲過程、函數(shù)、調(diào)用參數(shù)等[7](表1)。
表1 數(shù)據(jù)庫審計系統(tǒng)審計的操作行為
系統(tǒng)不僅能夠?qū)徲嫈?shù)據(jù)庫操作請求,還能審計操作的返回結(jié)果,包括成功或者失敗。如果失敗,還能夠?qū)徲嫷椒祷氐腻e誤碼。
數(shù)據(jù)庫審計系統(tǒng)對訪問數(shù)據(jù)庫、FTP操作進行實時、詳細的監(jiān)控和審計,包括各種登錄命令、數(shù)據(jù)操作指令、網(wǎng)絡(luò)操作指令,并審計操作結(jié)果,支持過程回放,真實地展現(xiàn)用戶的操作?;跁挼男袨榉治黾夹g(shù),管理員可以對當前網(wǎng)絡(luò)中所有訪問者進行基于時間的審查,了解每個訪問者任意一段時間內(nèi)先后進行了什么操作,并支持訪問過程回放。數(shù)據(jù)庫審計系統(tǒng)真正實現(xiàn)了對“誰、什么時間段內(nèi)、在什么機器上、對什么(數(shù)據(jù))、進行了哪些操作、結(jié)果如何”的全程審計[8]。
數(shù)據(jù)庫審計系統(tǒng)在識別出安全事故后,能夠自動或者用戶手動地對威脅進行響應(yīng),采取安全對策,從而形成安全審計的閉環(huán)。數(shù)據(jù)庫審計系統(tǒng)能夠?qū)I(yè)務(wù)網(wǎng)中所有IP的流量進行分析,因而能夠更為精確地定位安全威脅,并對符合策略的告警事件進行阻斷,實時自動阻止可疑行為[9]。數(shù)據(jù)庫審計系統(tǒng)可通過與網(wǎng)絡(luò)設(shè)備或安全設(shè)備共同協(xié)作來關(guān)閉威脅通信,以阻止正在進行的攻擊。數(shù)據(jù)庫審計系統(tǒng)可以與第三方網(wǎng)絡(luò)設(shè)備、安全設(shè)備進行聯(lián)動。通過數(shù)據(jù)庫審計系統(tǒng)與其他數(shù)據(jù)庫審計系統(tǒng)安全管理產(chǎn)品的綜合使用,可以實現(xiàn)完整的從安全風(fēng)險監(jiān)控、分析到?jīng)Q策的安全管理流程的閉環(huán)。
數(shù)據(jù)庫審計系統(tǒng)具有報表分析功能。系統(tǒng)的報表分析引擎從多種角度、多種維度對數(shù)據(jù)進行分析,提供實時分析、歷史分析等分析手段,對比統(tǒng)計的結(jié)果和分析數(shù)據(jù)的發(fā)展趨勢,將結(jié)果以圖形方式(柱圖、餅圖、曲線圖等)顯示、打印,報告可用PDF、DOC或XLS等格式存檔。
通過端口鏡像或者TAP方式將數(shù)據(jù)庫審計系統(tǒng)連接到網(wǎng)絡(luò)中。將審計系統(tǒng)設(shè)備放置在醫(yī)療相關(guān)服務(wù)器集中的交換機上,對交換機的端口做鏡像,再連接到審計系統(tǒng)上。系統(tǒng)管理員通過瀏覽器可以從院區(qū)任何位置登錄數(shù)據(jù)庫審計系統(tǒng)進行各項操作[10](圖1)。
圖1 數(shù)據(jù)庫審計系統(tǒng)與核心交換機、服務(wù)器等連接網(wǎng)絡(luò)拓撲圖
數(shù)據(jù)庫審計系統(tǒng)設(shè)備在醫(yī)院主服務(wù)器與客戶端之間,對所有經(jīng)過數(shù)據(jù)庫服務(wù)器的數(shù)據(jù)進行審計分析,具體方法如下。
4.2.1 數(shù)據(jù)抓取
查找所有經(jīng)過數(shù)據(jù)庫審計系統(tǒng)的物理網(wǎng)卡列表,通過本系統(tǒng)IP地址定位當前正在使用的計算機網(wǎng)卡,真正抓取局域網(wǎng)中流經(jīng)計算機網(wǎng)卡的數(shù)據(jù)幀信息。
4.2.2 數(shù)據(jù)過濾
數(shù)據(jù)在應(yīng)用層將通過3方面進行數(shù)據(jù)過濾:接受TCP協(xié)議的數(shù)據(jù)包的協(xié)議過濾,接受訪問目的地址為數(shù)據(jù)庫服務(wù)器IP地址的數(shù)據(jù)包,接受Oracle數(shù)據(jù)庫目的端口過濾并按照審計需求留存需要的數(shù)據(jù)、過濾掉其余的數(shù)據(jù)(圖2)。
4.2.3 數(shù)據(jù)分析
根據(jù)TCP協(xié)議的數(shù)據(jù)結(jié)構(gòu)對留存的數(shù)據(jù)進行分析處理,將所有數(shù)據(jù)設(shè)置為可讀數(shù)據(jù)。在局域網(wǎng)中抓取到的數(shù)據(jù)庫數(shù)據(jù)幀信息在網(wǎng)絡(luò)傳輸過程中保持不變,對這些數(shù)據(jù)庫數(shù)據(jù)幀信息進行分析得到相關(guān)局域網(wǎng)絡(luò)的信息。數(shù)據(jù)庫審計系統(tǒng)的數(shù)據(jù)分析在傳輸層與TCP協(xié)議一致,按照TCP/IP協(xié)議的數(shù)據(jù)結(jié)構(gòu)對抓取到的數(shù)據(jù)庫數(shù)據(jù)幀數(shù)據(jù)進行解析以獲得網(wǎng)絡(luò)層和傳輸層的相關(guān)信息。應(yīng)用層的信息經(jīng)過傳輸層和網(wǎng)絡(luò)層的封裝后,對TCP/IP協(xié)議的具體數(shù)據(jù)結(jié)構(gòu)進行分析。
4.2.4 日志生成
將符合條件的數(shù)據(jù)生成日志存儲在日志文件中,對所有的留存數(shù)據(jù)按照權(quán)限審計、語句審計、用戶審計3種策略分類并進行統(tǒng)計分析(圖3)。
圖2 數(shù)據(jù)庫審計系統(tǒng)——留存數(shù)據(jù)顯示
圖3 數(shù)據(jù)庫審計系統(tǒng)——日志生成
通過數(shù)據(jù)庫審計系統(tǒng)自動報警或系統(tǒng)管理員進入系統(tǒng)查看,就可以對醫(yī)院信息系統(tǒng)數(shù)據(jù)庫的操作行為進行審計判斷,從而實現(xiàn)對統(tǒng)方操作及惡意刪除、修改、破壞數(shù)據(jù)庫的行為進行實時準確判斷[11],并記錄統(tǒng)方行為及惡意操作人所使用計算機的IP地址、發(fā)生時間以及操作人所使用的用戶名等,保證了醫(yī)院信息系統(tǒng)數(shù)據(jù)的安全性[12](圖4)。
圖4 數(shù)據(jù)庫審計系統(tǒng)——記錄事件結(jié)果
在審計系統(tǒng)應(yīng)用過程中,筆者發(fā)現(xiàn)數(shù)據(jù)庫審計系統(tǒng)存在一個漏洞,即系統(tǒng)在獲取連接數(shù)據(jù)庫客戶端的IP地址及MAC地址時,比對在用戶注冊表中不存在的地址后不能以會話的方式自動斷開,醫(yī)院信息系統(tǒng)的安全仍然存在隱患。對此,筆者重新調(diào)整了系統(tǒng)并在系統(tǒng)中建立了系統(tǒng)自動生成的日志表和存放不法登錄的黑客的黑名單表,使以上不安全因素得以解決[13]。
在系統(tǒng)應(yīng)用過程中,借助審計系統(tǒng)的多端口偵聽(Multi-Port Detection)技術(shù),還可以同時偵聽多個不同網(wǎng)段的網(wǎng)絡(luò)通訊,對在物理或邏輯上隔離的多個網(wǎng)絡(luò)進行了審計(圖5)。
圖5 數(shù)據(jù)庫審計系統(tǒng)連接多個不同網(wǎng)段的網(wǎng)絡(luò)拓撲圖
本文對醫(yī)院信息系統(tǒng)數(shù)據(jù)庫的安全狀況進行分析的同時,提出了應(yīng)用數(shù)據(jù)庫審計系統(tǒng)的必要性。從審計系統(tǒng)的功能及應(yīng)用效果來看,實現(xiàn)了對數(shù)據(jù)庫進行準確、高效、全面的審計,有效地解決了醫(yī)院信息系統(tǒng)在使用過程中的安全問題,而且審計系統(tǒng)自身的可用性沒有對整個醫(yī)院信息系統(tǒng)的可用性造成任何影響。