本發(fā)明涉及計算機領域,具體而言,涉及一種漏洞掃描方法、裝置和系統(tǒng)及工業(yè)控制系統(tǒng)。
背景技術:
工業(yè)控制中對工業(yè)控制系統(tǒng)的安全進行評估和維護的技術通常采用傳統(tǒng)的網(wǎng)絡端口信息獲取技術去識別被檢測對象。這種技術存在一個很大的缺點,即一旦被檢測的工控系統(tǒng)使用了非常規(guī)的網(wǎng)絡端口,或者對網(wǎng)絡端口信息進行了屏蔽,則漏洞檢測將失去作用。
現(xiàn)有技術中還存在一種基于模糊測試的工控漏洞挖掘檢測平臺,但是模糊測試算法對已知的公開的漏洞沒有精準的識別能力,這種平臺無法采用一個已知的知識漏洞庫作為比對目標以識別已知安全漏洞。此外,模糊測試很有可能由于其測試危險性導致系統(tǒng)運行故障和中斷,而工控系統(tǒng)均為涉及到業(yè)務運行的重要核心系統(tǒng),其本身的正常運行十分關鍵,任何安全檢測均因不得影響系統(tǒng)本身的安全運行,所以需要無損的掃描技術保障系統(tǒng)運行正常。
針對相關技術中不能對非常規(guī)網(wǎng)絡端口的工業(yè)控制系統(tǒng)進行漏洞掃描的問題,目前尚未提出有效的解決方案。
技術實現(xiàn)要素:
本發(fā)明的主要目的在于提供一種漏洞掃描方法、裝置和系統(tǒng)及工業(yè)控制系統(tǒng),以解決相關技術中不能對非常規(guī)網(wǎng)絡端口的工業(yè)控制系統(tǒng)進行漏洞掃描的問題。
為了實現(xiàn)上述目的,根據(jù)本發(fā)明的一個方面,提供了一種漏洞掃描方法。該方法包括:將漏洞掃描服務器發(fā)出的掃描請求轉換為工業(yè)控制設備采用的協(xié)議;將轉換后的掃描請求發(fā)送至工業(yè)控制設備;將工業(yè)控制設備反饋的掃描結果轉換為以太網(wǎng)協(xié)議;通過漏洞掃描服務器對轉換后的掃描結果執(zhí)行漏洞掃描。
進一步地,掃描請求為對工業(yè)控制設備的上位機進行掃描的請求,在將漏洞掃描服務器發(fā)出的掃描請求轉換為工業(yè)控制設備采用的協(xié)議之后,該方法還包括:將轉換后的掃描請求發(fā)送至工業(yè)控制設備的上位機;將工業(yè)控制設備的上位機反饋的掃描結果轉換為以太網(wǎng)協(xié)議;通過漏洞掃描服務器對轉換后的上位機的掃描結果執(zhí)行漏洞掃描。
為了實現(xiàn)上述目的,根據(jù)本發(fā)明的另一個方面,提供了一種漏洞掃描裝置。該裝置包括:第一轉換單元,用于將漏洞掃描服務器發(fā)出的掃描請求轉換為工業(yè)控制設備采用的協(xié)議;第一發(fā)送單元,用于將轉換后的掃描請求發(fā)送至工業(yè)控制設備;第二轉換單元,用于將工業(yè)控制設備反饋的掃描結果轉換為以太網(wǎng)協(xié)議;掃描單元,用于通過漏洞掃描服務器對轉換后的掃描結果執(zhí)行漏洞掃描。
進一步地,掃描請求為對工業(yè)控制設備的上位機進行掃描的請求,該裝置還包括:第二發(fā)送單元,用于在將漏洞掃描服務器發(fā)出的掃描請求轉換為工業(yè)控制設備采用的協(xié)議之后,將轉換后的掃描請求發(fā)送至工業(yè)控制設備的上位機,其中,第二轉換單元還用于將工業(yè)控制設備的上位機反饋的掃描結果轉換為以太網(wǎng)協(xié)議,掃描單元還用于通過漏洞掃描服務器對轉換后的上位機的掃描結果執(zhí)行漏洞掃描。
為了實現(xiàn)上述目的,根據(jù)本發(fā)明的另一個方面,提供了一種漏洞掃描系統(tǒng)。該系統(tǒng)包括:總線協(xié)議轉換器,與工業(yè)控制系統(tǒng)中的工業(yè)控制設備相連接,用于執(zhí)行工業(yè)控制設備采用的協(xié)議接口與以太網(wǎng)協(xié)議接口的轉換;漏洞掃描服務器,與總線協(xié)議轉換器相連接,用于對工業(yè)控制設備掃描漏洞。
進一步地,漏洞掃描服務器存儲有與工業(yè)控制設備對應的安全漏洞庫,漏洞掃描服務器用于根據(jù)安全漏洞庫判斷工業(yè)控制設備是否存在漏洞。
進一步地,工業(yè)控制設備為采用RS485串行通訊協(xié)議的設備,總線協(xié)議轉換器為RS485/以太網(wǎng)轉換器,RS485/以太網(wǎng)轉換器通過串行與工業(yè)控制設備連接和通訊并通過以太網(wǎng)與漏洞掃描服務器連接和通訊。
進一步地,工業(yè)控制設備為采用CAN通訊協(xié)議的設備,總線協(xié)議轉換器為CAN/以太網(wǎng)轉換器,CAN/以太網(wǎng)轉換器通過CAN通訊與工業(yè)控制設備連接和通訊并通過以太網(wǎng)與漏洞掃描服務器連接和通訊。
為了實現(xiàn)上述目的,根據(jù)本發(fā)明的另一個方面,提供了一種工業(yè)控制系統(tǒng)。該系統(tǒng)包括:本發(fā)明提供的漏洞掃描系統(tǒng);工業(yè)控制設備,與漏洞掃描系統(tǒng)相連接。
進一步地,
本發(fā)明通過將漏洞掃描服務器發(fā)出的掃描請求轉換為工業(yè)控制設備采用的協(xié)議;將轉換后的掃描請求發(fā)送至工業(yè)控制設備;將工業(yè)控制設備反饋的掃描結果轉換為以太網(wǎng)協(xié)議;通過漏洞掃描服務器對轉換后的掃描結果執(zhí)行漏洞掃描,解決了相關技術中不能對非常規(guī)網(wǎng)絡端口的工業(yè)控制系統(tǒng)進行漏洞掃描的問題,進而達到了能夠掃描非常規(guī)網(wǎng)絡端口的工業(yè)控制系統(tǒng)的漏洞的效果。
附圖說明
構成本申請的一部分的附圖用來提供對本發(fā)明的進一步理解,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構成對本發(fā)明的不當限定。在附圖中:
圖1是根據(jù)本發(fā)明實施例的漏洞掃描方法的流程圖;
圖2是根據(jù)本發(fā)明實施例的漏洞掃描裝置的示意圖;
圖3是根據(jù)本發(fā)明實施例的漏洞掃描系統(tǒng)的示意圖;
圖4是根據(jù)本發(fā)明第一實施例的工業(yè)控制系統(tǒng)的示意圖;
圖5是根據(jù)本發(fā)明第二實施例的工業(yè)控制系統(tǒng)的示意圖;
圖6是根據(jù)本發(fā)明第三實施例的工業(yè)控制系統(tǒng)的示意圖。
具體實施方式
需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。下面將參考附圖并結合實施例來詳細說明本發(fā)明。
為了使本技術領域的人員更好地理解本申請方案,下面將結合本申請實施例中的附圖,對本申請實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分的實施例,而不是全部的實施例。基于本申請中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應當屬于本申請保護的范圍。
需要說明的是,本申請的說明書和權利要求書及上述附圖中的術語“第一”、“第二”等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應該理解這樣使用的數(shù)據(jù)在適當情況下可以互換,以便這里描述的本申請的實施例。此外,術語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或對于這些過程、方法、產(chǎn)品或設備固有的其它步驟或單元。
本發(fā)明的實施例提供了一種漏洞掃描方法。
圖1是根據(jù)本發(fā)明實施例的漏洞掃描方法的流程圖。如圖1所示,該方法包括以下步驟:
步驟S101,將漏洞掃描服務器發(fā)出的掃描請求轉換為工業(yè)控制設備采用的協(xié)議
步驟S102,將轉換后的掃描請求發(fā)送至工業(yè)控制設備
步驟S103,將工業(yè)控制設備反饋的掃描結果轉換為以太網(wǎng)協(xié)議
步驟S104,通過漏洞掃描服務器對轉換后的掃描結果執(zhí)行漏洞掃描。
該實施例提供的漏洞掃描方法,通過將漏洞掃描服務器發(fā)出的掃描請求轉換為工業(yè)控制設備采用的協(xié)議;將轉換后的掃描請求發(fā)送至工業(yè)控制設備;將工業(yè)控制設備反饋的掃描結果轉換為以太網(wǎng)協(xié)議;通過漏洞掃描服務器對轉換后的掃描結果執(zhí)行漏洞掃描,解決了相關技術中不能對非常規(guī)網(wǎng)絡端口的工業(yè)控制系統(tǒng)進行漏洞掃描的問題,進而達到了能夠掃描非常規(guī)網(wǎng)絡端口的工業(yè)控制系統(tǒng)的漏洞的效果。
優(yōu)選地,掃描請求為對工業(yè)控制設備的上位機進行掃描的請求,在將漏洞掃描服務器發(fā)出的掃描請求轉換為工業(yè)控制設備采用的協(xié)議之后,該方法還可以包括:將轉換后的掃描請求發(fā)送至工業(yè)控制設備的上位機;將工業(yè)控制設備的上位機反饋的掃描結果轉換為以太網(wǎng)協(xié)議;通過漏洞掃描服務器對轉換后的上位機的掃描結果執(zhí)行漏洞掃描。
需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的計算機系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
本發(fā)明的實施例還提供了一種漏洞掃描裝置。需要說明的是,本發(fā)明實施例的漏洞掃描裝置可以用于執(zhí)行本發(fā)明的漏洞掃描方法。
圖2是根據(jù)本發(fā)明實施例的漏洞掃描裝置的示意圖。如圖2所示,該裝置包括第一轉換單元10,第一發(fā)送單元20,第二轉換單元30和掃描單元40。
第一轉換單元,用于將漏洞掃描服務器發(fā)出的掃描請求轉換為工業(yè)控制設備采用的協(xié)議;第一發(fā)送單元,用于將轉換后的掃描請求發(fā)送至工業(yè)控制設備;第二轉換單元,用于將工業(yè)控制設備反饋的掃描結果轉換為以太網(wǎng)協(xié)議;掃描單元,用于通過漏洞掃描服務器對轉換后的掃描結果執(zhí)行漏洞掃描。
該實施例提供的漏洞掃描裝置,通過第一轉換單元將漏洞掃描服務器發(fā)出的掃描請求轉換為工業(yè)控制設備采用的協(xié)議,第一發(fā)送單元將轉換后的掃描請求發(fā)送至工業(yè)控制設備,第二轉換單元將工業(yè)控制設備反饋的掃描結果轉換為以太網(wǎng)協(xié)議,掃描單元通過漏洞掃描服務器對轉換后的掃描結果執(zhí)行漏洞掃描,解決了相關技術中不能對非常規(guī)網(wǎng)絡端口的工業(yè)控制系統(tǒng)進行漏洞掃描的問題,進而達到了能夠掃描非常規(guī)網(wǎng)絡端口的工業(yè)控制系統(tǒng)的漏洞的效果。
優(yōu)選地,掃描請求為對工業(yè)控制設備的上位機進行掃描的請求,該裝置還包括:第二發(fā)送單元,用于在將漏洞掃描服務器發(fā)出的掃描請求轉換為工業(yè)控制設備采用的協(xié)議之后,將轉換后的掃描請求發(fā)送至工業(yè)控制設備的上位機,其中,第二轉換單元還用于將工業(yè)控制設備的上位機反饋的掃描結果轉換為以太網(wǎng)協(xié)議,掃描單元還用于通過漏洞掃描服務器對轉換后的上位機的掃描結果執(zhí)行漏洞掃描。
本發(fā)明的實施例還提供了一種漏洞掃描系統(tǒng)。
圖3是根據(jù)本發(fā)明實施例的漏洞掃描系統(tǒng)的示意圖。如圖3所示,該系統(tǒng)包括總線協(xié)議轉換器100和漏洞掃描服務器110。
總線協(xié)議轉換器與工業(yè)控制系統(tǒng)中的工業(yè)控制設備相連接,用于執(zhí)行工業(yè)控制設備采用的協(xié)議接口與以太網(wǎng)協(xié)議接口的轉換;漏洞掃描服務器與總線協(xié)議轉換器相連接,用于對工業(yè)控制設備掃描漏洞。
該實施例提供的漏洞掃描系統(tǒng),通過總線協(xié)議轉換器與工業(yè)控制系統(tǒng)中的工業(yè)控制設備相連接,用于執(zhí)行工業(yè)控制設備采用的協(xié)議接口與以太網(wǎng)協(xié)議接口的轉換;漏洞掃描服務器與總線協(xié)議轉換器相連接,用于對工業(yè)控制設備掃描漏洞,解決了相關技術中不能對非常規(guī)網(wǎng)絡端口的工業(yè)控制系統(tǒng)進行漏洞掃描的問題,進而達到了能夠掃描非常規(guī)網(wǎng)絡端口的工業(yè)控制系統(tǒng)的漏洞的效果。
漏洞掃描服務器中可以存儲有與工業(yè)控制設備對應的安全漏洞庫,漏洞掃描服務器用于根據(jù)安全漏洞庫判斷工業(yè)控制設備是否存在漏洞。
如果工業(yè)控制設備為采用RS485串行通訊協(xié)議的設備,則總線協(xié)議轉換器為RS485/以太網(wǎng)轉換器,RS485/以太網(wǎng)轉換器通過串行與工業(yè)控制設備連接和通訊并通過以太網(wǎng)與漏洞掃描服務器連接和通訊。
如果工業(yè)控制設備為采用CAN通訊協(xié)議的設備,則總線協(xié)議轉換器為CAN/以太網(wǎng)轉換器,CAN/以太網(wǎng)轉換器通過CAN通訊與工業(yè)控制設備連接和通訊并通過以太網(wǎng)與漏洞掃描服務器連接和通訊。
作為上述實施例的一個優(yōu)選實施例,漏洞掃描系統(tǒng)可以包括系統(tǒng)接入層、系統(tǒng)核心層、基礎平臺層三個部分。
基礎平臺層使用專用的機架式工控機硬件平臺,提供可靠穩(wěn)定的硬件環(huán)境,輔助以系統(tǒng)運行的必須軟件,組成基礎平臺層,在支持傳統(tǒng)網(wǎng)絡協(xié)議的基礎上,支持工業(yè)網(wǎng)絡協(xié)議。
系統(tǒng)核心層主要是漏洞掃描引擎,包含傳統(tǒng)主機完整掃描過程的一系列核心功能,存活判斷,端口掃描,服務識別,OS判斷,口令猜測等;具備PLC設備的識別功能以及DCS、PCS、SCADA系統(tǒng)識別功能。其中,系統(tǒng)核心層還可以融入傳統(tǒng)IT主機的配置核查功能、Web站點的掃描功能、對設備掃描的完整報表輸出功能等,并通過證書系統(tǒng)輔助控制模塊輸出,以提高加入升級系統(tǒng)保證系統(tǒng)的可維護性。
系統(tǒng)接入層主要負責系統(tǒng)自身和任務下發(fā)的接入管理,系統(tǒng)自身提供Web和Consle兩種管理模式,更為完善的進行配置管理;任務下發(fā)可從Web端以及開發(fā)的二次開發(fā)接口遠程下發(fā)。
本發(fā)明的實施例還提供了一種工業(yè)控制系統(tǒng)。需要說明的是,本發(fā)明實施例的工業(yè)控制系統(tǒng)包括本發(fā)明的漏洞掃描系統(tǒng)。
圖4是根據(jù)本發(fā)明第一實施例的工業(yè)控制系統(tǒng)的示意圖。如圖4所示,該系統(tǒng)包括本發(fā)明提供的漏洞掃描系統(tǒng)200和工業(yè)控制設備210。
本發(fā)明提供的漏洞掃描系統(tǒng)200包括總線協(xié)議轉換器和漏洞掃描服務器??偩€協(xié)議轉換器與工業(yè)控制系統(tǒng)中的工業(yè)控制設備相連接,用于執(zhí)行工業(yè)控制設備采用的協(xié)議接口與以太網(wǎng)協(xié)議接口的轉換;漏洞掃描服務器與總線協(xié)議轉換器相連接,用于對工業(yè)控制設備掃描漏洞。
工業(yè)控制設備與漏洞掃描系統(tǒng)相連接。工業(yè)控制設備可以至少包括以下之一:SCADA設備;DCS設備;PLC設備。
圖5是根據(jù)本發(fā)明第二實施例的工業(yè)控制系統(tǒng)的示意圖。
工業(yè)控制設備包括SCADA和多個PLC,通過RS485總線進行通訊。漏洞掃描系統(tǒng)通過RS485/以太網(wǎng)轉換器接入工業(yè)控制設備的RS485總線中,可以與RS485總線上連接的多個工業(yè)控制設備進行通訊,其中,漏洞掃描系統(tǒng)與RS485/以太網(wǎng)轉換器通過以太網(wǎng)連接。
RS485廣泛應用于石化、電力、交通、煙草、制造行業(yè)等工業(yè)自動化控制領域,工控協(xié)議主要采用了PROFIBUS-DP、MODBUS等主流的工控協(xié)議。
為了實現(xiàn)對非常規(guī)接口的工控設備掃描漏洞的效果,通過RS485轉以太網(wǎng)設備,使得基于以太網(wǎng)的漏洞掃描產(chǎn)品可以與基于RS485通訊接口的工控設備進行通訊,加上漏洞掃描產(chǎn)品對工控協(xié)議的支持,實現(xiàn)了對基于RS485串口的老式工業(yè)總線設備的漏洞掃描。
該實施例提供的工業(yè)控制系統(tǒng)不僅能對在工業(yè)控制系統(tǒng)中使用的傳統(tǒng)IT設備/系統(tǒng),比如操作系統(tǒng)、交換機、路由器、弱口令、FTP服務器、Web服務器等,進行安全檢測,還可以針對工業(yè)控制系統(tǒng)中所特有的設備/系統(tǒng),比如SCADA、DCS、PLC等,以及處于上游的數(shù)字化設計制造軟件進行漏洞掃描;同時,不僅可以對系統(tǒng)的漏洞進行評估,還可以對一些關鍵系統(tǒng)的配置進行安全性評估;同時,還可對主流的工控協(xié)議進行支持。此外,還支持對Advantech BroadWin、Citect、7-Technologies、Measuresoft、WellinTech等SCADA/HMI應用進行漏洞掃描,對Schneider、Siemens、VxWorks等DCS控制器嵌入式軟件(包括PLC)進行漏洞掃描,對數(shù)字化設計制造軟件平臺(如產(chǎn)品數(shù)據(jù)管理PDM、專用數(shù)控機床通信軟件eXtremeDNC、高級設計系統(tǒng)ADS等)進行漏洞掃描,通過支持基于總線轉換的檢測技術,解決傳統(tǒng)技術只能支持網(wǎng)絡IP接口而無法支持總線轉換的問題。
圖6是根據(jù)本發(fā)明第三實施例的工業(yè)控制系統(tǒng)的示意圖。
工業(yè)控制設備包括SCADA和多個PLC,通過CAN總線進行通訊。漏洞掃描系統(tǒng)通過CAN/以太網(wǎng)轉換器接入工業(yè)控制設備的CAN總線中,可以與CAN總線上連接的多個工業(yè)控制設備進行通訊,其中,漏洞掃描系統(tǒng)與CAN/以太網(wǎng)轉換器通過以太網(wǎng)連接。
CAN廣泛應用于石化、電力、交通、煙草、制造行業(yè)等工業(yè)自動化控制領域,工控協(xié)議主要采用了Devicenet、Ctrlnet、Ethernet IP等主流的工控協(xié)議。
為了實現(xiàn)對非常規(guī)接口的工控設備掃描漏洞的效果,通過CAN轉以太網(wǎng)設備,使得基于以太網(wǎng)的漏洞掃描產(chǎn)品可以與基于CAN通訊接口的工控設備進行通訊,加上漏洞掃描產(chǎn)品對工控協(xié)議的支持,實現(xiàn)了對基于CAN工業(yè)總線設備的漏洞掃描。
該實施例提供的工業(yè)控制系統(tǒng)能夠全面發(fā)現(xiàn)已知工控系統(tǒng)漏洞,漏洞掃描系統(tǒng)中內(nèi)置的安全漏洞庫包含了PLC、SCADA、HMI、組態(tài)系統(tǒng),西門子(Siemens)、施耐德電氣(Schneider)、研華科技(Advantech)、通用電氣(GE)與羅克韋爾(Rockwell)品牌系統(tǒng)的大量漏洞規(guī)則。并且,支持基于總線轉換的檢測技術,目前傳統(tǒng)技術只能支持網(wǎng)絡IP接口而無法支持總線轉換,導致很多工控系統(tǒng)無法被檢測和掃描。此外,該實施例提供的工業(yè)控制系統(tǒng)采用的是無損掃描技術,在工業(yè)控制系統(tǒng)中,業(yè)務的連續(xù)性、健康性是至關重要的,尤其是對一些核心監(jiān)控、生產(chǎn)系統(tǒng),因此,對其進行漏洞掃描時也需要做到“無害”、“無損”。本實施例采用把掃描融入到正常的業(yè)務中的思路,也就是說,掃描行為與正常的業(yè)務行為是一致的,這樣就能避免非正常的操作而造成對系統(tǒng)的影響,以實現(xiàn)對工業(yè)控制系統(tǒng)的無損害漏洞掃描。
顯然,本領域的技術人員應該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計算裝置來實現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網(wǎng)絡上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實現(xiàn),從而,可以將它們存儲在存儲裝置中由計算裝置來執(zhí)行,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結合。
以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領域的技術人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。