国产欧美日韩精品a在线观看-国产欧美日韩精品一区二区三区-国产欧美日韩精品综合-国产欧美中文字幕-一区二区三区精品国产-一区二区三区精品国产欧美

ACS880-07C
關(guān)注中國自動化產(chǎn)業(yè)發(fā)展的先行者!
CAIAC 2025
2024
工業(yè)智能邊緣計算2024年會
2023年工業(yè)安全大會
OICT公益講堂
當(dāng)前位置:首頁 >> 資訊 >> 行業(yè)資訊

資訊頻道

OPC通訊安全防護(hù)方法的探討
  • 作者:馬納 章維 陸衛(wèi)軍 羅冰
  • 點擊數(shù):4840     發(fā)布時間:2016-10-27 15:58:00
  • 分享到:
關(guān)鍵詞:

馬納 章維 陸衛(wèi)軍 羅冰 浙江中控技術(shù)股份有限公司


摘要:針對OPC通訊中存在安全隱患的問題,本文通過分析OPC通訊原理,闡述了通過部署OPC安全網(wǎng)關(guān)對OPC通訊進(jìn)行協(xié)議深度解析實現(xiàn)OPC通訊的安全防護(hù),進(jìn)一步討論了OPC動態(tài)端口跟蹤方法,可解決傳統(tǒng)防火墻無法跟蹤OPC動態(tài)端口,同時分析了OPC指令過濾的方法,可有效解決OPC指令的訪問控制。


關(guān)鍵詞:OPC;安全防護(hù);動態(tài)端口;指令過濾


隨著信息化與工業(yè)化深度融合的快速發(fā)展,工業(yè)控制系統(tǒng)越來越多地采用開放的通信協(xié)議標(biāo)準(zhǔn),通信協(xié)議所存在的安全隱患日益突出。其中OPC Classical規(guī)范(以下稱OPC規(guī)范)作為一種工業(yè)標(biāo)準(zhǔn)為現(xiàn)場設(shè)備、自動控制應(yīng)用、企業(yè)管理應(yīng)用軟件之間提供了開放、統(tǒng)一的標(biāo)準(zhǔn)接口,其已在控制領(lǐng)域得到廣泛應(yīng)用,許多工業(yè)控制領(lǐng)域的公司都推出了符合OPC技術(shù)規(guī)范的產(chǎn)品。OPC規(guī)范(其協(xié)議層次如圖1所示)基于Microsoft的DCOM分布式組件技術(shù)進(jìn)行開發(fā)設(shè)計,由于DCOM技術(shù)是在網(wǎng)絡(luò)安全問題被廣泛認(rèn)識之前設(shè)計的,極易遭受網(wǎng)絡(luò)攻擊[1]。


1.JPG

圖1 OPC協(xié)議層次[2]


1 OPC安全風(fēng)險分析


DCOM技術(shù)是一種提供面向組件對象的服務(wù),其通過DCE/RPC協(xié)議進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)封裝。由于DCOM技術(shù)、DCE/RPC協(xié)議本身的諸多漏洞,導(dǎo)致OPC技術(shù)規(guī)范存在嚴(yán)重的安全隱患,如今已引起了工控行業(yè)的普遍擔(dān)憂,其問題主要體現(xiàn)在以下兩方面。


(1)DCOM以及其底層協(xié)議DCE/RPC已經(jīng)發(fā)現(xiàn)多個漏洞,表1列舉了幾個常見漏洞。攻擊者一般都利用畸形的RPC數(shù)據(jù)包使得被攻擊對象的RPC服務(wù)出現(xiàn)錯誤,進(jìn)而使其執(zhí)行惡意代碼,授權(quán)攻擊者相關(guān)權(quán)限,最后控制攻擊對象,執(zhí)行安裝、刪除軟件程序,甚至創(chuàng)建新用戶等操作。雖然微軟公司已經(jīng)推出了相關(guān)漏洞補丁,但是許多計算機(jī)并未安裝漏洞補丁,這使得這部分計算機(jī)依然存在安全風(fēng)險[4]。


表1 已知的DCOM漏洞[3]

2.JPG


(2)OPC通訊端口由DCOM機(jī)制動態(tài)協(xié)商所得,其端口范圍為1024~65535。若OPC通訊采用傳統(tǒng)的防火墻進(jìn)行安全防護(hù),則需最大限度地開放通訊端口,將形成較高的安全風(fēng)險[5]。


