摘 要: 探討了在城市軌道交通綜合自動(dòng)化系統(tǒng)中將傳統(tǒng)以電調(diào),、環(huán)調(diào)為核心的綜合監(jiān)控系統(tǒng)與信號(hào)系統(tǒng)中ATS系統(tǒng)集成后在開放網(wǎng)絡(luò)環(huán)境下的安全性問題,,識(shí)別了關(guān)注的重點(diǎn),給出了一個(gè)基于OPC UA的具體實(shí)現(xiàn)方案,。最后給出了若干實(shí)施建議,。
關(guān)鍵詞: 綜合監(jiān)控系統(tǒng);信號(hào)系統(tǒng),;ATS,;開放網(wǎng)絡(luò)環(huán)境;安全性,;可靠性,;OPC UA
0 引言
目前國內(nèi)的城市軌道交通綜合自動(dòng)化普遍采用的是以電調(diào)、環(huán)調(diào)為核心的綜合監(jiān)控系統(tǒng)方案,,即綜合監(jiān)控系統(tǒng)與信號(hào)系統(tǒng)中的ATS(自動(dòng)列車監(jiān)督)子系統(tǒng)互聯(lián),,進(jìn)行信息交換。這種方案沒有將地鐵運(yùn)行中最重要的環(huán)節(jié)“行車調(diào)度指揮”真正集成,,使得綜合自動(dòng)化系統(tǒng)最重要的系統(tǒng)聯(lián)動(dòng)功能難以充分發(fā)揮其作用[1],。要提升綜合監(jiān)控系統(tǒng)的運(yùn)營維護(hù)管理水平,提高集成度,,形成以行車調(diào)度指揮為核心的綜合監(jiān)控系統(tǒng)是必由之路,。
以行車調(diào)度指揮為核心的綜合監(jiān)控系統(tǒng)的顯著特征是集成信號(hào)系統(tǒng)的ATS子系統(tǒng),同時(shí)集成與行車指揮有關(guān)的系統(tǒng),,從而實(shí)現(xiàn)對(duì)軌道交通中環(huán)境,、供電、設(shè)備,、乘客,、列車的全面監(jiān)控,同時(shí)通過緊密集成后形成的大范圍信息共享,,可以進(jìn)一步實(shí)現(xiàn)各個(gè)專業(yè)子系統(tǒng)之間的快速聯(lián)動(dòng),,真正做到為運(yùn)營指揮部門服務(wù),提高軌道交通運(yùn)營指揮的自動(dòng)化水平[2],。
實(shí)施這樣一個(gè)以行車調(diào)度指揮為核心的綜合監(jiān)控系統(tǒng)將會(huì)面臨兩個(gè)挑戰(zhàn),。
第一個(gè)挑戰(zhàn)是采用何種集成技術(shù)方案。這是因?yàn)閭鹘y(tǒng)的綜合監(jiān)控系統(tǒng)和信號(hào)系統(tǒng)是由不同的廠家提供的,。對(duì)此參考文獻(xiàn)[3]給出了戴帽,、內(nèi)嵌和完全集成3種實(shí)施方案,并在集成系統(tǒng)的接口范圍,、接口劃分和功能設(shè)置上都給出了較為具體的方案,;參考文獻(xiàn)[2]則給出了一個(gè)分階段實(shí)施方案,但大體思路與參考文獻(xiàn)[3]類似,;而南瑞和卡斯科已經(jīng)在北京地鐵6號(hào)線實(shí)現(xiàn)了一個(gè)接近完全集成后的系統(tǒng),,并取得了不錯(cuò)的效果。集成技術(shù)方案的主要難點(diǎn)一般聚焦于兩點(diǎn),,一是如何協(xié)調(diào)和分配安全完整性等級(jí),,二是傳統(tǒng)綜合監(jiān)控系統(tǒng)和ATS系統(tǒng)軟件在多大程度上向?qū)Ψ介_放。
第二個(gè)挑戰(zhàn)就是信息安全(Security),。因?yàn)闊o論傳統(tǒng)的綜合監(jiān)控系統(tǒng)還是ATS系統(tǒng)目前都是運(yùn)行在一個(gè)封閉的網(wǎng)絡(luò)之內(nèi),,對(duì)外沒有互聯(lián)互通,。由于沒有現(xiàn)實(shí)的信息安全威脅,系統(tǒng)在設(shè)計(jì),、實(shí)現(xiàn)與部署過程中,,其主要指標(biāo)是可用性、功能,、性能,、功能安全(Safety)、實(shí)時(shí)性等,,而無需過多考慮網(wǎng)絡(luò)攻擊,、信息安全等問題。但是,,隨著近年來以數(shù)字化,、網(wǎng)絡(luò)化和集成化為特征的ICT(信息和通信技術(shù))的快速發(fā)展,互聯(lián)網(wǎng),、云計(jì)算等應(yīng)用的日益普及,,綜合監(jiān)控系統(tǒng)不能不考慮進(jìn)一步對(duì)其安全邊界之外的用戶開放,無論是路網(wǎng)內(nèi)各條線路之間水平方向的信息交換,,還是作為基礎(chǔ)信息平臺(tái)在垂直方向向信息系統(tǒng)擴(kuò)展,,趨勢都是與線網(wǎng)內(nèi)外的其他系統(tǒng)互聯(lián)互通,特別是當(dāng)以行車調(diào)度指揮為核心的綜合監(jiān)控系統(tǒng)逐步形成線路內(nèi)唯一的集成信息共享平臺(tái)后,,這一趨勢看上去更加明顯,。
因此,新一代的以行車調(diào)度為中心的綜合監(jiān)控系統(tǒng)在集成方案和技術(shù)平臺(tái)的選擇上都應(yīng)該在開放的網(wǎng)絡(luò)環(huán)境下考慮,,并將保障信息安全作為一項(xiàng)關(guān)鍵的設(shè)計(jì)原則,。
1 目標(biāo)環(huán)境下的系統(tǒng)風(fēng)險(xiǎn)
1.1 安全性和可靠性
對(duì)于城市軌道交通系統(tǒng),安全性指在系統(tǒng)運(yùn)營過程中,,保障“乘客和員工不受傷害以及設(shè)備(設(shè)施)不遭破壞”的能力,。保障“乘客和員工不受傷害以及設(shè)備(設(shè)施) 不遭破壞”的能力包含了兩個(gè)方面,即不發(fā)生意外的安全(Safety) 和免遭破壞的安全(Security)[4],。為劃清這兩個(gè)術(shù)語之間的區(qū)別,,本文以下將“Safety”稱為“功能安全”,將“Security”稱為“信息技術(shù)安全”,。
根據(jù)ISO8402 的定義,, 功能安全是“使傷害或損害的風(fēng)險(xiǎn)限制在可接受的水平內(nèi)”。系統(tǒng)的安全性視為是其一種內(nèi)在的特性,, 這種屬性確定了系統(tǒng)在運(yùn)行中,, 避免觸發(fā)人身傷亡、重大財(cái)產(chǎn)損失或環(huán)境污染等事故的能力,。功能安全由安全完整性來度量,。根據(jù)IEC61508中的基本定義,,安全完整性是指在規(guī)定的條件下、規(guī)定的時(shí)間內(nèi),,安全系統(tǒng)成功實(shí)現(xiàn)所要求的安全功能的概率[5],。
而信息技術(shù)安全是指自動(dòng)化系統(tǒng)本身也需要加以保護(hù),以防止濫用,、安全攻擊、未經(jīng)授權(quán)的訪問和泄密等,,保護(hù)數(shù)據(jù)和服務(wù)系統(tǒng),。信息技術(shù)安全措施的目標(biāo)是提高保密性(特定的機(jī)器/人類用戶的數(shù)據(jù)和服務(wù)的訪問限制)、完整性(數(shù)據(jù)的精度/完整以及服務(wù)的正確操作)和可用性(測量系統(tǒng)在特定時(shí)間內(nèi)執(zhí)行功能的能力)[6],。
在軌道交通領(lǐng)域普遍采用的基于IEC61508的歐標(biāo)EN51026中沒有規(guī)定確保系統(tǒng)信息技術(shù)安全的要求,,但將其作為表征鐵路系統(tǒng)應(yīng)對(duì)破壞行為和人們不合理行為自我恢復(fù)能力的一個(gè)要素[7],因此是系統(tǒng)危害分析中的一個(gè)重要方面,。從根本上說,,信息技術(shù)安全性是為降低攻擊所造成的損害。通過識(shí)別對(duì)系統(tǒng)的威脅,,以及識(shí)別系統(tǒng)對(duì)這些威脅的漏洞,,并提供相應(yīng)的對(duì)策,以直接減少漏洞,、抵消威脅,,或從成功的攻擊中恢復(fù)。通過多年來通用的信息系統(tǒng)安全性的經(jīng)驗(yàn),,已經(jīng)形成了一組相當(dāng)穩(wěn)定的安全目標(biāo),,并形成一系列相關(guān)的標(biāo)準(zhǔn)。像地鐵綜合監(jiān)控系統(tǒng)這類工業(yè)自動(dòng)化系統(tǒng)要達(dá)到安全性也必須滿足這樣一組目標(biāo),,這些目標(biāo)主要聚焦在可用性,、完整性、保密性,、認(rèn)證,、授權(quán)和不可抵賴性幾個(gè)方面(按重要性排列)。不可抵賴性主要體現(xiàn)在事后審計(jì)上,,因此一般來說重要性最低,。而對(duì)工業(yè)自動(dòng)化系統(tǒng)設(shè)備的可用性、實(shí)時(shí)性,、可控性等特性要求很高,,因此可用性最為重要。
與安全性有區(qū)別但又有密切關(guān)系的是可靠性,??煽啃允侵讣榷ōh(huán)境下既定時(shí)間內(nèi)一個(gè)(技術(shù))系統(tǒng)正常運(yùn)行的概率,。依賴于所提供系統(tǒng)或由該系統(tǒng)本身的正確操作,包括低故障率,、高容錯(cuò)性(即能夠保持正常運(yùn)行,,即使發(fā)生故障時(shí))和魯棒性(基本功能的能力,以保證不發(fā)生故障)[6],。對(duì)于城市軌道交通系統(tǒng),,可靠性指在系統(tǒng)運(yùn)營過程中,保障“乘客準(zhǔn)時(shí)到達(dá)目的地”的能力,。通常所講的“保障乘客安全正點(diǎn)旅行”即包含了系統(tǒng)安全性與可靠性兩方面的概念,。
1.2 開放網(wǎng)絡(luò)系統(tǒng)
開放網(wǎng)絡(luò)系統(tǒng)按照歐標(biāo) EN50159的定義,是指“具有未知,、可變或非受信屬性且擁有未知數(shù)量的參與者,,用于未知電信服務(wù)并對(duì)未經(jīng)授權(quán)的訪問進(jìn)行評(píng)估的系統(tǒng)” [8]。顯然與封閉傳輸系統(tǒng)相比,,這諸多“未知”因素增加的安全風(fēng)險(xiǎn)主要來自信息技術(shù)安全方面,。按照EN50159的安全相關(guān)系統(tǒng)在通信上的防護(hù)要求,主要體現(xiàn)在防御傳輸錯(cuò)誤和防御未經(jīng)授權(quán)的訪問上,。實(shí)際上還應(yīng)該加上可用性,,因?yàn)閻阂獾木W(wǎng)絡(luò)攻擊(比如消息洪水)可能造成某臺(tái)功能服務(wù)器性能顯著下降,從而使安全相關(guān)功能受損或不可用,。
1.3 安全相關(guān)系統(tǒng)
傳統(tǒng)上ATS雖然不是故障安全系統(tǒng),,但仍具有安全相關(guān)功能,如參考文獻(xiàn)[9]中列出的中途停車,、取消臨時(shí)限速,、解除區(qū)間封鎖或施工區(qū)等可能潛在地導(dǎo)致系統(tǒng)危害的操作,故其安全完整性等級(jí)是SIL2級(jí),。并且,,與傳統(tǒng)綜合監(jiān)控系統(tǒng)緊密集成后還可能產(chǎn)生新的安全相關(guān)功能。因此,,當(dāng)集成后的系統(tǒng)采用統(tǒng)一的硬件,、統(tǒng)一的人機(jī)界面和統(tǒng)一的基礎(chǔ)數(shù)據(jù)平臺(tái)時(shí),也要按照安全工程的要求,,實(shí)施一個(gè)從需求到設(shè)計(jì)到實(shí)現(xiàn)貫穿完整生命周期的風(fēng)險(xiǎn)分析過程,,包括初步危害分析、子系統(tǒng)危害分析,、系統(tǒng)危害分析和操作與支持危害分析 (O&SHA)等,。
初步危害分析的目的是識(shí)別出安全相關(guān)功能。一個(gè)功能如果滿足下列條件可以被認(rèn)為是安全相關(guān)功能:
(1)該功能的失效也許/可能與其他事件組合在一起,,導(dǎo)致發(fā)生人身傷害或地鐵運(yùn)營中斷,;
(2)為使導(dǎo)致人身傷害的總體風(fēng)險(xiǎn)降低到可接受的程度,,需要在這個(gè)功能上施加一定的完整性假設(shè),。
子系統(tǒng)危害分析的目的是識(shí)別出執(zhí)行安全相關(guān)功能的組件。按照IEC61508對(duì)安全完整性的基本定義,,實(shí)際著重點(diǎn)在于安全系統(tǒng)(組件)執(zhí)行安全功能的可靠性,。
系統(tǒng)危害分析的目的是評(píng)估整個(gè)系統(tǒng)設(shè)計(jì)特別是子系統(tǒng)間接口設(shè)計(jì)的風(fēng)險(xiǎn),對(duì)任何可能影響到功能和系統(tǒng)的附加危害進(jìn)行評(píng)審,。顯然,,在開放網(wǎng)絡(luò)下,子系統(tǒng)間接口設(shè)計(jì)的新的風(fēng)險(xiǎn)主要來自信息技術(shù)安全,。
1.4 風(fēng)險(xiǎn)分析和應(yīng)對(duì)措施的重點(diǎn)
由于安全完整性等級(jí)是SIL2級(jí),因此業(yè)界普遍認(rèn)為與綜合監(jiān)控系統(tǒng)集成后的目標(biāo)系統(tǒng)的安全完整性也應(yīng)是SIL2級(jí),。但是,,還需要仔細(xì)分析,SIL等級(jí)分配實(shí)際與集成方案有關(guān),,并因此影響目標(biāo)系統(tǒng)的風(fēng)險(xiǎn)分析和應(yīng)對(duì)措施的重點(diǎn),。比如,如果采用所謂“戴帽”方案,,即僅在操作員工作站做人機(jī)界面集成,,且安全相關(guān)功能所有的功能性都被設(shè)計(jì)在服務(wù)器端,而用戶界面只是“一個(gè)遠(yuǎn)程顯示系統(tǒng)或啞終端”時(shí),,實(shí)際用戶界面和原來的綜合監(jiān)控系統(tǒng)就可以被定義在SIL0或SIL1級(jí),。由于原來的綜合監(jiān)控系統(tǒng)不具有安全相關(guān)功能,因此,,一定集成后的ATS的安全相關(guān)功能的執(zhí)行依賴于綜合監(jiān)控系統(tǒng)的某個(gè)組件,,才需要為這個(gè)綜合監(jiān)控組件分配同等的SIL等級(jí),這時(shí),,這個(gè)組件在設(shè)計(jì)上的要求就不是功能安全,,而是可靠性。
通常造成系統(tǒng)進(jìn)入不安全狀態(tài)的原因可能有多種,,比如硬件部件失效,、系統(tǒng)部件接口出現(xiàn)問題、操作中的人為錯(cuò)誤,、環(huán)境應(yīng)力改變等,,但是,真正對(duì)目標(biāo)系統(tǒng)的設(shè)計(jì)產(chǎn)生影響的原因主要還是來自軟件,包括軟件控制錯(cuò)誤和軟件失效,,因?yàn)槠渌蛟谠瓉矸蛛x或淺集成的系統(tǒng)中大部分也是存在的,。
因此,集成后的目標(biāo)系統(tǒng)要達(dá)到服務(wù)安全性和可用性目標(biāo),,風(fēng)險(xiǎn)分析和應(yīng)對(duì)措施的重點(diǎn)應(yīng)放在軟件可靠性和信息技術(shù)安全上,,以此來保證安全相關(guān)功能執(zhí)行的正確性和可用性。它們之間的關(guān)系如圖1所示,。
在實(shí)際分析系統(tǒng)的安全性時(shí),,必須要考慮以下兩方面的因素:(1)信息技術(shù)安全的措施(如加密或認(rèn)證)對(duì)運(yùn)營安全的影響,如時(shí)間關(guān)鍵功能,、資源可用性等,,因?yàn)橥ǔ?shí)施緩解措施總要付出某些代價(jià);(2)安全相關(guān)功能對(duì)信息技術(shù)安全的影響,,例如“某個(gè)操作功能是否會(huì)增加網(wǎng)絡(luò)攻擊的風(fēng)險(xiǎn)”,,典型的例子如機(jī)密性遭到破壞, 竊密本身不會(huì)對(duì)系統(tǒng)的功能安全造成危害,,但可能是下一步真正的網(wǎng)絡(luò)攻擊的前奏,。
在實(shí)際分析系統(tǒng)的可用性時(shí),必須要考慮能夠使系統(tǒng)處于不安全狀態(tài)的軟件控制錯(cuò)誤和軟件失效,。典型的軟件控制錯(cuò)誤如:不能執(zhí)行某一個(gè)要求的功能,,執(zhí)行了一種非要求的功能;時(shí)間和順序問題上的錯(cuò)誤,;不能識(shí)別某一種需要采取改正措施的風(fēng)險(xiǎn)條件,;對(duì)于某種風(fēng)險(xiǎn)條件產(chǎn)生了錯(cuò)誤反應(yīng)。典型的軟件失效如:應(yīng)用程序異常退出,、應(yīng)用程序僵尸,、應(yīng)用任務(wù)有資源泄露長期運(yùn)行資源耗盡、運(yùn)行負(fù)荷高響應(yīng)性能下降等,。
2 以行車調(diào)度為核心的綜合監(jiān)控系統(tǒng)架構(gòu)模型
2.1 系統(tǒng)架構(gòu)模型
綜合監(jiān)控系統(tǒng)與ATS的集成是一個(gè)通用的監(jiān)控平臺(tái)與一個(gè)高度專業(yè)化的軟件進(jìn)行集成,,而ATS不僅有監(jiān)控職能,還有計(jì)劃調(diào)度功能,,因此比較好的集成方案是將ATS的基本監(jiān)控功能劃歸綜合監(jiān)控系統(tǒng),,形成一個(gè)集信號(hào)和其他專業(yè)子系統(tǒng)的實(shí)時(shí)數(shù)據(jù)于一體的綜合數(shù)據(jù)平臺(tái),實(shí)現(xiàn)所有專業(yè)子系統(tǒng)底層設(shè)備的數(shù)據(jù)采集和以人工控制為主的基本監(jiān)控,,而ATS的自動(dòng)功能(列車跟蹤,、自排進(jìn)路、自動(dòng)調(diào)整等)及其他管理型模塊則作為基于該平臺(tái)的一個(gè)應(yīng)用程序,。綜合監(jiān)控?cái)?shù)據(jù)平臺(tái)向ATS(也包括其他應(yīng)用程序)提供一個(gè)平臺(tái)中立的標(biāo)準(zhǔn)服務(wù)接口,,ATS應(yīng)用程序通過該接口訪問來自底層信號(hào)系統(tǒng)(ATP,、CBI等)的原始實(shí)時(shí)數(shù)據(jù)、寫入經(jīng)過ATS處理后的數(shù)據(jù)以及向底層信號(hào)系統(tǒng)發(fā)送控制命令,。
圖2所示的是一個(gè)基于中間件的以行車調(diào)度為核心的綜合監(jiān)控系統(tǒng)架構(gòu)模型,。
中間件的本質(zhì)特征就是管理分布式基礎(chǔ)設(shè)施中的復(fù)雜性和異構(gòu)性。因此圖2不是真實(shí)工程中從硬件角度描述的系統(tǒng)構(gòu)成,,而是系統(tǒng)構(gòu)成的軟件抽象,。例如,圖中的“主機(jī)/集群”可以代表所有的控制中心,、車站或任意可能的中間層的系統(tǒng)服務(wù)器,,它們可能既是底層服務(wù)器的客戶端,同時(shí)又作為聚合服務(wù)器為上層的應(yīng)用程序提供數(shù)據(jù)訪問服務(wù),,因此可以表示分層分布式綜合監(jiān)控系統(tǒng)的多層,。
中間件總線表示為一個(gè)軟件總線,掛在總線上的客戶端應(yīng)用程序和服務(wù)器應(yīng)用程序之間實(shí)現(xiàn)客戶端/服務(wù)器模型,。中間件必須在以下三種情況下確??蛻舳朔?wù)器通信不影響應(yīng)用層的軟件處理邏輯:客戶端和服務(wù)器被部署在同一臺(tái)計(jì)算機(jī)上;客戶和服務(wù)被部署在不同計(jì)算機(jī)上,,但處于同一個(gè)安全邊界之內(nèi),;客戶和服務(wù)被部署在不同計(jì)算機(jī)上,但可以連接在內(nèi)聯(lián)網(wǎng),、外聯(lián)網(wǎng)甚至互聯(lián)網(wǎng)中。
在這個(gè)模型中,,選擇的中間件技術(shù)平臺(tái)是由OPC基金會(huì)制定的統(tǒng)一架構(gòu)標(biāo)準(zhǔn)OPC UA,。該標(biāo)準(zhǔn)所提供的SOA架構(gòu)和內(nèi)置的信息技術(shù)安全是其被采用的重要原因,能夠以一種相對(duì)松耦合而又安全的方式集成兩個(gè)應(yīng)用軟件是最佳的,。此外,,OPC UA還提供了信息建模和安全技術(shù)的擴(kuò)展性,滿足系統(tǒng)對(duì)通用監(jiān)控?cái)?shù)據(jù)平臺(tái)的期望,。
2.2 軟件架構(gòu)
本系統(tǒng)采用的以行車調(diào)度為中心的綜合監(jiān)控系統(tǒng)集成方案是由原來的綜合監(jiān)控系統(tǒng)提供統(tǒng)一的硬件,、統(tǒng)一的人機(jī)界面和統(tǒng)一的基礎(chǔ)數(shù)據(jù)平臺(tái),而ATS軟件作為依賴于該平臺(tái)的一個(gè)應(yīng)用程序,,它們之間采用OPC UA 客戶/服務(wù)器模式進(jìn)行通信,。新的綜合監(jiān)控系統(tǒng)軟件架構(gòu)如圖3所示。
在此架構(gòu)中,,將ATS軟件以及其他基于綜合監(jiān)控系統(tǒng)數(shù)據(jù)平臺(tái)的應(yīng)用程序(如圖3中所示的“聯(lián)動(dòng)組件”)與HMI一起統(tǒng)稱為 “SCADA應(yīng)用程序”,,在OPC UA的客戶/服務(wù)器模型中扮演Client角色,它們從服務(wù)器(甚至FEP)獲取實(shí)時(shí)/歷史數(shù)據(jù)/事件,,按照特定的應(yīng)用邏輯加工,,然后再把結(jié)果寫回服務(wù)器;服務(wù)器組件通常既是UA Server也是UA Client,作為Server它們向Client提供實(shí)時(shí)/歷史數(shù)據(jù)/事件訪問,,作為Client它們有從底層服務(wù)器(如FEP)獲取實(shí)時(shí)數(shù)據(jù)并進(jìn)行通用的處理,。而FEP作為UA Server負(fù)責(zé)現(xiàn)場數(shù)據(jù)的采集和控制命令輸出,流經(jīng)FEP的數(shù)據(jù)流總是原始數(shù)據(jù),。
屬于ATS組件的高安全完整性命令也可以不經(jīng)由SCADA服務(wù)器直接通過FEP輸出,,但通信關(guān)系仍是UA 的客戶/服務(wù)器模型。分布式的ATS組件(如中心ATS主機(jī)和車站ATS分機(jī))之間可以仍保留其專用的通信通道和方式,,傳輸專用的信息,,如圖3中所示的運(yùn)行時(shí)刻表數(shù)據(jù)。
在這一架構(gòu)中,,綜合監(jiān)控系統(tǒng)數(shù)據(jù)平臺(tái)是一個(gè)通用的平臺(tái),,因此它不應(yīng)實(shí)現(xiàn)任何特定的安全相關(guān)功能,但必須為安全相關(guān)功能的執(zhí)行提供信息技術(shù)安全,,包括數(shù)據(jù)保護(hù)和高可用性,。
3 目標(biāo)系統(tǒng)組件間通信的安全性
EN50129-2標(biāo)準(zhǔn)規(guī)定了開放傳輸系統(tǒng)中對(duì)安全相關(guān)消息通信可能產(chǎn)生的各種威脅,并歸納出7種基本消息錯(cuò)誤,,即消息重復(fù),、消息刪除、消息插入,、消息亂序,、消息毀壞、消息延時(shí),、消息偽裝,。這些消息錯(cuò)誤既可能是通信機(jī)制的可靠性引起的,也可能是安全攻擊引起的,,盡管原因不盡相同,,但采取的防御措施有相同之處。
下面介紹的OPC UA技術(shù)平臺(tái)為組件間通信提供了強(qiáng)大的安全性和健壯性,,可以為安全相關(guān)消息的通信提供很大程度上的保證,。
3.1 OPC UA簡介
OPC UA是OPC基金會(huì)2006年推出的新一代技術(shù),并已成為IEC標(biāo)準(zhǔn),,用于安全,、可靠和廠商獨(dú)立的原始數(shù)據(jù)和預(yù)處理信息的傳輸,范圍從傳感器和現(xiàn)場級(jí)的PLC和嵌入式設(shè)備直到控制系統(tǒng)并延伸到生產(chǎn)計(jì)劃系統(tǒng),,所有類型的信息可以隨時(shí)隨地為每個(gè)授權(quán)的用戶和每個(gè)授權(quán)的人所使用,。它的重點(diǎn)是建立互操作性標(biāo)準(zhǔn),其主要技術(shù)特點(diǎn)如:面向服務(wù)的體系結(jié)構(gòu),、面向?qū)ο蟮男畔⒛P?、抽象和映射,、安全、裁剪專?guī)(Profile),、魯棒性,。
OPC UA的一個(gè)目標(biāo)就是為過程控制和管理系統(tǒng)的集成提供一個(gè)一致的機(jī)制,并確保為這類應(yīng)用提供健壯和有效的安全性,。同時(shí)該安全基礎(chǔ)設(shè)施也具有靈活性,,可以支持各種不同組織在不同層次所需要的安全策略。這樣,,OPC UA可以被部署在不同的環(huán)境,,從客戶端和服務(wù)器駐留在同一主機(jī)的單機(jī)環(huán)境、由某個(gè)安全邊界防護(hù)的封閉的運(yùn)營網(wǎng)絡(luò)環(huán)境,,直到使用公網(wǎng)基礎(chǔ)設(shè)施的全球環(huán)境中運(yùn)行的應(yīng)用程序,。根據(jù)不同的環(huán)境和應(yīng)用要求,通信服務(wù)可以提供不同的保護(hù),,以保證解決方案的安全性,。
3.1.1 OPC UA的安全模型
OPC UA技術(shù)采用了信息技術(shù)中成熟的安全理念,為系統(tǒng)提供了保護(hù),,防止未經(jīng)授權(quán)的訪問,,防止破壞和對(duì)過程數(shù)據(jù)的無意修改。其安全概念包含對(duì)用戶和應(yīng)用程序的身份驗(yàn)證,、消息簽名和對(duì)傳輸數(shù)據(jù)本身進(jìn)行加密,。OPC UA的安全性基于互聯(lián)網(wǎng)公認(rèn)的安全通信標(biāo)準(zhǔn),如SSL,、TLS和AES,。并且安全機(jī)制是標(biāo)準(zhǔn)的一部分,被內(nèi)置到OPC UA核心,,對(duì)供應(yīng)商是強(qiáng)制性的,但用戶可以根據(jù)各自的情況使用各種安全功能的組合,。
OPC UA的安全模型針對(duì)現(xiàn)代工業(yè)設(shè)備目前所面臨的典型的系統(tǒng)安全威脅,,包括主動(dòng)攻擊和被動(dòng)攻擊,如消息洪水,、消息竊聽,、消息欺騙、消息篡改,、消息重放,、畸形消息、服務(wù)器剖析,、會(huì)話劫持,、流氓服務(wù)器,、盜用證書等,并制訂了相應(yīng)的緩解措施,。OPC UA核心的安全功能涉及如下信息技術(shù)安全目標(biāo):身份認(rèn)證,、授權(quán)、保密性,、完整性,、可用性和審計(jì)能力(不可抵賴性)。
對(duì)信息技術(shù)安全,,OPC UA針對(duì)工業(yè)控制的特點(diǎn),,補(bǔ)充了大多數(shù)支持Web平臺(tái)所提供的安全基礎(chǔ)設(shè)施,采用了分別在傳輸層,、應(yīng)用層和用戶層提供多層保護(hù)的“縱深防御”的策略,,在基本傳輸連接基礎(chǔ)上,UA客戶端和服務(wù)器需要建立一個(gè)安全通道(通信層上的一個(gè)虛擬的端到端連接),,并建立一個(gè)會(huì)話(應(yīng)用層上的一個(gè)虛擬通信關(guān)聯(lián)),。安全通道用于定義安全模式和安全方針。安全模式描述如何對(duì)消息進(jìn)行加密,。OPC UA定義了三個(gè)選項(xiàng)可供選擇:“無”,、“簽名”和“簽名且加密”。安全方針則定義了加密消息的算法,。啟動(dòng)時(shí),,客戶端需要服務(wù)器實(shí)例證書的公鑰。然后,,客戶端發(fā)送自己的實(shí)例證書,,由服務(wù)器根據(jù)它來決定是否信任該客戶端。
多層保護(hù)的結(jié)構(gòu)如圖4所示,。
表1是一個(gè)針對(duì)安全目標(biāo)OPC UA所采用的應(yīng)對(duì)方案,。
此外,與傳統(tǒng)中間件技術(shù)平臺(tái)(如CORBA或DCOM)不同的是,,OPC UA可以穿越防火墻,。OPC UA采用了一種基于TCP的、優(yōu)化的二進(jìn)制協(xié)議,,通過已在IANA注冊(cè)的4840端口進(jìn)行數(shù)據(jù)交換,,在防火墻中只需要打開這一個(gè)端口。也可選擇支持Web服務(wù)和HTTP,。集成的加密機(jī)制可以確?;ヂ?lián)網(wǎng)上的安全通信。
3.1.2 OPC UA通信的健壯性
OPC UA定義了一個(gè)健壯的體系結(jié)構(gòu),,具有可靠的通信機(jī)制,,可配置超時(shí)和自動(dòng)錯(cuò)誤檢測,。消除錯(cuò)誤的機(jī)制能自動(dòng)恢復(fù)OPC UA客戶端和OPC UA服務(wù)器之間的通信連接而不會(huì)丟失數(shù)據(jù)。采用客戶-服務(wù)器模式的數(shù)據(jù)訪問時(shí),,客戶端發(fā)送一個(gè)服務(wù)請(qǐng)求,,并從服務(wù)器接收異步響應(yīng)。每一個(gè)服務(wù)調(diào)用都包含一個(gè)可配置的超時(shí)時(shí)間,,客戶端將等待直到響應(yīng)到達(dá),。序列號(hào)用于識(shí)別對(duì)應(yīng)的請(qǐng)求/響應(yīng)消息對(duì)。當(dāng)采用“訂閱-發(fā)布”模式讀取事件或值變化通知時(shí),,每個(gè)發(fā)布的數(shù)據(jù)響應(yīng)由客戶端用下一個(gè)發(fā)布請(qǐng)求進(jìn)行確認(rèn),。萬一連接中斷或傳送失敗,服務(wù)器保留未確認(rèn)的消息,,并在連接再次恢復(fù)時(shí)重新發(fā)送,。在此期間收集的數(shù)據(jù)將被服務(wù)器緩沖或排隊(duì),使得在短暫的網(wǎng)絡(luò)中斷中不丟失任何數(shù)據(jù),。
OPC UA要求一個(gè)“有狀態(tài)”模型作為增強(qiáng)解決方案的魯棒性的一個(gè)特征,。狀態(tài)信息被保存在應(yīng)用程序會(huì)話內(nèi),例如訂閱,,用戶憑證和延續(xù)點(diǎn)可以在操作上跨越多個(gè)請(qǐng)求,。會(huì)話被定義為客戶端和服務(wù)器之間的邏輯連接。值得強(qiáng)調(diào)的是,,每個(gè)會(huì)話都是獨(dú)立于底層通信協(xié)議的,。這些協(xié)議的故障不會(huì)導(dǎo)致會(huì)話自動(dòng)終止。會(huì)話終止是基于客戶機(jī)或服務(wù)器的請(qǐng)求,,或基于客戶端的失活,。
3.2高完整性控制命令的傳輸
OPC UA標(biāo)準(zhǔn)對(duì)各種信息技術(shù)安全威脅的防御和緩解措施參見OPC UA規(guī)范第2部分[10]。根據(jù)分析對(duì)比發(fā)現(xiàn),,這些措施已經(jīng)涵蓋了EN50129-2建議的主要防護(hù)要求,,可以保證安全相關(guān)消息的確實(shí)性、完整性和有序性,。但在消息的合時(shí)性方面可能需要從功能安全角度施加補(bǔ)充措施(但也不一定,,依賴于具體的安全相關(guān)控制命令的傳輸要求),因?yàn)镺PC UA的高可用性的主要目標(biāo)是實(shí)時(shí)數(shù)據(jù)流不因通信故障而中斷,。
4目標(biāo)系統(tǒng)的安全性和可靠性設(shè)計(jì)要求
為滿足目標(biāo)系統(tǒng)所要求的安全完整性,,需要實(shí)施完整的安全生命周期過程,,對(duì)此,,EN50128提供了某些強(qiáng)制和建議要求。例如,,可以實(shí)施一個(gè)圖5所示的軟件失效模式及影響分析過程,,從而確定對(duì)軟件的安全性需求,。
但是軟件的安全性和可靠性問題存在共性,例如軟件的失效原因可能包括:功能和性能缺陷,、軟件結(jié)構(gòu)缺省,、數(shù)據(jù)缺陷、軟件實(shí)現(xiàn)和編碼缺陷,、軟硬件接口缺陷等,。其中靜態(tài)缺陷可以比較容易克服,比如嚴(yán)格的質(zhì)量過程,;但動(dòng)態(tài)缺陷往往比較難于發(fā)現(xiàn),,比如可能隨機(jī)產(chǎn)生的某個(gè)事件引起程序執(zhí)行中的時(shí)序錯(cuò)誤。因此在風(fēng)險(xiǎn)分析進(jìn)行到設(shè)計(jì)過程時(shí)應(yīng)適當(dāng)運(yùn)用如時(shí)序分析,、事件分析,、Petri網(wǎng)分析等工具。
下面列出一些對(duì)前面給出的“以行車調(diào)度為核心的綜合監(jiān)控系統(tǒng)架構(gòu)模型”的實(shí)施建議,。
?。?)人工操作與自動(dòng)控制命令互鎖
融合了ATS基本監(jiān)控能力的綜合監(jiān)控軟件平臺(tái)與原來相比,需要增加一個(gè)至關(guān)重要的功能,,即人工控制命令與自動(dòng)控制命令互鎖,,適用于任何列車和信號(hào)系統(tǒng)設(shè)備,以確保:
?、偈蹵TS基本監(jiān)控影響的所有操作員請(qǐng)求的控制優(yōu)先級(jí)都比ATS應(yīng)用程序的自動(dòng)命令優(yōu)先級(jí)高,;
②所有操作員控制請(qǐng)求都被直接發(fā)送給現(xiàn)場,,并遮蔽ATS應(yīng)用程序產(chǎn)生的現(xiàn)場命令,;
③所有ATS應(yīng)用程序產(chǎn)生的命令都不能遮蔽操作員命令,。
?。ǎ玻╆P(guān)鍵控制操作
對(duì)于安全相關(guān)的控制功能,要求操作員必須介入,,實(shí)行類似如下步驟的“執(zhí)行前檢查”過程,,并且用戶輸入一個(gè)控制命令要服從特定的時(shí)間約束。
?、俨僮鲉T選擇執(zhí)行一個(gè)命令,;
②命令發(fā)送到執(zhí)行裝置,;
?、蹐?zhí)行裝置驗(yàn)證控制狀態(tài);
?、軋?zhí)行裝置將檢查結(jié)果返回給控制系統(tǒng),;
?、菘刂葡到y(tǒng)將檢查結(jié)果顯示給操作員請(qǐng)求證實(shí)(Confirm);
?、蘅刂葡到y(tǒng)將證實(shí)發(fā)送到執(zhí)行裝置,;
⑦執(zhí)行裝置執(zhí)行該命令,;
?、嗫刂葡到y(tǒng)驗(yàn)證返回條件。
?。?)設(shè)定值
設(shè)定值用于改變底層裝置中的模擬量設(shè)定值,,或綜合監(jiān)控?cái)?shù)據(jù)平臺(tái)本身實(shí)時(shí)數(shù)據(jù)庫中的某些狀態(tài)值,比如設(shè)備或區(qū)域的維修掛牌,。設(shè)定值應(yīng)在計(jì)算機(jī)切換或掉電恢復(fù)后依舊保持,。
(4)連接和會(huì)話
考慮到增強(qiáng)信息技術(shù)安全對(duì)性能的影響,,對(duì)于安全相關(guān)的關(guān)鍵控制,,如設(shè)置/解除臨時(shí)限速,應(yīng)采用與普通數(shù)據(jù)傳輸不同的獨(dú)立的OPC UA安全通道和會(huì)話,,并采用單獨(dú)的加密算法,。
(5)并行發(fā)送
當(dāng)安全相關(guān)命令有強(qiáng)烈的限時(shí)到達(dá)要求,,且并行發(fā)送對(duì)底層信號(hào)系統(tǒng)無害時(shí)(即可以處理相同命令的兩次發(fā)送),,則可以采用冗余雙網(wǎng)并行發(fā)送控制命令,以解決EN50129-2指出的消息延時(shí)這一基本消息錯(cuò)誤,。
5 結(jié)論
以行車調(diào)度為核心的城市軌道交通綜合監(jiān)控系統(tǒng)是一個(gè)牽涉到多種技術(shù)領(lǐng)域,,由多種設(shè)備、多種硬軟件,、多種設(shè)施組成的復(fù)雜系統(tǒng),,真正實(shí)施時(shí)還要面臨綜合監(jiān)控廠家和信號(hào)廠家密切協(xié)作的問題。在安全性,、可靠性方面,,最關(guān)鍵的是保證兩點(diǎn):第一,不引起或不提供虛假輸出,,包括向現(xiàn)場輸出和向用戶界面輸出,;第二,當(dāng)操作員想要執(zhí)行一個(gè)安全相關(guān)操作時(shí),,系統(tǒng)處于可用的狀態(tài),。當(dāng)然,在開放的網(wǎng)絡(luò)環(huán)境又引入了信息技術(shù)安全的問題,對(duì)此采用的OPC UA協(xié)議標(biāo)準(zhǔn)幾乎是一個(gè)“開箱即用”的解決方案,。
參考文獻(xiàn)
[1] 周庭梁,孫軍峰,,孫春榮.談以行車指揮為核心的城軌交通綜合監(jiān)控系統(tǒng)[J].現(xiàn)代城市軌道交通,,2009(3):14-17.
[2] 郭永泉.城市軌道交通綜合監(jiān)控系統(tǒng)集成信號(hào)ATS的研究[J].現(xiàn)代城市軌道交通,2008(6):34-36.
[3] 魏祥斌.集成信號(hào)列車自動(dòng)監(jiān)控子系統(tǒng)的綜合監(jiān)控系統(tǒng)方案[J].現(xiàn)代城市軌道交通,,2012(8):86-89.
[4] 趙惠祥,,余世昌.城市軌道交通系統(tǒng)的安全性與可靠性[J].城市軌道交通研究,2006(1):7-10.
[5] CEI IEC61508: Functional safety of electrical/electronic/programmable electronic safety-related systems(Version 12.0)[S]. 1997.