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