
本發明涉及控制系統與管理系統間的數據安全交換,具體為工業流程領域一種具有深度數據過濾功能的集散控制系統與生產執行系統間的信息安全網關。
背景技術:
:工業化與信息化的發展實現了傳統計算機網絡與工業控制網絡的緊密融合,越來越多的企業管理信息系統,如石油、化工等典型流程工業的生產執行系統(MES),利用多種數據交互設備從集散控制系統(DCS)采集實時數據,進而完成優化控制。特別是物聯網、大數據等新技術的逐步深化應用,管理網與工控網的聯系日趨緊密,但同時大大增加了安全風險。現有網關大部分基于協議過濾,即根據源、目的IP地址以及源、目的端口號進行過濾,但無法深入到data段數據,因而對偽裝成合法協議的非法數據無能為力。鑒于DCS與MES之間上傳/下發的數據是相對固定的,因而可以采用基于數據白名單的安全網關。然而目前普通的基于數據白名單網關只能起到比對數據名稱的作用,不能對數據值是否異常等問題進行甄別。如2010年,“震網(Stuxnet)”病毒襲擊伊朗布舍爾核電站控制系統,導致大量離心機受損。經過分析,Stuxnet病毒通過改變離心機轉速的設定值,使離心機轉速超出上限,從而導致設備損毀。技術實現要素:為解決現有技術存在問題,本發明公開了一種基于深度數據過濾的控制系統信息安全網關。該網關采用基于報文data段數據名稱比對、上傳數據越限報警以及下發數據越限阻斷等深度數據過濾技術,實現控制系統安全防護,即只允許滿足規則集的data段數據通過,其數據過濾能力顯著提高,大幅降低使用合法的數據標簽傳輸非法數據的風險。該發明通過以下技術方案實現,一種基于深度數據過濾的控制系統信息安全網關,該網關包括數據上傳模塊、數據緩存模塊、報文data段數據提取模塊、數據封裝模塊、數據發布模塊、數據接收模塊、數據緩存模塊、報文data段數據提取模塊、數據封裝模塊、數據下發模塊、深度數據過濾模塊以及深度數據過濾規則集,所述數據上傳模塊、數據緩存模塊、報文data段數據提取模塊、深度數據過濾模塊、數據封裝模塊以及數據發布模塊順次連接完成數據上傳功能;所述數據接收模塊、數據緩存模塊、報文data段數據提取模塊、深度數據過濾模塊、數據封裝模塊以及數據下發模塊順次連接完成數據下發功能;所述深度數據過濾模塊與深度數據過濾規則集連接并根據深度數據過濾規則集進行過濾。優選的,所述報文data段數據提取模塊從數據緩存模塊中讀取報文,并動態根據應用層協議解析報文data段數據。優選的,所述深度數據過濾規則集包括報文data段數據名稱比對、上傳數據越限報警以及下發數據越限阻斷,其中過濾規則集可變更。具體的,所述數據越限報警:根據具體過程數據真實值分別設置上下限,當超過上限或低于下限時,啟動報警功能。具體的,所述的下發數據:作為從生產執行系統下發到集散控制系統的設定值,當下發數據不在上下限范圍內時,啟動阻斷功能,且維持當前設定值不變。該網關的上傳數據工作流程如下:(1)啟動數據上傳模塊;(2)數據緩存模塊緩存報文;(3)解析報文;(4)提取報文data段數據;(5)根據深度數據過濾規則集,過濾data段數據;(6)判斷數據是否合法;(7)如果合法,則將數據重新打包;否則跳轉到步驟(10);(8)數據發布模塊更新數據;(9)數據發布模塊對外發布數據;(10)判斷是否繼續上傳數據,如果是,則跳轉到步驟(3);否則程序結束。該網關的下發數據工作流程如下:(1)啟動數據接收模塊;(2)數據緩存模塊緩存報文;(3)解析報文;(4)提取報文data段數據;(5)根據深度數據過濾規則集,過濾data段數據;(6)判斷數據是否合法;(7)如果合法,則將數據重新打包;否則跳轉到步驟(10);(8)數據下發模塊更新數據;(9)數據下發模塊下發數據;(10)判斷是否繼續下發數據,如果是,則跳轉到步驟(3);否則程序結束。有益效果:本發明公開了一種基于深度數據過濾的控制系統信息安全網關,具有報文data段數據名稱比對、上傳數據越限報警以及下發數據越限阻斷等功能,只允許滿足規則集的data段數據通過,極大降低了控制系統遭受的網絡攻擊、入侵以及病毒等信息安全風險。附圖說明圖1是本發明信息安全網關數據上傳結構框圖;圖2是本發明信息安全網關數據下發結構框圖;圖3是本發明信息安全網關數據上傳工作流程圖;圖4是本發明信息安全網關數據下發工作流程圖;圖5是本發明深度數據過濾模塊流程圖。具體實施方式下面結合附圖,對本發明的具體實施方式作進一步說明。本實施例以本發明技術方案為前提進行實施,但本發明的保護范圍不限于下述的實施例。實施例通過本發明提供的信息安全網關,實現若干DCS系統與MES層的實時數據庫IP21間的數據上傳或下發。該企業DCS系統包括橫河CS3000、霍尼韋爾ExperionPKS等等,本實施例以橫河CS3000為例說明,總計上傳775個模擬量標簽,下發36個模擬量標簽。上傳和下發都采用國際標準OPC協議。如圖1所示,本發明信息安全網關數據上傳部分包括數據上傳模塊、數據緩存模塊、報文data段數據提取模塊、深度數據過濾模塊、深度數據過濾規則集、數據封裝模塊以及數據發布模塊。其中數據上傳模塊從DCS系統采集實時數據,如溫度、壓力、流量、液位以及成分等相關參數。采集到的標簽首先放入數據緩存模塊,調用OPC解析程序提取出data段數據。更進一步的,深度數據過濾模塊根據深度數據過濾規則集,對解析出來的data段數據進行檢測、比對和篩選;數據封裝模塊將過濾后的合法數據重新打包成OPC報文;數據發布模塊把篩選出的數據以OPC協議上傳到實時數據庫IP21。如圖2所示,本發明信息安全網關數據下發部分包括數據接收模塊、數據緩存模塊、報文data段數據提取模塊、深度數據過濾模塊、深度數據過濾規則集、數據封裝模塊以及數據下發模塊。MES層待下發的標簽通過數據接收模塊進入數據緩存模塊,然后報文data段數據提取模塊調用OPC解析程序,提取出data段數據。更進一步的,深度數據過濾模塊根據深度數據過濾規則集,對解析出來的data段數據進行下發數據檢測、比對和篩選;數據封裝模塊將過濾后的合法數據重新打包成OPC報文;數據下發模塊更新數據同時把篩選出的數據以OPC協議下發到DCS系統。如圖3所示,本實施例中信息安全網關數據上傳工作流程如下:(1)啟動數據上傳模塊,當數據上傳模塊啟動時:從啟動輸入參數中,獲取指定采集配置文件opccollcfg.ini,預先讀取初始化配置文件opcsvrcfg.ini,加載采集配置文件opccollcfg.ini。初始化完成后,讀取采集配置對象中的OPC連接信息,并連接到橫河CS3000DCS中的OPCServer。連接成功后,遍歷采集配置文件opccollcfg.ini中的分組信息,向OPCServer對象中添加分組groupTemperature、groupPressure、groupFlowrate、groupLevel以及groupConcentration,這5個分組分別對應溫度、壓力、流量、液位以及成分,對應關系如表1所示。以上5組數據上傳周期均設為15秒,添加分組成功后并激活分組。表1OPCServer對象分組與名稱對應關系溫度壓力流量液位成分groupTemperaturegroupPressuregroupFlowrategroupLevelgroupConcentration在上傳數據的過程中,本實施例總計上傳775個模擬量,其中溫度150個、壓力160個、流量195個、液位185個,以及成分185個,每組對應的模擬量標簽名稱如表2所示。表2每組數據標簽名稱本實施例中深度數據過濾規則集中的數據如表3所示:表3深度數據過濾規則集中的數據溫度groupTemp.TagTI-001、groupTemp.HTI-001、groupTemp.LTI-001…壓力groupPre.TagPre-151、groupPre.HPre-151、groupPre.LPre-151…流量groupFlow.TagFl-311、groupFlow.HFl-311、groupFlow.LFl-311…液位groupLevel.TagLev-506、groupLevel.HLev-506、groupLevel.LLev-506…成分groupCon.TagCon-591、groupCon.HCon-591、groupCon.LCon-591…以溫度數據為例,針對第一個溫度標簽TI-001.PV,表3中設置了groupTemp.TagTI-001、groupTemp.HTI-001和groupTemp.LTI-001,分別表示TI-001.PV的標簽名稱、上限和下限。其它類推。(2)報文data段數據提取模塊檢測報文的傳輸協議:提取模塊從數據緩存模塊中讀取報文,進而判斷報文應用層協議的種類,本實施例中判斷出報文為OPC協議。(3)深度數據過濾規則集:本實施例中具體數據標簽如表3所示;上下限報警根據具體的物理量范圍分別設置,以該企業某常壓加熱爐出口溫度為例,該爐出口溫度正常值為370℃,上限為390℃,下限為350℃。其它各具體物理量上下限的設置類似。(4)深度數據過濾:根據深度數據過濾規則集,對OPC報文中的數據段,即從DCS中采集上來的數據進行過濾。根據規則集中的溫度、壓力、流量、液位以及成分等詳具體簽點,對提取出的數據段進行對比分析,如果得到的數據位于上述規則集中,則保留報文;否則丟棄;更進一步地,進行上下限越限檢測并報警。以本實施例中的某次數據采集為例,在本次數據過濾中:人為從groupTemperature、groupPressure、groupFlowrate、groupLevel以及groupConcentration等分組中隨機去掉若干個標簽,并人為修改部分參數的上下限,然后進行數據采集,網關通過數據包data段數值比對,均能及時發現標簽錯誤,防止了數據的非法上傳。同時均能發現異常的參數值,并啟動報警。經過以上步驟,數據封裝模塊將過濾出的合法數據重新進行打包處理,進一步傳輸到數據發布模塊,由MES層讀取并存儲于IP21數據庫中。如圖4所示,信息安全網關數據下發工作流程如下:(1)啟動數據接收模塊,MES層將待下發的優化結果,即控制系統的設定值,以OPC報文的形式通過數據接收模塊送入數據緩存模塊。(2)后續工作流程與上傳工作流程類似,直到進入深度數據過濾環節:在數據下發過程中,深度數據過濾進行下發數據檢測。以本實施例中的某次測試為例,人為將常壓加熱爐出口溫度設置在400℃,而該企業的常壓加熱爐出口溫度設定值限定在358-380℃之間,此時網關能自動阻斷該值的下發,并將出口溫度維持在上次設定的正常值,即372℃,防止了因溫度過高可能造成的設備損壞。經過以上步驟,數據封裝模塊將過濾出的合法數據重新進行打包處理,進一步傳輸到數據下發模塊,數據下發模塊進行數據更新,同時將合法數據下發到相應DCS系統中。如圖5所示,深度數據過濾模塊流程圖如下:(1)開始;(2)接收報文;(3)解析報文,判斷報文的應用層協議種類;(4)根據具體應用層協議解析報文,獲取data段內容;(5)根據深度數據過濾規則集,過濾報文data段內容;(6)判斷過濾是否成功:如果是,則更新標簽點;否則退出程序。綜上所述,本發明提供了一種基于深度數據過濾的控制系統信息安全網關,基于深度數據過濾規則集機制,只允許滿足規則集的data段數據通過,大幅降低了控制系統遭受的網絡攻擊、入侵以及病毒等信息安全風險。本發明已通過上述實施例及其附圖說明清楚,以上僅為本發明的一個具體實例,不構成對本發明的任何限制。在不背離本發明精神和實質的情況下,所屬領域的技術人員可根據本發明做出相應變化和修正,這些變化和修正都屬于本發明權利要求的保護范圍。本發明未涉及方法均與現有技術相同或可采用現有技術加以實現。當前第1頁1 2 3