針對上述問題,本文通過分析OPC通訊協(xié)議原理,提出OPC通訊安全防護(hù)方法,實現(xiàn)OPC通訊的動態(tài)端口跟蹤、非法OPC指令過濾,提高OPC通訊的安全性。


2 OPC通訊原理分析


OPC規(guī)范的底層通訊協(xié)議——DCOM協(xié)議采用客戶服務(wù)器(C/S)模型,通過RPC(Remote Procedure CaII)實現(xiàn)遠(yuǎn)程過程調(diào)用,實現(xiàn)了COM技術(shù)的網(wǎng)絡(luò)化,因此DCOM技術(shù)也稱為OPRC服務(wù)(對象ORPC)。客戶創(chuàng)建一個DCOM 服務(wù)器對象時,通過指定服務(wù)器IP地址或計算機(jī)主機(jī)名等指定被調(diào)用DCOM組件的位置,激活DCOM組件對象后,即可調(diào)用DCOM組件相關(guān)的接口進(jìn)行遠(yuǎn)程過程調(diào)用。


圖2為DCOM實現(xiàn)架構(gòu),其中客戶通過135端口的對象解析服務(wù)(Object Reslover Service )完成DCOM組件對象的激活、服務(wù)器查詢、對象保活及回收(Pinging機(jī)制)等任務(wù),客戶激活DCOM組件對象后,其可通過服務(wù)端返回的信息獲取動態(tài)端口。服務(wù)器通過該動態(tài)端口向客戶提供DCOM組件服務(wù)(ORPC服務(wù)),即客戶通過該動態(tài)端口可實現(xiàn)DCOM組件相關(guān)接口的遠(yuǎn)程過程調(diào)用。因此當(dāng)OPC通訊時,OPC服務(wù)器將通過動態(tài)端口提供OPC組件相關(guān)服務(wù)。


3.JPG

圖2 DCOM實現(xiàn)架構(gòu)


在DCOM服務(wù)中,DCOM對象是客戶與服務(wù)器間進(jìn)行信息交互的實體,其由對象管理服務(wù)(ObjectExporter)負(fù)責(zé)管理實現(xiàn),客戶對某個對象只能通過該對象實現(xiàn)的接口進(jìn)行信息請求。每一個DCOM接口規(guī)定了一組方法用于實現(xiàn)具體的邏輯功能,每一個邏輯功能規(guī)定了一套輸入輸出參數(shù)。每個DCOM接口都具有唯一標(biāo)識IID,其所包含的方法(即函數(shù)接口)采用操作數(shù)(Operation Number)表示, 因此OPC規(guī)范所提供的OPC標(biāo)準(zhǔn)接口為OPC客戶與OPC服務(wù)器間的一組協(xié)議。OPC客戶程序通過提供OPC接口IID獲取OPC接口指針(又稱IPID),即可通過IPID調(diào)用接口相關(guān)OPC方法(以下稱OPC指令),從而實現(xiàn)OPC指令對應(yīng)的邏輯功能[6]。


4.jpg

圖3 OPC通訊協(xié)議層次


DCE/RPC協(xié)議作為DCOM的底層通訊協(xié)議使得DCOM能夠通過網(wǎng)絡(luò)進(jìn)行信息交互,其支持多種傳輸層協(xié)議,包括UDP、TCP、SMB2等。由于DCOM技術(shù)采用了面向連接的通訊機(jī)制,其采用TCP協(xié)議(通訊協(xié)議層次如圖3所示)。


若DCE/RPC采用TCP作為傳輸層協(xié)議,其數(shù)據(jù)包由首部(PDU Header)、數(shù)據(jù)包主體信息(PDU Body) 以及數(shù)據(jù)包安全信息(Authentication Body)組成,如圖4所示。其中PDU Header描述了數(shù)據(jù)包結(jié)構(gòu)組成信息,PDU body 描述了數(shù)據(jù)包的基本內(nèi)容,Authentication Body則描述了數(shù)據(jù)包所采用的安全協(xié)議的相關(guān)信息。DCE/RPC包括Bind、Bind_ack、Bind_nak、Alter_context、Alter_context_response、Request、Response、Fault、Shutdown、Cancel、Orphaned9種類型的PDU數(shù)據(jù)包。其中Request數(shù)據(jù)包以及Response數(shù)據(jù)包用于DCOM方法的遠(yuǎn)程過程調(diào)用,即服務(wù)器從客戶的Request包中獲取DCOM方法的輸入?yún)?shù),在本地執(zhí)行DCOM方法后,將相應(yīng)的輸出參數(shù)通過Response包返回給客戶,其DCOM方法的輸入輸出參數(shù)信息采用NDR32編碼方式進(jìn)行信息封裝[7-8]。


