金 憲 珊
(樹蘭(杭州)醫(yī)院 浙江 杭州 310011)
醫(yī)院聯(lián)網(wǎng)的醫(yī)療設(shè)備包含輸液泵、核磁共振設(shè)備、X光機(jī)、CT、超聲設(shè)備、葡萄糖測(cè)定儀、心電監(jiān)護(hù)儀、血?dú)夥治鰞x等,研究發(fā)現(xiàn)醫(yī)療設(shè)備充斥各種可能被網(wǎng)絡(luò)罪犯以不同方式利用的漏洞。一般的電腦和服務(wù)器通常運(yùn)行殺毒和其他安全軟件,而醫(yī)療設(shè)備由于其特殊性和局限性不能采取通用電腦或服務(wù)器那樣的解決方案。當(dāng)惡意軟件植入到醫(yī)療設(shè)備中,就可以盜竊醫(yī)療信息,醫(yī)療設(shè)備被入侵,病患的健康、安全和隱私都面臨巨大的風(fēng)險(xiǎn)。傳統(tǒng)的安全解決方案是建立在已知惡意軟件的特性和行為基礎(chǔ)之上的,保護(hù)的是性質(zhì)相同的IT網(wǎng)絡(luò)。對(duì)于日益增長(zhǎng)、類型復(fù)雜、缺乏標(biāo)準(zhǔn)化醫(yī)療網(wǎng)絡(luò),傳統(tǒng)被動(dòng)防御方法并不奏效,需要一種醫(yī)療網(wǎng)絡(luò)的安全監(jiān)控平臺(tái),主動(dòng)識(shí)別醫(yī)療網(wǎng)絡(luò)中存在的風(fēng)險(xiǎn),解決醫(yī)療網(wǎng)絡(luò)的安全隱患。安全監(jiān)控平臺(tái)通過對(duì)醫(yī)療網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)進(jìn)行分析,根據(jù)這些網(wǎng)絡(luò)傳輸數(shù)據(jù)確定在線醫(yī)療設(shè)備的正常行為模式,一旦在網(wǎng)絡(luò)傳輸指令中發(fā)現(xiàn)異常的控制指令或信息,立即存檔并生成告警信息發(fā)送至醫(yī)療安全監(jiān)控網(wǎng)絡(luò)管理平臺(tái)。實(shí)現(xiàn)方法需要的設(shè)備有:安全監(jiān)視設(shè)備,處理網(wǎng)絡(luò)流量提取有用信息;遠(yuǎn)程服務(wù)器,分析來自安全監(jiān)視設(shè)備的數(shù)據(jù)并利用機(jī)器學(xué)習(xí)算法發(fā)現(xiàn)識(shí)別醫(yī)療網(wǎng)絡(luò)上的設(shè)備,根據(jù)采集的信息對(duì)設(shè)備進(jìn)行分類,確定每一臺(tái)設(shè)備正確的行為模式,檢測(cè)異常行為以及完成對(duì)異常行為的后處理。
醫(yī)療網(wǎng)絡(luò)安全監(jiān)控平臺(tái)的組成如圖1所示。一個(gè)醫(yī)療網(wǎng)絡(luò)由各醫(yī)療子網(wǎng)、圖像存檔及通信系統(tǒng)PACS和其他醫(yī)療子網(wǎng)例如檢驗(yàn)信息系統(tǒng)LIS、放射信息系統(tǒng)RIS、臨床信息系統(tǒng)CIS等組成。每個(gè)醫(yī)療子網(wǎng)中可能包括了若干以有線或無線方式連接的醫(yī)療設(shè)備、工作站和服務(wù)器,所有設(shè)備通過以太網(wǎng)上的工傳輸方式進(jìn)行消息和數(shù)據(jù)的交換。所有醫(yī)療子網(wǎng)包括一臺(tái)網(wǎng)絡(luò)交換機(jī)300完成所有子網(wǎng)的網(wǎng)絡(luò)數(shù)據(jù)交換,通過網(wǎng)絡(luò)交換機(jī)300的設(shè)置,將包括有線和無線連接的所有網(wǎng)絡(luò)通信映射到子網(wǎng)交換機(jī)的鏡像端口上,每個(gè)醫(yī)療子網(wǎng)交換機(jī)300的鏡像端口與安全監(jiān)視設(shè)備100相連,該安全監(jiān)視設(shè)備對(duì)全網(wǎng)的所有數(shù)據(jù)進(jìn)行監(jiān)視。各個(gè)醫(yī)療子網(wǎng)的安全監(jiān)視設(shè)備通過等加密通道和互聯(lián)網(wǎng)與遠(yuǎn)程服務(wù)器200相連。
圖1 醫(yī)療網(wǎng)絡(luò)
安全監(jiān)視設(shè)備100的系統(tǒng)組成如圖2所示。安全監(jiān)視設(shè)備根據(jù)網(wǎng)絡(luò)通信協(xié)議對(duì)醫(yī)療子網(wǎng)的所有網(wǎng)絡(luò)通信數(shù)據(jù)進(jìn)行深度包解析,得到包括數(shù)據(jù)源地址和目的地址、數(shù)據(jù)包類型、數(shù)據(jù)類型等信息。醫(yī)療設(shè)備標(biāo)準(zhǔn)協(xié)議是DICOM通信協(xié)議,當(dāng)醫(yī)療網(wǎng)絡(luò)使用DICOM通信協(xié)議時(shí),安全監(jiān)視設(shè)備在獲得了網(wǎng)絡(luò)交易數(shù)據(jù)的源IP地址、目的IP地址后,根據(jù)端口確定上層是DICOM服務(wù),根據(jù)不同服務(wù)的不同參數(shù),對(duì)DICOM消息或DICOM協(xié)議數(shù)據(jù)單元PDU進(jìn)行解析,并將這些解析后的信息通過加密通道發(fā)送至遠(yuǎn)程服務(wù)器200進(jìn)行進(jìn)一步的分析和處理,確保安全監(jiān)視設(shè)備在網(wǎng)絡(luò)中通信的安全。
圖2 安全監(jiān)視設(shè)備結(jié)構(gòu)
在DICOM中,標(biāo)簽由組標(biāo)記和元標(biāo)記組成,可以理解為組標(biāo)記為影像信息做大的分類,元標(biāo)記在大類中分小類??傊畼?biāo)簽的功能是區(qū)分每個(gè)信息并分類,這種包括標(biāo)簽、長(zhǎng)度和數(shù)據(jù)的信息被成為元素,有時(shí)元素中可以包括類型定義,用來標(biāo)記該元素的數(shù)據(jù)類型。實(shí)際上,DICOM文件就是由不同元素組成的,這些元素的組合叫做數(shù)據(jù)集。DICOM協(xié)議中,傳輸和存儲(chǔ)的內(nèi)容都是數(shù)據(jù)集,要執(zhí)行不同的服務(wù),需要使用不同的數(shù)據(jù)集。例如定義影像,我們可以把它先分為病人信息、診斷信息、序列信息和影像信息,其中病人信息可以包括姓名、編號(hào)、性別、年齡等,同樣診斷信息、序列信息、影像信息也可以再細(xì)化。在DICOM中,這種可以細(xì)化分類的對(duì)象叫做信息對(duì)象,每個(gè)信息對(duì)象有多個(gè)數(shù)據(jù)元素組成。DICOM標(biāo)準(zhǔn)已經(jīng)定義了不同的信息對(duì)象,因此要定義數(shù)據(jù)集,只需要找到該數(shù)據(jù)集包括的信息對(duì)象,然后把各個(gè)信息對(duì)象包括的元素找出來,最后對(duì)元素按標(biāo)簽順序排序,就可以得到需要的數(shù)據(jù)集,如鏈表一樣。但是,有的數(shù)據(jù)元素可以包括一個(gè)或多個(gè)數(shù)據(jù)集,因此可以把DICOM數(shù)據(jù)集看作二叉樹結(jié)構(gòu)。
處理器110負(fù)責(zé)所有設(shè)備的計(jì)算和管理,作為安全監(jiān)視設(shè)備的核心。存儲(chǔ)器120存儲(chǔ)所有需要保留的數(shù)據(jù)和信息,主要包括設(shè)備型號(hào)信息、設(shè)備行為歷史數(shù)據(jù)等。網(wǎng)絡(luò)通信接口130與交換機(jī)的鏡像端口相連,接收醫(yī)療子網(wǎng)的網(wǎng)絡(luò)數(shù)據(jù)。數(shù)據(jù)加密通信模塊160將通信數(shù)據(jù)加密后通過網(wǎng)絡(luò)接口130發(fā)送給遠(yuǎn)程服務(wù)器200,這樣能夠保證數(shù)據(jù)和信息傳遞的安全可靠。
安全監(jiān)視設(shè)備還包括數(shù)據(jù)捕獲模塊140和數(shù)據(jù)分析模塊150。數(shù)據(jù)捕獲模塊140通過所在網(wǎng)絡(luò)中的交換機(jī)的鏡像端口獲得所有所在網(wǎng)絡(luò)的通信數(shù)據(jù),這些數(shù)據(jù)包括設(shè)備行為數(shù)據(jù)、設(shè)備自身型號(hào)數(shù)據(jù)和設(shè)備采集的數(shù)據(jù)等。數(shù)據(jù)分析模塊150根據(jù)正在使用的網(wǎng)絡(luò)通信協(xié)議解析有效載荷中的信息,獲得元數(shù)據(jù)。
安全監(jiān)視設(shè)備將采集并分析后的元數(shù)據(jù)發(fā)送給遠(yuǎn)程服務(wù)器,安全監(jiān)視設(shè)備通過數(shù)據(jù)加密通信模塊160向遠(yuǎn)程服務(wù)器200發(fā)送元數(shù)據(jù)。安全監(jiān)視設(shè)備通過網(wǎng)絡(luò)通信接口將解析出與醫(yī)療設(shè)備相關(guān)的元數(shù)據(jù)和與之相關(guān)的IP地址發(fā)送到遠(yuǎn)程服務(wù)器進(jìn)行進(jìn)一步的分析。安全監(jiān)視設(shè)備的網(wǎng)絡(luò)通信接口120和遠(yuǎn)程服務(wù)器200網(wǎng)絡(luò)通信接口之間的通信通過虛擬私有網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)傳輸,這里所說的虛擬私有網(wǎng)絡(luò)是指使用公開網(wǎng)絡(luò)架設(shè)一條安全的私有網(wǎng)絡(luò)。
遠(yuǎn)程服務(wù)器200從各個(gè)安全監(jiān)視設(shè)備接收到已經(jīng)分解的元數(shù)據(jù)進(jìn)行進(jìn)一步分析,每一個(gè)數(shù)據(jù)交換都生成一個(gè)記錄,針對(duì)相同IP地址的記錄就形成了該IP地址對(duì)應(yīng)醫(yī)療設(shè)備的歷史記錄。通過對(duì)同一IP地址的數(shù)據(jù)作進(jìn)一步的數(shù)據(jù)包和數(shù)據(jù)類型的分析,遠(yuǎn)程服務(wù)器得到該IP地址對(duì)應(yīng)的醫(yī)療設(shè)備的配置信息,最終確定該IP地址對(duì)應(yīng)的醫(yī)療設(shè)備類型和具體配置。例如,一臺(tái)血壓測(cè)試設(shè)備的使用記錄、設(shè)備型號(hào)等信息,能夠與其IP地址對(duì)應(yīng)。通過這個(gè)方法,遠(yuǎn)程服務(wù)器可以確定所有在線的醫(yī)療設(shè)備的類型和配置。
遠(yuǎn)程服務(wù)器根據(jù)累積的歷史記錄、醫(yī)療設(shè)備的配置資料和現(xiàn)有醫(yī)療網(wǎng)絡(luò)所使用的網(wǎng)絡(luò)通信協(xié)議(例如DICOM),通過機(jī)器學(xué)習(xí)的算法建立和更新醫(yī)療設(shè)備的正常行為模式,所述正常行為模式可以是規(guī)定的醫(yī)療設(shè)備進(jìn)行數(shù)據(jù)的采集的時(shí)間、數(shù)據(jù)采集的順序、控制指令的來源、控制指令的格式等,這些信息都存儲(chǔ)在數(shù)據(jù)庫(kù)中。當(dāng)遠(yuǎn)程服務(wù)器接收到安全監(jiān)視設(shè)備獲得的相關(guān)控制指令與現(xiàn)有的正常行為模式不符時(shí),所述的與正常行為不符,包括但不限于控制信息來源于未知主機(jī)、控制指令數(shù)據(jù)為非法數(shù)據(jù)、在規(guī)定的時(shí)間以外的指令等,則遠(yuǎn)程服務(wù)器記錄該異常信息,自動(dòng)生成告警數(shù)據(jù)并通過網(wǎng)絡(luò)向現(xiàn)有醫(yī)療網(wǎng)絡(luò)管理平臺(tái)報(bào)告。
遠(yuǎn)程服務(wù)器200的系統(tǒng)組成如圖3所示。處理器210負(fù)責(zé)所有設(shè)備的計(jì)算和管理。存儲(chǔ)器220存儲(chǔ)所有需要保留的數(shù)據(jù)和信息。網(wǎng)絡(luò)通信接口230負(fù)責(zé)接收來自各個(gè)醫(yī)療子網(wǎng)加密的元數(shù)據(jù),同時(shí)也發(fā)送告警信息到醫(yī)療網(wǎng)絡(luò)管理平臺(tái)。網(wǎng)絡(luò)數(shù)據(jù)解密模塊240將來自醫(yī)療子網(wǎng)的數(shù)據(jù)解密獲得元數(shù)據(jù),發(fā)送至設(shè)備發(fā)現(xiàn)模塊250并存儲(chǔ)至存儲(chǔ)模塊220。設(shè)備發(fā)現(xiàn)模塊250從元數(shù)據(jù)中獲得與醫(yī)療設(shè)備相關(guān)的源IP地址、目的IP地址、數(shù)據(jù)包類型、數(shù)據(jù)類型和其他的信息,并根據(jù)這些信息分析后生成或更新事件記錄、訪問記錄和系統(tǒng)記錄,并為涉及的醫(yī)療設(shè)備生成或更新歷史記錄。進(jìn)一步地,設(shè)備發(fā)現(xiàn)模塊250利用機(jī)器學(xué)習(xí),根據(jù)已有的歷史記錄和當(dāng)前信息進(jìn)行聚類分析,當(dāng)信息足夠確定相關(guān)醫(yī)療設(shè)備的類型和配置時(shí),為該醫(yī)療設(shè)備建立包括具體配置的資料檔案,并存儲(chǔ)在存儲(chǔ)器220上。醫(yī)療設(shè)備行為模式識(shí)別模塊260是根據(jù)特定的醫(yī)療設(shè)備的具體資料結(jié)合歷史數(shù)據(jù),通過機(jī)器學(xué)習(xí)的方法創(chuàng)建該醫(yī)療設(shè)備的正常行為模式,并存儲(chǔ)下來用于異常行為處理模塊270對(duì)后續(xù)網(wǎng)絡(luò)流量的判斷。異常行為處理模塊270根據(jù)醫(yī)療設(shè)備的正常行為模式和配置資料通過機(jī)器學(xué)習(xí)的算法判定當(dāng)前的網(wǎng)絡(luò)數(shù)據(jù)流量是否符合正常行為模式,例如是否來源于可信主機(jī)、控制指令是否符合正常使用的規(guī)律、控制指令數(shù)據(jù)是否合法等。如果發(fā)現(xiàn)任何一項(xiàng)異常,異常行為處理模塊270在生成事件記錄之后,自動(dòng)產(chǎn)生告警信息,并將告警信息封裝為可以傳輸?shù)臄?shù)據(jù)包發(fā)送到網(wǎng)絡(luò)通信接口230,進(jìn)一步由網(wǎng)絡(luò)通信接口230發(fā)送至現(xiàn)有的醫(yī)療網(wǎng)絡(luò)管理平臺(tái)。如圖3所示,處理器210同時(shí)與存儲(chǔ)設(shè)備220、網(wǎng)絡(luò)通信接口230、網(wǎng)絡(luò)數(shù)據(jù)解密模塊240、設(shè)備發(fā)現(xiàn)模塊250、行為模式識(shí)別模塊260和異常行為處理模塊270連接;存儲(chǔ)設(shè)備還與網(wǎng)絡(luò)數(shù)據(jù)解密模塊240、設(shè)備發(fā)現(xiàn)模塊250、行為模式識(shí)別模塊260和異常行為處理模塊270連接;網(wǎng)絡(luò)通信接口230同時(shí)與網(wǎng)絡(luò)數(shù)據(jù)解密模塊240和行為模式識(shí)別模塊連接260;設(shè)備發(fā)現(xiàn)模塊250與行為模式識(shí)別模塊260連接;行為模式識(shí)別模塊260與異常行為處理模塊270連接。
圖3 遠(yuǎn)程服務(wù)器系統(tǒng)組成
圖4是遠(yuǎn)程服務(wù)器在處理醫(yī)療子網(wǎng)的網(wǎng)絡(luò)數(shù)據(jù)時(shí)的流程。
圖4 網(wǎng)絡(luò)數(shù)據(jù)處理流程
步驟1將一條來自安全監(jiān)視設(shè)備經(jīng)過加密的網(wǎng)絡(luò)交易數(shù)據(jù)進(jìn)行解密。
步驟2獲得解密后的網(wǎng)絡(luò)交易元數(shù)據(jù)。
步驟3根據(jù)源IP地址和目的IP地址確定該交易數(shù)據(jù)所屬的醫(yī)療設(shè)備。
步驟4生成該醫(yī)療設(shè)備的事件記錄,若已經(jīng)存在針對(duì)相同IP地址的事件記錄,則更新該醫(yī)療設(shè)備的歷史記錄,否則生成該IP地址的歷史記錄。
步驟5檢查該交易數(shù)據(jù)關(guān)聯(lián)的醫(yī)療設(shè)備是否存在配置檔案資料。
步驟6若步驟5中判斷沒有該交易數(shù)據(jù)關(guān)聯(lián)的醫(yī)療設(shè)備配置檔案存檔,則創(chuàng)建該醫(yī)療設(shè)備的配置文件,并存檔。
步驟7若步驟5中判斷有該交易數(shù)據(jù)關(guān)聯(lián)的醫(yī)療設(shè)備配置檔案存檔,則調(diào)取相關(guān)配置資料,結(jié)合歷史數(shù)據(jù)對(duì)當(dāng)前網(wǎng)絡(luò)數(shù)據(jù)為下一步進(jìn)行行為分析做準(zhǔn)備。
步驟8檢查當(dāng)前數(shù)據(jù)涉及的醫(yī)療設(shè)備是否已經(jīng)由正常行為模式存檔,若沒有,執(zhí)行步驟10,若已有正常行為模式存檔,執(zhí)行步驟9。
步驟9讀取網(wǎng)絡(luò)交易數(shù)據(jù)相關(guān)的醫(yī)療設(shè)備的正常行為模式。
步驟10判斷當(dāng)前網(wǎng)絡(luò)交易數(shù)據(jù)和歷史記錄是否足以生成該醫(yī)療設(shè)備的正常行為模式,若可以,執(zhí)行步驟12,否則執(zhí)行步驟4。
步驟11根據(jù)相關(guān)的醫(yī)療設(shè)備正常行為模式判斷當(dāng)前網(wǎng)絡(luò)數(shù)據(jù)表達(dá)的行為是否符合正常的行為模式,符合則返回步驟2接收下一條解密后的網(wǎng)絡(luò)交易元數(shù)據(jù),否則,執(zhí)行步驟13。
步驟12根據(jù)當(dāng)前數(shù)據(jù)和歷史記錄生成相關(guān)醫(yī)療設(shè)備的正常行為模式,存檔并執(zhí)行步驟14。
步驟13發(fā)現(xiàn)醫(yī)療設(shè)備異常行為,更新歷史數(shù)據(jù),保留異常行為數(shù)據(jù),并生成告警信息并發(fā)送至現(xiàn)有醫(yī)療網(wǎng)絡(luò)管理平臺(tái),然后返回步驟2,接收下一條網(wǎng)絡(luò)交易數(shù)據(jù)。
步驟14根據(jù)歷史數(shù)據(jù)生成/更新該醫(yī)療設(shè)備的配置文件。
以色列本·古里安大學(xué)(Ben-Gurion University)和索卡大學(xué)醫(yī)學(xué)中心比爾-舍瓦的一組研究人員已經(jīng)證明,黑客可以修改3D醫(yī)學(xué)掃描結(jié)果,可以從中添加或刪除包括動(dòng)脈瘤、心臟病、血塊、感染、關(guān)節(jié)炎、軟骨問題、韌帶撕裂以及大腦、心臟或脊柱的腫瘤等各種疾病。專家發(fā)現(xiàn),大約有2 700臺(tái)PACS和DICOM服務(wù)器的信息在網(wǎng)上泄露,醫(yī)療網(wǎng)絡(luò)安全監(jiān)控的應(yīng)用迫在眉睫。本平臺(tái)無需對(duì)現(xiàn)有的醫(yī)療設(shè)備作任何修改,不需要在醫(yī)療設(shè)備上加裝代理軟件,是一種積極的安全措施。該醫(yī)療網(wǎng)絡(luò)的安全監(jiān)控平臺(tái)能夠自動(dòng)識(shí)別醫(yī)療網(wǎng)絡(luò)上連接的所有設(shè)備和設(shè)備類型,能夠?qū)︶t(yī)療網(wǎng)絡(luò)上在線醫(yī)療設(shè)備數(shù)量和類型一目了然,并提供實(shí)時(shí)的運(yùn)行狀態(tài)。對(duì)醫(yī)療網(wǎng)絡(luò)上的每臺(tái)設(shè)備數(shù)據(jù)交換進(jìn)行跟蹤,分析確定每個(gè)連接設(shè)備的正常行為模式,實(shí)時(shí)分析判斷異常的控制指令,根據(jù)需要實(shí)時(shí)隔離威脅并發(fā)送告警信息到網(wǎng)絡(luò)管理平臺(tái),提升醫(yī)療網(wǎng)絡(luò)的安全防護(hù)能力,有效提升醫(yī)療網(wǎng)絡(luò)安全監(jiān)控的效果,平臺(tái)在醫(yī)療系統(tǒng)的應(yīng)用前景很大。