本發明涉及工業控制系統技術領域,具體而言涉及一種工業控制系統專用協議的識別。
背景技術:
隨著工業控制系統的迅速發展,工控系統專用協議也越來越被人們熟知。目前,協議識別技術主要有端口識別、內容識別和流量識別三種方式。端口協議識別技術是根據由IANA分配的端口號來識別協議的方法,該方法實現簡單且識別效率高。但是隨著網絡通信的發展和大量新協議的出現,且有些協議在通信過程中采用熟知端口或采用隨機端口來隱藏自己,導致端口識別技術的準確率降低。鑒于此,人們開始研究基于內容的識別技術,該技術通過分析協議的報文內容識別協議,提高了準確率。但內容識別技術是基于協議特征庫的,有時由于特征庫的不完善性也存在一些局限性,再者,有些協議在傳輸過程中進行了加密,使得協議無法識別。因此人們又提出了新的協議識別技術——流量識別技術,根據不同協議具有不同的流量(比如長度)特征來識別,可以解決內容識別技術不能識別加密流量的問題,但準確率較低。
技術實現要素:
本發明旨在解決現有技術中的問題,提出一種工控系統專用協議識別方法,基于端口識別技術、內容識別和流量識別技術相結合的協議識別方法,尤其規定是通過數據挖掘和機器學習的方法對工控系統專用協議進行分析,建立協議特征庫;在進行協議識別時,首先進行端口匹配,失敗之后再進行內容匹配和流量匹配,后兩種方式是根據協議特征庫進行的。
根據本發明還提出一種工控系統專用協議識別系統,包括用于構建協議特征庫的模塊以及用于協議匹配的模塊。
通過本發明的前述方法,能夠高效地識別工業控制系統專用協議。同時可以不斷更新特征庫,提高識別準確率。
應當理解,前述構思以及在下面更加詳細地描述的額外構思的所有組合只要在這樣的構思不相互矛盾的情況下都可以被視為本公開的發明主題的一部分。另外,所要求保護的主題的所有組合都被視為本公開的發明主題的一部分。
結合附圖從下面的描述中可以更加全面地理解本發明教導的前述和其他方面、實施例和特征。本發明的其他附加方面例如示例性實施方式的特征和/或有益效果將在下面的描述中顯見,或通過根據本發明教導的具體實施方式的實踐中得知。
附圖說明
附圖不意在按比例繪制。在附圖中,在各個圖中示出的每個相同或近似相同的組成部分可以用相同的標號表示。為了清晰起見,在每個圖中,并非每個組成部分均被標記。現在,將通過例子并參考附圖來描述本發明的各個方面的實施例,其中:
圖1是根據本發明某些實施例的工控系統專用協議識別系統的示意圖。
圖2是根據本發明某些實施例的工控系統專用協議識別系統的協議識別流程圖。
具體實施方式
為了更了解本發明的技術內容,特舉具體實施例并配合所附圖式說明如下。
在本公開中參照附圖來描述本發明的各方面,附圖中示出了許多說明的實施例。本公開的實施例不必定意在包括本發明的所有方面。應當理解,上面介紹的多種構思和實施例,以及下面更加詳細地描述的那些構思和實施方式可以以很多方式中任意一種來實施,這是因為本發明所公開的構思和實施例并不限于任何實施方式。另外,本發明公開的一些方面可以單獨使用,或者與本發明公開的其他方面的任何適當組合來使用。
結合圖1、圖2所示,根據本發明的實施例,一種工控系統專用協議識別系統,包括用于構建協議特征庫的模塊以及用于協議匹配的模塊。該系統基于端口識別技術、內容識別和流量識別技術相結合進行協議識別,尤其規定是通過數據挖掘和機器學習的方法對工控系統專用協議進行分析,建立協議特征庫;在進行協議識別時,首先進行端口匹配,失敗之后再進行內容匹配和流量匹配,后兩種方式是根據協議特征庫進行的。
結合圖1所述,本發明提出的專用協議識別系統中,用于建立協議特征庫模塊,通過數據挖掘和機器學習的方法對工控系統專用協議進行分析,建立協議特征庫。
協議匹配模塊根據特征庫進行協議匹配。尤其是在進行協議識別時,首先進行端口匹配,失敗之后再進行內容匹配和流量匹配,后兩種方式是根據協議特征庫進行的。
結合圖2所示,工控系統專用協議識別方法包括下述過程:
首先,對工控系統專用協議進行分析,確定合適的協議特征建立特征庫。具體地,可以先選定一些可能作為特征的建立特征集合,然后對集合中的特征進行篩選,得到新的子集。在一些具體的例子中,協議特征庫包括三種對應關系,一是端口號與協議的對應,二是特殊字符串與協議的對應,三是流量特征與協議的對應。
提取端口號時,先對報文進行協議分析,然后得到傳輸層的協議端口號。通過分析協議的報文中的特有字符串作為特征,進行內容匹配。然后再分析工控協議的流量特征,比如包傳輸時間、長度、包間隔時間或者帶寬等特征。因此,協議特征庫主要包含端口號、特有字符串和流量特征3種。
然后,對于輸入的協議,根據協議特征庫進行匹配。首先,進行端口號的匹配,如果成功則輸出是工控協議,如果失敗則進入下一步內容匹配,通過KMP算法將協議和特征庫中的特有字符串進行匹配,如果成功則輸出是工控協議,如果失敗則進行流量匹配,將協議與特征庫中的流量特征進行匹配,如果成功則輸出該協議為工控協議。如果三種匹配都不能完成,則輸出該協議不是工控協議。對于失敗的協議,可以進行特征提取,通過機器學習的方法判斷是否是新的特征,如果是則加入特征庫,以保證特征庫的完善。
雖然本發明已以較佳實施例揭露如上,然其并非用以限定本發明。本發明所屬技術領域中具有通常知識者,在不脫離本發明的精神和范圍內,當可作各種的更動與潤飾。因此,本發明的保護范圍當視權利要求書所界定者為準。