5.jpg

圖4 RPC數(shù)據(jù)包結(jié)構(gòu)


3 OPC安全防護(hù)具體實現(xiàn)的討論


為了解決OPC通訊存在安全防護(hù)薄弱的問題,絕大多數(shù)工控安全廠商通過將OPC安全網(wǎng)關(guān)以串聯(lián)方式部署在OPC服務(wù)器與OPC客戶端的通訊鏈路上(如圖5所示),通過隊列緩存每包OPC通訊數(shù)據(jù)包, 使用OPC通訊安全防護(hù)算法對每一組OPC數(shù)據(jù)包進(jìn)行深度解析,將符合OPC通訊安全規(guī)則的數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā),同時丟棄非法的OPC數(shù)據(jù)包。本文將從DCE/RPC數(shù)據(jù)包基本格式檢查、OPC動態(tài)端口跟蹤、OPC非法指令過濾三方面實現(xiàn)對OPC通訊的有效監(jiān)控,保證OPC通訊的安全性。


6.jpg

圖5 OPC網(wǎng)關(guān)部署結(jié)構(gòu)


3.1 OPC動態(tài)端口跟蹤


OPC客戶通過135端口連接至OPC服務(wù)器后,通過發(fā)送IActivation::RemoteActivation()方法的Request數(shù)據(jù)包請求OPC組件的連接信息,OPC服務(wù)器將通過相應(yīng)的Response數(shù)據(jù)包返回包含了動態(tài)端口、OPC服務(wù)器計算機(jī)名、OPC服務(wù)器IP地址等內(nèi)容的OPC通訊連接信息。因此OPC安全網(wǎng)關(guān)通過監(jiān)控IActivation::RemoteActivation()方法的遠(yuǎn)程調(diào)用過程獲取OPC動態(tài)端口,然后建立相應(yīng)的OPC通訊訪問控制規(guī)則(ACL),其OPC的ACL規(guī)則包括源地址、目的地址、OPC服務(wù)端口(即動態(tài)端口)信息,若數(shù)據(jù)包無法從ACL規(guī)則庫中找到匹配的ACL規(guī)則,數(shù)據(jù)包丟棄,否則數(shù)據(jù)包將繼續(xù)進(jìn)行TCP狀態(tài)檢測,最后完成OPC應(yīng)用層協(xié)議解析。OPC安全網(wǎng)關(guān)打開動態(tài)端口后,實時監(jiān)控OPC通訊以判斷動態(tài)端口的有效性。若OPC通訊長時間保持無連接狀態(tài),OPC安全網(wǎng)關(guān)將刪除OPC連接相應(yīng)的ACL規(guī)則,從而關(guān)閉無效的OPC通訊動態(tài)端口,OPC動態(tài)端口識別軟件流程如圖6所示。


7.jpg

圖6 OPC動態(tài)端口識別


3.2 OPC指令過濾


OPC客戶在OPC服務(wù)器建立OPC組件服務(wù)的TCP連接后,將調(diào)用相應(yīng)的OPC指令獲取相應(yīng)OPC服務(wù)。因此OPC安全網(wǎng)關(guān)通過實時跟蹤OPC客戶端向OPC服務(wù)器發(fā)起的OPC方法調(diào)用過程,檢查客戶所調(diào)用OPC指令的合法性,若OPC指令為非法指令,則OPC安全網(wǎng)關(guān)丟棄數(shù)據(jù)包,同時刪除OPC連接相應(yīng)的ACL規(guī)則以中斷相應(yīng)的OPC通訊。為了提高系統(tǒng)的靈活性,OPC安全網(wǎng)關(guān)可在內(nèi)部建立OPC指令白名單作為OPC指令合法性檢查的依據(jù),用戶可根據(jù)自身需求,配置OPC指令白名單,實現(xiàn)不同OPC客戶的訪問控制,這樣可進(jìn)一步限制OPC遠(yuǎn)程過程調(diào)用行為,提高了系統(tǒng)的安全性。OPC指令過濾的軟件流程如圖7所示。


