本發(fā)明屬于工業(yè)控制信息安全
技術(shù)領(lǐng)域:
,更為具體地講,涉及一種iec60870-5-104通信訪問控制方法。
背景技術(shù):
:iec60870-5-104網(wǎng)絡(luò)傳輸規(guī)約是國(guó)際標(biāo)準(zhǔn)規(guī)約,主要應(yīng)用于電力系統(tǒng)變電站計(jì)算機(jī)監(jiān)控系統(tǒng)或子站rtu(遠(yuǎn)程終端控制系統(tǒng))與主站scada系統(tǒng)之間的數(shù)據(jù)通信。iec60870-5-104協(xié)議的安全性對(duì)電力系統(tǒng)非常重要。然而,iec60870-5-104是一種開放協(xié)議,它的報(bào)文結(jié)構(gòu)和數(shù)據(jù)格式都是公開的,并且在沒有足夠的安全措施下,存在安全隱患,攻擊者能夠利用符合iec60870-5-104協(xié)議規(guī)則的數(shù)據(jù)報(bào)文實(shí)施欺騙性攻擊,例如,攻擊者能夠在iec60870-5-104協(xié)議報(bào)文的傳輸過程中,利用符合iec60870-5-104協(xié)議規(guī)則的數(shù)據(jù)包,篡改或者偽造iec60870-5-104數(shù)據(jù)報(bào)文,引起系統(tǒng)錯(cuò)誤甚至破壞,嚴(yán)重威脅了電力系統(tǒng)的安全性。若要防范此類欺騙性攻擊,需要對(duì)iec60870-5-104數(shù)據(jù)內(nèi)容進(jìn)行過濾,即對(duì)應(yīng)用層進(jìn)行深度包過濾。由于欺騙性攻擊的數(shù)據(jù)包是符合iec60870-5-104協(xié)議規(guī)則的,而傳統(tǒng)防火墻不能識(shí)別,因此無法防范此類攻擊。因此,為了阻止傳統(tǒng)防火墻無法防范的欺騙性攻擊,本發(fā)明提出了一種基于神經(jīng)網(wǎng)絡(luò)算法進(jìn)行iec60870-5-104通信訪問控制的方法。此訪問控制方法部署在主站與子站之間的安全防護(hù)模塊,捕獲通過安全防護(hù)模塊的iec60870-5-104數(shù)據(jù)報(bào)文,并且通過深度包過濾技術(shù),對(duì)應(yīng)用層數(shù)據(jù)進(jìn)行過濾來實(shí)現(xiàn)通信訪問控制,提高iec60870-5-104通信過程的安全性與可靠性,保障電力系統(tǒng)的安全。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的目的在于克服現(xiàn)有技術(shù)的不足,提供一種iec60870-5-104通信訪問控制方法,通過iec60870-5-104深度包過濾技術(shù),實(shí)現(xiàn)主站與子站之間的通信訪問控制,提高了iec60870-5-104通信過程中的安全性與穩(wěn)定性,防范欺騙性攻擊。為實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明一種iec60870-5-104通信訪問控制方法,其特征在于,包括以下步驟:(1)、捕獲數(shù)據(jù)包在主站與子站之間利用以太網(wǎng)數(shù)據(jù)包捕捉工具,根據(jù)iec60870-5-104協(xié)議端口捕獲iec60870-5-104數(shù)據(jù)包,并且剔除不含iec60870-5-104協(xié)議的數(shù)據(jù)包;(2)、數(shù)據(jù)預(yù)處理(2.1)、提取每條iec60870-5-104數(shù)據(jù)包的控制域第一個(gè)八位位組的第1位、第2位的比特的值,分別記為cf1-1、cf1-2,控制域第三個(gè)八位位組的第1位的比特的值,記為cf3-1,類型標(biāo)識(shí)位的一個(gè)字節(jié)的值,記為ti,以及傳送原因位的兩個(gè)字節(jié)的值,記為tr;(2.2)、將每條iec60870-5-104數(shù)據(jù)包中提取到的cf1-1、cf1-2、cf3-1、ti、tr組合成一組數(shù)據(jù),數(shù)據(jù)格式為:(cf1-1,cf1-2,cf3-1,ti,tr);(3)、判斷每組數(shù)據(jù)(cf1-1,cf1-2,cf3-1,ti,tr)是否為合法數(shù)據(jù)若cf1-1=1,cf1-2=0,cf3-1=0,或者cf1-1=1,cf1-2=1,cf3-1=0,則該組數(shù)據(jù)為合法數(shù)據(jù),否非為非法數(shù)據(jù);若cf1-1=0,cf3-1=0,則按如下規(guī)則判斷:1)、ti為9或11或13或38-40時(shí),則該條數(shù)據(jù)為合法數(shù)據(jù),否非為非法數(shù)據(jù);2)、ti為1或3或30-32時(shí),若tr為3,則該條數(shù)據(jù)為合法數(shù)據(jù),否非為非法數(shù)據(jù);3)、ti為15時(shí),若tr為37,則該條數(shù)據(jù)為合法數(shù)據(jù),否非為非法數(shù)據(jù);4)、ti為46或47或100或101時(shí),若tr為6或7或10,則該條數(shù)據(jù)為合法數(shù)據(jù),否非為非法數(shù)據(jù);5)、ti為104時(shí),若tr為6或7,則該條數(shù)據(jù)為合法數(shù)據(jù)包,否非為非法數(shù)據(jù);(4)、構(gòu)建基于神經(jīng)網(wǎng)絡(luò)的訪問控制將數(shù)據(jù)(cf1-1,cf1-2,cf3-1,ti,tr)作為神經(jīng)網(wǎng)絡(luò)模型的輸入,其合法數(shù)據(jù)(cf1-1,cf1-2,cf3-1,ti,tr)對(duì)應(yīng)的輸出設(shè)置為1,非法數(shù)據(jù)(cf1-1,cf1-2,cf3-1,ti,tr)對(duì)應(yīng)的輸出設(shè)置為0,完成對(duì)神經(jīng)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練;(5)、通信訪問控制模塊對(duì)通信數(shù)據(jù)包進(jìn)行異常流量檢測(cè)在實(shí)際的工業(yè)環(huán)境中進(jìn)行檢測(cè),通信訪問控制模塊在獲取數(shù)據(jù)包之后,將數(shù)據(jù)包按照步驟(1)~(2)所述方法調(diào)整成標(biāo)準(zhǔn)輸入數(shù)據(jù)(cf1-1,cf1-2,cf3-1,ti,tr),并輸入到神經(jīng)網(wǎng)絡(luò)模型中進(jìn)行檢測(cè),若神經(jīng)網(wǎng)絡(luò)模型輸出為1,則判斷該數(shù)據(jù)正常,若神經(jīng)網(wǎng)絡(luò)模型輸出為0,則判斷該數(shù)據(jù)異常。本發(fā)明一種iec60870-5-104通信訪問控制方法,通過提取iec60870-5-104協(xié)議中控制域第一個(gè)八位位組的第1位、控制域第一個(gè)八位位組的第2位、控制域第三個(gè)八位位組的第1位、類型標(biāo)識(shí)和傳送原因作為特征,利用神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)上述特征的特定組合,從而得到訪問控制的標(biāo)準(zhǔn)匹配規(guī)則;再將捕獲的數(shù)據(jù)包通過預(yù)處理得到待檢測(cè)序列,將得到的序列與標(biāo)準(zhǔn)匹配規(guī)則進(jìn)行匹配,判斷數(shù)據(jù)包是否允許通過,從而完成iec60870-5-104通信訪問控制。本發(fā)明一種iec60870-5-104通信訪問控制方法還具有以下有益效果:(1)、本發(fā)明直接應(yīng)用于iec60870-5-104主站與子站之間,且無需改變控制系統(tǒng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),實(shí)現(xiàn)對(duì)主站與子站間的通信訪問控制。(2)、根據(jù)學(xué)習(xí)iec60870-5-104協(xié)議的數(shù)據(jù)幀類型、類型標(biāo)識(shí)和傳輸原因之間的特定組合,對(duì)于主站與子站之間的i格式、u格式和s格式數(shù)據(jù)幀,能夠分別進(jìn)行訪問控制。(3)、利用神經(jīng)網(wǎng)絡(luò)方法構(gòu)建了iec60870-5-104通信訪問控制模型,可以防范欺騙性攻擊。附圖說明圖1是iec60870-5-104通信拓?fù)浣Y(jié)構(gòu)圖;圖2是基于神經(jīng)網(wǎng)絡(luò)的訪問控制功能示意圖;圖3是本發(fā)明一種iec60870-5-104通信訪問控制方法流程圖。具體實(shí)施方式下面結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式進(jìn)行描述,以便本領(lǐng)域的技術(shù)人員更好地理解本發(fā)明。需要特別提醒注意的是,在以下的描述中,當(dāng)已知功能和設(shè)計(jì)的詳細(xì)描述也許會(huì)淡化本發(fā)明的主要內(nèi)容時(shí),這些描述在這里將被忽略。實(shí)施例圖1是iec60870-5-104通信拓?fù)浣Y(jié)構(gòu)圖。在本實(shí)施例中,如圖1所示,iec60870-5-104通信拓?fù)浣Y(jié)構(gòu)包括一個(gè)主站和多個(gè)子站,在主站和子站之間添加通信訪問控制,能夠有效地阻止攻擊。下面結(jié)合圖1對(duì)本發(fā)明一種iec60870-5-104通信訪問控制方法進(jìn)行詳細(xì)說明,如圖3所示,包括以下步驟:s1、捕獲數(shù)據(jù)包如圖2所示,在主站與子站之間利用以太網(wǎng)數(shù)據(jù)包捕捉工具,根據(jù)iec60870-5-104協(xié)議端口捕獲iec60870-5-104數(shù)據(jù)包,這樣通過設(shè)置的訪問控制剔除掉了不含iec60870-5-104協(xié)議的數(shù)據(jù)包;在本實(shí)施例中,通過iec60870-5-104協(xié)議端口2404捕獲iec60870-5-104數(shù)據(jù)包。s2、數(shù)據(jù)預(yù)處理s2.1、提取每條iec60870-5-104數(shù)據(jù)包的控制域第一個(gè)八位位組的第1位、第2位的比特的值,分別記為cf1-1、cf1-2,控制域第三個(gè)八位位組的第1位的比特的值,記為cf3-1,類型標(biāo)識(shí)位的一個(gè)字節(jié)的值,記為ti,以及傳送原因位的兩個(gè)字節(jié)的值,記為tr;其中,提取的具體步驟為:s2.1.1、提取iec60870-5-104數(shù)據(jù)包的控制域第一個(gè)八位位組的第1位比特的值cf1-1、控制域第一個(gè)八位位組的第2位比特的值cf1-2、控制域第三個(gè)八位位組的第1位比特的值cf3-1;s2.1.2、根據(jù)cf1-1、cf1-2、cf3-1的值來判斷該數(shù)據(jù)包的數(shù)據(jù)幀類型:若cf1-1=0,cf3-1=0,則該數(shù)據(jù)包為i幀;若cf1-1=1,cf1-2=0,cf3-1=0,則該數(shù)據(jù)包為s幀;若cf1-1=1,cf1-2=1,cf3-1=0,則該數(shù)據(jù)包為u幀;s2.1.3、根據(jù)該數(shù)據(jù)包的數(shù)據(jù)幀類型來提取類型標(biāo)識(shí)位的一個(gè)字節(jié)的值ti和傳送原因位的兩個(gè)字節(jié)的值tr:若該數(shù)據(jù)包為s幀或u幀,則將ti和tr均置為0,即ti=0、tr=0;若該數(shù)據(jù)包為i幀,則ti和tr按數(shù)據(jù)幀中的實(shí)際值提??;s2.2、將每條iec60870-5-104數(shù)據(jù)包中提取到的cf1-1、cf1-2、cf3-1、ti、tr組合成一組數(shù)據(jù),數(shù)據(jù)格式為:(cf1-1,cf1-2,cf3-1,ti,tr),從而剔除了iec60870-5-104數(shù)據(jù)報(bào)文中大量的冗余信息,減少了存儲(chǔ)信息所需要的空間資源。s3、判斷每組數(shù)據(jù)(cf1-1,cf1-2,cf3-1,ti,tr)是否為合法數(shù)據(jù)若cf1-1=1,cf1-2=0,cf3-1=0,或者cf1-1=1,cf1-2=1,cf3-1=0,則該組數(shù)據(jù)為合法數(shù)據(jù),否非為非法數(shù)據(jù);若cf1-1=0,cf3-1=0,則按如下規(guī)則判斷:1)、ti為9或11或13或38-40時(shí),則該條數(shù)據(jù)為合法數(shù)據(jù),否非為非法數(shù)據(jù);2)、ti為1或3或30-32時(shí),若tr為3,則該條數(shù)據(jù)為合法數(shù)據(jù),否非為非法數(shù)據(jù);3)、ti為15時(shí),若tr為37,則該條數(shù)據(jù)為合法數(shù)據(jù),否非為非法數(shù)據(jù);4)、ti為46或47或100或101時(shí),若tr為6或7或10,則該條數(shù)據(jù)為合法數(shù)據(jù),否非為非法數(shù)據(jù);5)、ti為104時(shí),若tr為6或7,則該條數(shù)據(jù)為合法數(shù)據(jù)包,否非為非法數(shù)據(jù);s4、構(gòu)建基于神經(jīng)網(wǎng)絡(luò)的訪問控制s4.1、構(gòu)建神經(jīng)網(wǎng)絡(luò)模型,設(shè)定預(yù)定精度和最大學(xué)習(xí)次數(shù);s4.2、設(shè)計(jì)神經(jīng)網(wǎng)絡(luò)模型,確定輸入結(jié)點(diǎn)個(gè)數(shù)m、隱含層結(jié)點(diǎn)個(gè)數(shù)h和輸出層結(jié)點(diǎn)個(gè)數(shù)n;本發(fā)明采用的神經(jīng)網(wǎng)絡(luò)模型輸入層結(jié)點(diǎn)數(shù)為5(分別對(duì)應(yīng)于5個(gè)特征),輸出層結(jié)點(diǎn)數(shù)為1,隱含層結(jié)點(diǎn)數(shù)目采用公式:其中,a為1-10的常數(shù)。s4.3、神經(jīng)網(wǎng)絡(luò)初始化;給各個(gè)權(quán)值分別賦一個(gè)在區(qū)間(-1,1)之間的隨機(jī)值,設(shè)定預(yù)定精度ε=0.001,最大學(xué)習(xí)次數(shù)m=1000;s4.4、構(gòu)造隱含層和輸入層各神經(jīng)元的輸入輸出關(guān)系:其中,hi表示隱含層輸入,ho表示隱含層輸出,yi表示輸出層輸入,yo表示輸出層輸出;s4.4、將步驟s3得到的數(shù)據(jù)(cf1-1,cf1-2,cf3-1,ti,tr)輸入到神經(jīng)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練;在本實(shí)施例中,將經(jīng)過數(shù)據(jù)處理后的1000條數(shù)據(jù)輸入神經(jīng)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練,并計(jì)算誤差函數(shù),部分?jǐn)?shù)據(jù)如表1所示,其中(x1,x2,x3,x4,,x5)分別對(duì)應(yīng)(cf1-1,cf1-2,cf3-1,ti,tr),;表1部分iec60870-5-104樣本序列x1x2x3x4x5yo1100010001006100047500100010001047110000101012000003310109201000101610101550010313100046610101041000103861010101101000100300101331計(jì)算誤差函數(shù)對(duì)輸出層神經(jīng)元和隱含層神經(jīng)元的偏導(dǎo)數(shù);通過修正權(quán)值,計(jì)算全局誤差e;其中,do為期望輸出,yo為輸出層輸出;在本實(shí)施例中,合法數(shù)據(jù)(cf1-1,cf1-2,cf3-1,ti,tr)對(duì)應(yīng)的輸出設(shè)置為1,非法數(shù)據(jù)(cf1-1,cf1-2,cf3-1,ti,tr)對(duì)應(yīng)的輸出設(shè)置為0;當(dāng)達(dá)到預(yù)定精度(e≤ε)或者學(xué)習(xí)次數(shù)達(dá)到1000時(shí)停止訓(xùn)練,從而完成對(duì)神經(jīng)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練。其中,部分輸入層與隱含層的連接權(quán)值如表2所示,隱含層與輸出層的連接權(quán)值如表3所示:表2部分輸入層與隱含層的連接權(quán)值ω00ω01ω02ω03ω04ω05ω06ω07ω08ω091.532.100.740.77-1.83-0.820.311.28-2.480.52ω10ω11ω12ω13ω14ω15ω16ω17ω18ω190.20-1.47-1.631.82-1.042.470.290.58-2.40-2.06表3隱含層與輸出層的連接權(quán)值ω00ω10ω20ω30ω40ω50ω60ω70ω80ω903.871.190.73-0.45-0.22-0.10-0.471.552.990.61(5)、通信訪問控制模塊對(duì)通信數(shù)據(jù)包進(jìn)行異常流量檢測(cè)在實(shí)際的工業(yè)環(huán)境中進(jìn)行檢測(cè),通信訪問控制模塊在獲取數(shù)據(jù)包之后,將數(shù)據(jù)包按照步驟(1)~(2)所述方法調(diào)整成標(biāo)準(zhǔn)輸入數(shù)據(jù)(cf1-1,cf1-2,cf3-1,ti,tr),并輸入到神經(jīng)網(wǎng)絡(luò)模型中進(jìn)行檢測(cè),若神經(jīng)網(wǎng)絡(luò)模型輸出為1,則判斷該數(shù)據(jù)正常,若神經(jīng)網(wǎng)絡(luò)模型輸出為0,則判斷該數(shù)據(jù)異常。盡管上面對(duì)本發(fā)明說明性的具體實(shí)施方式進(jìn)行了描述,以便于本
技術(shù)領(lǐng)域:
的技術(shù)人員理解本發(fā)明,但應(yīng)該清楚,本發(fā)明不限于具體實(shí)施方式的范圍,對(duì)本
技術(shù)領(lǐng)域:
的普通技術(shù)人員來講,只要各種變化在所附的權(quán)利要求限定和確定的本發(fā)明的精神和范圍內(nèi),這些變化是顯而易見的,一切利用本發(fā)明構(gòu)思的發(fā)明創(chuàng)造均在保護(hù)之列。當(dāng)前第1頁(yè)12