8.jpg

圖7 OPC指令過濾


4 結(jié)語


本文分析了OPC通訊存在的安全風(fēng)險及OPC通訊原理。重點討論了OPC通訊安全防護(hù)方法,分別針對OPC通訊動態(tài)端口的跟蹤、OPC指令過濾等作了進(jìn)一步的分析與闡述,通過部署OPC安全網(wǎng)關(guān)實時跟蹤OPC通訊動態(tài)端口,保持OPC通訊端口打開數(shù)量的最小化,解決傳統(tǒng)防火墻無法有效地進(jìn)行OPC動態(tài)端口防護(hù)的問題。與此同時,通過OPC指令過濾算法,過濾非法OPC指令,進(jìn)一步降低了OPC通訊的安全風(fēng)險。目前OPC安全防護(hù)相關(guān)應(yīng)用還處于起步階段,國內(nèi)幾家工控安全廠商分別推出了OPC安全防護(hù)產(chǎn)品,但尚未得到廣泛應(yīng)用,OPC安全防護(hù)相關(guān)技術(shù)方案、產(chǎn)品還需進(jìn)一步論證、優(yōu)化。


作者簡介

馬納(1989-),男,浙江慈溪人,現(xiàn)就職于浙江中控技術(shù)股份有限公司,主要從事工業(yè)控制系統(tǒng)信息安全相關(guān)技術(shù)研究。


參考文獻(xiàn):

[1] OPC Foundation. OPC Overview 1.00[M]. 1998: 6.


[2] Microsoft. Distributed Component Object Model (DCOM)[A]. Remote Protocol[M], 1998.


[3] 趙麗敏, 童舜海. 基于RPC的安全問題研究[J]. 麗水學(xué)院學(xué)報, 2007, 29 (05) : 85.


[4] OSIsoft. DCOM Security and Configuration Guide [M], 2012: 1.


[5] 伍光勝, 鄭明輝等. COM/DCOM技術(shù)的分析及應(yīng)用[J]. 計算機(jī)應(yīng)用研究. 2001 (9) : 65.


[6] 高立濤. Windows 網(wǎng)絡(luò)下的RPC攻擊檢測方法研究[D]. 北京: 北京交通大學(xué), 2007.


摘自《工業(yè)控制系統(tǒng)信息安全》專刊第三輯

熱點新聞

推薦產(chǎn)品

x
  • 在線反饋
1.我有以下需求:



2.詳細(xì)的需求:
姓名:
單位:
電話:
郵件:
主站蜘蛛池模板: 久久久久久久久久久福利观看 | 免费成人高清视频 | 337p粉嫩大胆噜噜噜鲁 | 深夜国产成人福利在线观看女同 | 国产欧美va欧美va香蕉在线观 | 色青五月天 | 九九亚洲 | 韩国美女爽快一级毛片黄 | 一级真人毛片 | 亚洲精品网址 | 日本免费一区二区三区a区 日本免费一区二区三区看片 | 中文字幕一区二区在线视频 | 亚洲性天堂 | 国产精品夜色视频一级区 | 欧美午夜伦y4480私人影院 | 国产精品一区伦免视频播放 | 亚洲理论片在线观看 | 欧美一级片免费在线观看 | 2021精品国产品免费观看 | 久久精品a一国产成人免费网站 | 丝袜毛片| 国产精品免费一区二区三区 | 亚洲热播| 国内精品久久久久久野外 | 国产精品黄色片 | 三级全黄视频 | 一区免费在线观看 | 亚洲国产剧情在线精品视 | 九九精品视频一区在线 | 国产精品免费视频一区 | 韩国毛片免费看 | 国产美女一区精品福利视频 | 中文字幕亚洲欧美日韩不卡 | 中文字幕亚洲 综合久久 | 亚洲欧美日韩另类精品一区二区三区 | 亚洲美女综合网 | 国产精品日韩欧美一区二区 | 一区二区三区高清在线 | 黄色欧美视频 | 热99re久久精品精品免费 | 亚洲精品国产高清不卡在线 |