欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于文本編碼的超長(zhǎng)信令報(bào)文的檢測(cè)方法

文檔序號(hào):7627358閱讀:208來(lái)源:國(guó)知局
專利名稱:基于文本編碼的超長(zhǎng)信令報(bào)文的檢測(cè)方法
技術(shù)領(lǐng)域
本發(fā)明涉及網(wǎng)絡(luò)信息處理技術(shù),具體涉及一種基于文本編碼的超長(zhǎng)信令報(bào)文的檢測(cè)方法。
背景技術(shù)
隨著網(wǎng)絡(luò)融合趨勢(shì)的不斷增強(qiáng),以IMS(IP Multimedia Subsystem的縮寫(xiě),指IP多媒體子系統(tǒng))為核心的下一代網(wǎng)絡(luò)技術(shù)在為人們帶來(lái)靈活便利的網(wǎng)絡(luò)服務(wù)的同時(shí),下一代網(wǎng)絡(luò)的安全問(wèn)題已經(jīng)成為業(yè)界關(guān)注的重點(diǎn)。網(wǎng)絡(luò)邊界的安全是整個(gè)網(wǎng)絡(luò)安全的基礎(chǔ)。下一代網(wǎng)絡(luò)是一個(gè)融合的網(wǎng)絡(luò),支持用戶的隨時(shí)、隨地的接入,因此邊界安全尤其重要。由于下一代網(wǎng)絡(luò)出現(xiàn)比較晚,目前還沒(méi)有專門(mén)的下一代網(wǎng)絡(luò)入侵檢測(cè)工具,尤其是針對(duì)信令報(bào)文的檢測(cè)。在下一代網(wǎng)絡(luò)中,會(huì)話初始協(xié)議(以下縮寫(xiě)為SIP)、媒體網(wǎng)關(guān)控制協(xié)議(以下縮寫(xiě)為MGCP)和會(huì)話描述協(xié)議(以下縮寫(xiě)SDP)等信令協(xié)議都是基于文本編碼的,很容易受到異常數(shù)據(jù)包的攻擊。在異常數(shù)據(jù)包攻擊中,超長(zhǎng)數(shù)據(jù)包是最常用的方法和最顯著的特征。攻擊者向?qū)Ψ椒?wù)器發(fā)送大量的超長(zhǎng)數(shù)據(jù)包,其目的是造成服務(wù)器解析錯(cuò)誤或緩沖區(qū)溢出,導(dǎo)致服務(wù)器端出現(xiàn)一個(gè)致命錯(cuò)誤,或出現(xiàn)死機(jī)、或者服務(wù)器突然重新啟動(dòng)等癥狀。下面一個(gè)超長(zhǎng)畸形報(bào)文的樣例INVITE sipbob@biloxi.com
SIP/2.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ViaSIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhdsMax-Forwards70ToBob<sipbob@biloxi.com>
FromAlice<sipalice@atlanta.com>;tag=1928301774Call-IDa84b4c76e66710@pc33.atlanta.comCSeq314159 INVITEContact<sipalice@pc33.atlanta.com>
Content-Typeapplication/sdpContent-Length142其中,下劃線部分為本信令的超長(zhǎng)部分,毫無(wú)疑問(wèn),這種超長(zhǎng)報(bào)文信令進(jìn)入系統(tǒng)后可能造成網(wǎng)絡(luò)效率降低以至不能正常工作,而對(duì)到來(lái)的信令報(bào)文進(jìn)行有效的檢測(cè)是阻止這種畸形報(bào)文入侵的有效良方,現(xiàn)有技術(shù)還不能提供阻止這種惡意的超長(zhǎng)畸形報(bào)文的技術(shù),給下一代網(wǎng)絡(luò)的邊際安全帶來(lái)諸多隱患。

發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問(wèn)題在于,針對(duì)黑客使用超長(zhǎng)數(shù)據(jù)包攻擊,提出了一種網(wǎng)絡(luò)超長(zhǎng)信令報(bào)文的檢測(cè)方法,能夠有效地將畸形報(bào)文阻止在網(wǎng)絡(luò)邊際外,換言之,本發(fā)明的目的在于,如何在分析總結(jié)超長(zhǎng)數(shù)據(jù)包特征的基礎(chǔ)上,提出一種識(shí)別和處理信令報(bào)文中的超長(zhǎng)報(bào)文的方法。
本發(fā)明上述技術(shù)問(wèn)題這樣解決,構(gòu)造一種基于文本編碼的超長(zhǎng)信令報(bào)文的檢測(cè)方法,其特征在于,包括以下步驟B1)根據(jù)文本編碼的信令協(xié)議構(gòu)造基于特征分隔符的超長(zhǎng)報(bào)文識(shí)別函數(shù);B2)對(duì)收到的信令報(bào)文用識(shí)別函數(shù)識(shí)別是否為超長(zhǎng)報(bào)文;B3)如屬于超長(zhǎng)報(bào)文則將其過(guò)濾,否則繼續(xù)其它處理。
在按照本發(fā)明提供的上述檢測(cè)方法中,所述B1包括步驟B11)確定特征分隔符集合;B12)確定特征分隔符集合中任何兩個(gè)特征分隔符之間允許的最大間距的特征間距表;B13)確定任何兩個(gè)特征分隔符是否允許連續(xù)重復(fù)出現(xiàn)的特征分隔符約束關(guān)系表。
在按照本發(fā)明提供的上述檢測(cè)方法中,所述B2包括對(duì)收到的文本中的任何一個(gè)特征分隔符,如檢測(cè)到與所述特征分隔符約束關(guān)系表中不允許的特征分隔符直接相鄰,則確定收到的文本屬于超長(zhǎng)報(bào)文。
在按照本發(fā)明提供的上述檢測(cè)方法中,所述B2包括對(duì)收到的文本中的任何一個(gè)特征分隔符,如檢測(cè)到與間隔最近的另一個(gè)特征分隔符的距離超出所述特征間距表規(guī)定的最大間距,則確定收到的報(bào)文屬于超長(zhǎng)報(bào)文。
在按照本發(fā)明提供的上述檢測(cè)方法中,所述步驟B2包括行內(nèi)檢測(cè)步驟B23,所述行內(nèi)檢測(cè)步驟B23對(duì)每一個(gè)以回車換行符結(jié)束的行執(zhí)行以下步驟B231)提取本行的第一個(gè)特征分隔符S1和其后的一個(gè)特征分隔符S2;B232)在已提取的特征分隔符S1、S2基礎(chǔ)上,形成五元組(S1、F1、D、S2、F2),其中,F(xiàn)1是緊跟該第一個(gè)特征分隔符S1的第一個(gè)字符;D是兩個(gè)特征分隔符S1與S2之間的特征間距;F2是第二個(gè)特征分隔符S2后緊跟的第一個(gè)字符;B233)對(duì)五元組(S1、F1、D、S2、F2)進(jìn)行三項(xiàng)檢測(cè)如果F1是特征分隔符檢測(cè)S1和F1是否滿足屬于所述特征分隔符約束關(guān)系表規(guī)定的禁止相連的情形;如果F2是特征分隔符,檢測(cè)S2和F2是否滿足所述特征分隔符約束關(guān)系表規(guī)定的禁止相連的情形;檢測(cè)特征間距D是否滿足大于所述特征間距表中規(guī)定的S1和S2之間的最大間距;如果三項(xiàng)檢測(cè)中有任何一項(xiàng)條件滿足,則確認(rèn)該報(bào)文是超長(zhǎng)報(bào)文并退出,否則,執(zhí)行步驟B234);B234)檢測(cè)是否到本行結(jié)尾,如未到本行結(jié)尾,則將當(dāng)前特征分隔符S2作為S1、提取下一個(gè)特征分隔符作為S2,返回到步驟B232);如已到本行結(jié)尾,則轉(zhuǎn)到步驟B235);B235)判斷是否完成所有行內(nèi)檢測(cè),如未完成則選擇下一個(gè)行,轉(zhuǎn)到步驟B231);如已經(jīng)完成所有行內(nèi)檢測(cè)則退出。
在按照本發(fā)明提供的上述檢測(cè)方法中,所述步驟B23之前還包括行間檢測(cè)步驟B22,所述行間檢測(cè)步驟B22包括以下步驟B221)對(duì)輸入信令報(bào)文中每一個(gè)以回車換行符結(jié)束的成行的文本段,反復(fù)執(zhí)行以下步驟B222-B223,直到確定當(dāng)前報(bào)文為超長(zhǎng)報(bào)文或輸入信令報(bào)文結(jié)束;B222)這樣產(chǎn)生文本段的五元組(S1、F1、D、S2、F2),使得第一行文本段的首字符或其它行文本段的前一行回車換行符為S1,緊跟S1后的第一個(gè)字符為F1,取S1后的第一個(gè)回車換行符為S2,取S2后緊跟的第一個(gè)字符為F2,符號(hào)S1與符號(hào)S2之間的間距為D;B223)對(duì)上述五元組檢測(cè)S1和F1是否滿足F1是特征分隔符,同時(shí)S1和F1屬于所述特征分隔符約束關(guān)系表規(guī)定的禁止相連的情形;檢測(cè)S2和F2是否滿足F2是特征分隔符,同時(shí)S2和F2屬于所述特征分隔符約束關(guān)系表規(guī)定的禁止相連的情形;檢測(cè)特征間距D是否滿足大于所述特征間距表中規(guī)定的S1和S2之間的最大間距;如有任何一項(xiàng)滿足,則確認(rèn)該報(bào)文為超長(zhǎng)報(bào)文并退出;否則,取下一行文本段,進(jìn)到步驟B222。
在按照本發(fā)明提供的上述檢測(cè)方法中,在所述步驟B22與所述步驟B23之間還包括步驟B224)如當(dāng)前輸入信令報(bào)文結(jié)束且沒(méi)有確認(rèn)為超長(zhǎng)報(bào)文,則形成用于指出輸入信令報(bào)文各個(gè)行文本段的位置和長(zhǎng)度的行分布位置表,包括報(bào)文首字符、由相對(duì)于前一行回車換行符之間距離的偏移量和回車換行符組成的有限序列對(duì)。
在按照本發(fā)明提供的上述檢測(cè)方法中,所述特征分隔符包括“(”/“)”/“<”/“>”/“@”/“,”/“;”/“”/DQUOTE/“/”/“[”/“]”/“=”/“{”/“}”/SP/CR/LF。
按照本發(fā)明提供的基于文本編碼的超長(zhǎng)信令報(bào)文的檢測(cè)方法,可以用軟件實(shí)現(xiàn),也可以做成專用的硬件檢測(cè)設(shè)備放在網(wǎng)絡(luò)的入口處實(shí)施檢測(cè)。利用本發(fā)明對(duì)超長(zhǎng)信令報(bào)文進(jìn)行有效的篩選和過(guò)濾,可防止黑客對(duì)服務(wù)器的攻擊和破壞,保證網(wǎng)絡(luò)服務(wù)的正常運(yùn)行;同時(shí),本發(fā)明的方法適用于所有文本型信令報(bào)文的超長(zhǎng)檢測(cè),對(duì)不同的文本信令協(xié)議,只需對(duì)特征間距表和特征分隔符約束關(guān)系表進(jìn)行更換調(diào)整相應(yīng)的參數(shù)即可,對(duì)保證網(wǎng)絡(luò)安全,尤其對(duì)抵御以超長(zhǎng)報(bào)文為特征的惡意攻擊具有十分顯著的效果。


圖1是實(shí)現(xiàn)本發(fā)明檢測(cè)方法的原理性邏輯框圖;圖2是利用本發(fā)明方法對(duì)超長(zhǎng)信令報(bào)文進(jìn)行檢測(cè)的流程示意圖;圖3是利用本發(fā)明方法進(jìn)行行間檢測(cè)的流程示意圖;圖4是利用本發(fā)明方法進(jìn)行行內(nèi)檢測(cè)的流程示意圖;具體實(shí)施方式
如圖1所示,本發(fā)明的檢測(cè)方法是實(shí)現(xiàn)基于文本編碼的超長(zhǎng)畸形信令報(bào)文的檢測(cè),包括過(guò)濾引擎1、數(shù)據(jù)關(guān)聯(lián)表2、特征間距表3和特征分隔符約束關(guān)系表4四個(gè)環(huán)節(jié),報(bào)文檢測(cè)可以通過(guò)程序或程序段實(shí)現(xiàn),也可以通過(guò)硬件裝置實(shí)現(xiàn)或部分硬件實(shí)現(xiàn)部分程序段實(shí)現(xiàn),用在網(wǎng)絡(luò)邊界處,對(duì)進(jìn)入網(wǎng)絡(luò)的信令報(bào)文進(jìn)行過(guò)濾,只有滿足要求的信令報(bào)文才可以通過(guò),即過(guò)濾掉超長(zhǎng)信令報(bào)文。其中,過(guò)濾引擎1接收輸入信令報(bào)文5,形成數(shù)據(jù)關(guān)聯(lián)表2,將數(shù)據(jù)關(guān)聯(lián)表2和特征間距表3、分隔符約束關(guān)系表4進(jìn)行比較,作出是否為超長(zhǎng)報(bào)文的判斷,如果是超長(zhǎng)報(bào)文,將其丟棄,只輸出不再包含超長(zhǎng)報(bào)文的信令報(bào)文6。
本發(fā)明對(duì)超長(zhǎng)報(bào)文數(shù)據(jù)的檢測(cè)的一個(gè)方面是基于特征間距的檢測(cè),即判斷兩個(gè)特征分隔符間的長(zhǎng)度,對(duì)應(yīng)于圖1中的特征間距表3。本發(fā)明對(duì)超長(zhǎng)報(bào)文數(shù)據(jù)的檢測(cè)的另一個(gè)方面是基于特征分隔符是否允許相連的約束關(guān)系的檢測(cè),即判斷兩個(gè)相鄰特征分隔符間是否被允許,規(guī)定是否允許特征分隔符相連的基礎(chǔ)是圖1中的特征分隔符約束關(guān)系表4。
按照本發(fā)明的方法適用于對(duì)所有基于文本編碼的信令信令報(bào)文出現(xiàn)的超長(zhǎng)報(bào)文的檢測(cè),只要根據(jù)具體的協(xié)議,重新定義特征間距表3中分隔符之間的長(zhǎng)度值以及特征分隔符約束關(guān)系表4中禁止相連的約束關(guān)系即可。
更具體地說(shuō),在本發(fā)明中,超長(zhǎng)信令報(bào)文是對(duì)基于文本編碼的信令報(bào)文而言的,每個(gè)信令報(bào)文一般由一個(gè)或幾個(gè)消息字段組成,每個(gè)消息字段的長(zhǎng)度都有一個(gè)范圍,超過(guò)這個(gè)范圍的信令報(bào)文稱為超長(zhǎng)信令報(bào)文。在本發(fā)明中,特征表示的是某種實(shí)體或處理過(guò)程(如協(xié)議、病毒、文件、程序?qū)懭?存在與否的痕跡,包括一些字節(jié)流及彼此之間的邏輯關(guān)系。特征包括字節(jié)特征和邏輯特征,是特征匹配的基本單位。在本發(fā)明中,特征分隔符是指用來(lái)判斷消息字段長(zhǎng)度的分隔符,在超長(zhǎng)信令報(bào)文檢測(cè)中,我們以特征分隔符之間的距離即特征間距做為檢測(cè)的基礎(chǔ)。這里定義的特征分隔符包括“(”/“)”/“<”/“>”/“@”/“,”/“;”/“”/ DQUOTE /“/”/“[”/“]”/“=”/“{”/“}”/SP/CR/LF。有了識(shí)別超長(zhǎng)信令報(bào)文的特征分隔符的定義后,將特征間距定義為特征分隔符之間允許的距離,是本發(fā)明判斷信令報(bào)文是否超長(zhǎng)的依據(jù)。
下面,以會(huì)話初始協(xié)議(英文為Session Initiation Protocol,以下縮寫(xiě)為SIP)為例,對(duì)如表1所示出的特征間距對(duì)應(yīng)表加以說(shuō)明。
表1會(huì)話初始協(xié)議特征間距對(duì)應(yīng)表


對(duì)表1說(shuō)明如下1)表中的“1”代表信令報(bào)文的第一個(gè)字符。
2)表中的“......”代表會(huì)話初始協(xié)議中未用到的特征分隔符。
3)表中的數(shù)值表示兩個(gè)特征間隔府之間以字節(jié)為單位的間距大小,對(duì)于表中每一個(gè)分隔符采用橫向判斷,如第二行空格(SP),每個(gè)分隔符表示在空格后面出現(xiàn)的第一個(gè)特征分隔符,數(shù)字則代表空格和這個(gè)分隔符之間可能的最大長(zhǎng)度,長(zhǎng)度單位是字節(jié),如果沒(méi)有數(shù)字出現(xiàn),表示兩個(gè)特征分隔符之間沒(méi)有聯(lián)系,可作為保留使用。
4)對(duì)于媒體網(wǎng)關(guān)控制協(xié)議(英文為Media Gateway Control Protocol媒體網(wǎng)關(guān)控制協(xié)議,縮寫(xiě)為MGCP)、會(huì)話描述協(xié)議(英文為Session DescriptionProtocol,縮寫(xiě)為SDP)等別的基于文本編碼的信令報(bào)文,僅需要根據(jù)各自協(xié)議調(diào)整特征間距即可。
本發(fā)明對(duì)超長(zhǎng)報(bào)文數(shù)據(jù)的檢測(cè)的另一個(gè)方面是基于特征分隔符約束關(guān)系表,對(duì)應(yīng)于圖1中的特征分隔符約束關(guān)系表4。其檢測(cè)原理是這樣的,一般情況下,在基于文本編碼的信令報(bào)文中僅允許少數(shù)幾個(gè)特征分隔符可以連續(xù)或重復(fù)出現(xiàn)(如冒號(hào)空格、分號(hào)空格、逗號(hào)空格、空格左尖括號(hào)、空格雙引號(hào)以及空格空格等),如果在信令報(bào)文中出現(xiàn)了連續(xù)兩個(gè)或兩個(gè)以上的特征分隔符,則同樣可認(rèn)為是一種超長(zhǎng)包。下面的表2給出了會(huì)話初始協(xié)議中特征分隔符之間的約束關(guān)系。
表2會(huì)話初始協(xié)議的特征分隔符約束關(guān)系表

對(duì)表2說(shuō)明如下1)“......”代表會(huì)話初始協(xié)議中未用到的特征分隔符。
2)“×”表示兩個(gè)特征分隔符之間存在約束關(guān)系不能連續(xù)出現(xiàn)。
3)對(duì)于媒體網(wǎng)關(guān)控制協(xié)議(英文為Media Gateway Control Protocol媒體網(wǎng)關(guān)控制協(xié)議,縮寫(xiě)為MGCP)、會(huì)話描述協(xié)議(英文為Session DescriptionProtocol,縮寫(xiě)為SDP)等別的基于文本編碼的信令數(shù)據(jù)報(bào),僅需要根據(jù)各自協(xié)議調(diào)整特征分隔符之間的約束關(guān)系。
有了特征間距表和分隔特征約束關(guān)系表后,我們就可以直接進(jìn)行輸入信令報(bào)文的超長(zhǎng)報(bào)文檢測(cè)了。其過(guò)程簡(jiǎn)單說(shuō)明如下實(shí)施例1對(duì)收到的文本中的任何一個(gè)特征分隔符,檢測(cè)其直接鄰接的字符是否是特征分隔符號(hào),如果是特征分隔符,則判斷兩個(gè)特征分隔符是否屬于特征分隔符約束關(guān)系表中不允許鄰接的情況,如果是,則說(shuō)明檢測(cè)到當(dāng)前文本為超長(zhǎng)報(bào)文;對(duì)收到的文本中的任何一個(gè)特征分隔符,檢測(cè)與其間隔最近的另一個(gè)特征分隔的距離是否超出特征間距表規(guī)定的最大間距,如果是則說(shuō)明檢測(cè)到當(dāng)前文本為超長(zhǎng)報(bào)文。
為實(shí)現(xiàn)對(duì)輸入信令報(bào)文的快速檢測(cè),本發(fā)明的方法利用了一個(gè)作為數(shù)據(jù)關(guān)聯(lián)的五元組(S1、F1、D、S2、F2),該五元組可以是圖1中過(guò)濾引擎1對(duì)輸入數(shù)據(jù)包5預(yù)處理的結(jié)果,是快速判斷數(shù)據(jù)包是否超長(zhǎng)的基礎(chǔ)。對(duì)五元組中的每個(gè)元素描述如下S1提取的第一個(gè)特征分隔符。
F1第一個(gè)特征分隔符緊跟的第一個(gè)字符。
D兩個(gè)特征分隔符之間的長(zhǎng)度即特征間距。
S2第一個(gè)特征分隔符后緊跟的第二個(gè)特征分隔符。
F2第二個(gè)特征分隔符后緊跟的第一個(gè)字符。
結(jié)合圖1,過(guò)濾引擎1是實(shí)現(xiàn)超長(zhǎng)報(bào)文檢測(cè)的核心,其作用包括1)對(duì)每個(gè)進(jìn)入網(wǎng)絡(luò)的信令報(bào)文進(jìn)行分析,提取其中的特征分隔符,將輸入的信令報(bào)文轉(zhuǎn)換成五元組集合(S1、F1、D、S2、F2);2)對(duì)五元組集合(S1、F1、D、S2、F2)檢測(cè)是否屬于特征間距表規(guī)定的超長(zhǎng)文本;3)對(duì)五元組集合(S1、F1、D、S2、F2)檢測(cè)是否屬于特征分隔符約束關(guān)系表規(guī)定的超長(zhǎng)報(bào)文,此時(shí),如果S1、F1同為特征分隔符或S2、F2同為特征分隔符,且屬于特征分隔符約束關(guān)系表禁止相連的情況,則當(dāng)前檢測(cè)到的報(bào)文屬于超長(zhǎng)報(bào)文。如果發(fā)現(xiàn)屬于超長(zhǎng)報(bào)文就停止檢測(cè),過(guò)濾掉此數(shù)據(jù)包。
實(shí)施例2對(duì)根據(jù)輸入信令報(bào)文形成的每一個(gè)五元組(S1、F1、D、S2、F2)進(jìn)行以下檢測(cè)如F1是特征分隔符且S1和F1是否滿足特征分隔符約束關(guān)系表中禁止相連的情況;如F2是特征分隔符且S2和f2是否滿足特征分隔符約束關(guān)系表中禁止相連的情況;特征間距D是否滿足特征間距表中定義的S1和S2之間的特征間距。如有任何一點(diǎn)滿足超長(zhǎng)報(bào)文條件,則過(guò)濾掉此報(bào)文。
如上述,任何文本段的五元組(S1、F1、D1、S2、F2)有三個(gè)檢測(cè)點(diǎn),檢測(cè)時(shí)同時(shí)檢測(cè)三個(gè)點(diǎn),如果有一點(diǎn)滿足超長(zhǎng)報(bào)文的條件,就認(rèn)為該文本段含超長(zhǎng)報(bào)文,可將其過(guò)濾掉。上述基于五元組的檢測(cè)是也適用于利用本發(fā)明方法進(jìn)行下文介紹的行間檢測(cè)和行內(nèi)檢測(cè)。
實(shí)施例3利用本發(fā)明的方法對(duì)超長(zhǎng)信令報(bào)文的檢測(cè),可以采用行間檢測(cè)和行內(nèi)檢測(cè)相結(jié)合的檢測(cè)方法,即,如圖2所示首先判斷信令報(bào)文中每行的長(zhǎng)度是否在正常范圍,只要有一行不滿足,即過(guò)濾掉此報(bào)文;如果每行都滿足,會(huì)生成一個(gè)行分布位置表,指導(dǎo)進(jìn)行行內(nèi)檢測(cè),判斷每行內(nèi)各個(gè)特征分隔符之間的特征間距是否滿足要求。
結(jié)合圖2,看整個(gè)檢測(cè)過(guò)程,在框201開(kāi)始輸入信令報(bào)文,在框202開(kāi)始行間檢測(cè),在框203對(duì)行間檢測(cè)結(jié)果進(jìn)行判斷,如果屬于超長(zhǎng)報(bào)文,則在框204中將其過(guò)濾;否則在框205,生成行位置分布表,啟動(dòng)行內(nèi)檢測(cè);在框206對(duì)行內(nèi)檢測(cè)結(jié)果進(jìn)行判斷,如果屬于超長(zhǎng)報(bào)文,在框207將其過(guò)濾;否則在框208作出讓信令報(bào)文通過(guò)的決定。
為說(shuō)明框202的行間檢測(cè)過(guò)程,參考圖3。行間檢測(cè)是根據(jù)回車換行符來(lái)判斷每行間的長(zhǎng)度是否滿足條件??捎蓤D1中的過(guò)濾引擎1,將特征分隔符(這里是回車換行)轉(zhuǎn)換到五元組(S1,F(xiàn)1,D,S2,F(xiàn)2)中,然后根據(jù)實(shí)施例2給出的五元組(S 1,F(xiàn)1,D,S2,F(xiàn)2)三點(diǎn)檢測(cè)的原則進(jìn)行判斷,如果不屬于超長(zhǎng)報(bào)文,進(jìn)行下一行的檢測(cè);否則,認(rèn)為該信令報(bào)文超長(zhǎng),停止檢測(cè)將其過(guò)濾掉。從具體給出行間檢測(cè)流程的圖3可見(jiàn),在框301中,輸入信令報(bào)文,在框302中,從輸入的信令報(bào)文中提取第一個(gè)字符和其后的第一個(gè)回車換行符,構(gòu)成一個(gè)以回車換行符結(jié)束的一行;在框303中將其映射(也可認(rèn)為是表達(dá)或預(yù)處理為)成一個(gè)五元組(S1、F1、D、S2、F2),在框304中,檢測(cè)此五元組中的三個(gè)檢測(cè)點(diǎn)是否有滿足超長(zhǎng)報(bào)文的;如果有,在框305中停止檢測(cè),丟掉該報(bào)文;否則在框306檢測(cè)是否到報(bào)文尾,如果已到報(bào)文末尾,在框307中形成行分布位置表,用于啟動(dòng)行內(nèi)檢測(cè);如果還沒(méi)有到報(bào)文末尾,在框308提取五元組中的第二個(gè)回車換行和下一個(gè)回車換行符,并轉(zhuǎn)到框303。所有的行間檢測(cè)完成后,會(huì)生成一個(gè)行位置分布表,如表3所示,該表可以作為行內(nèi)檢測(cè)的基礎(chǔ)。
表3行位置分布表

對(duì)表3簡(jiǎn)單說(shuō)明如下,偏移量是相對(duì)于前面的回車換行符之間的位移距離,換言之,所謂行位置分布表,用于指出輸入信令報(bào)文各個(gè)行文本段的位置和長(zhǎng)度,具體包括報(bào)文首字符、由相對(duì)于前一行回車換行符(字符)之間距離的偏移量和回車換行符組成的有限序列對(duì)。例如,如果一個(gè)報(bào)文有9行,行位置分布表的長(zhǎng)度為19,分別為首字符,n1,CR,n2,CR,n3......,n9,CR。其中CR為回車換行符。形成行位置分布表的過(guò)程實(shí)際上是計(jì)數(shù)的過(guò)程。
在圖2所示的實(shí)施例中,框205指出,在框202指出的行間檢測(cè)的基礎(chǔ)上,利用表3所示的行位置分布表進(jìn)行行內(nèi)檢測(cè)。其原理和行間檢測(cè)一樣,提取相鄰的兩個(gè)特征分隔符映射成五元組,然后根據(jù)五元組的檢測(cè)原則進(jìn)行判斷,如果不屬于超長(zhǎng)報(bào)文,進(jìn)行本行內(nèi)其它特征字符間的檢測(cè),否則,認(rèn)為該信令報(bào)文超長(zhǎng),停止檢測(cè)并將該報(bào)文過(guò)濾掉。如果所有的行內(nèi)檢測(cè)都滿足條件,則認(rèn)為此信令報(bào)文合格,系統(tǒng)允許此信令報(bào)文通過(guò)。圖4給出了對(duì)應(yīng)于圖2框205的行內(nèi)檢測(cè)的詳細(xì)流程。在框401中,根據(jù)行位置分布表選擇并提取一個(gè)行;在框402中,提取本行的第一個(gè)特征分隔符S1和其后的第二個(gè)特征分隔符S2;在框403中,用特征分隔符S1和S2為基礎(chǔ)提取相應(yīng)數(shù)據(jù)形成一個(gè)五元組(S1、F1、D、S2、F2);在框404中,對(duì)該五元組實(shí)施三個(gè)檢測(cè),如三個(gè)檢測(cè)中有任何一個(gè)滿足超長(zhǎng)報(bào)文的條件,則進(jìn)到框405丟棄該報(bào)文并退出檢測(cè);如三個(gè)檢測(cè)全部屬于正常報(bào)文,則進(jìn)到框406,判斷是否到本行末尾;如果已經(jīng)到本行末尾,則在框407中判斷是否完成所有行內(nèi)檢測(cè),如沒(méi)有完成所有行內(nèi)檢測(cè),則進(jìn)到框409開(kāi)始其余行的檢測(cè)并返回到框402;如在框407中判斷已經(jīng)完成所有行內(nèi)檢測(cè),則在框410中作出此報(bào)文不是超長(zhǎng)報(bào)文,讓其正常通過(guò);如在框406中,檢測(cè)到?jīng)]有到本行末尾,則轉(zhuǎn)到框408,在框408將當(dāng)前五元組的第二個(gè)特征分隔符作為S1和提取本行下一個(gè)特征分隔符作為S2,并轉(zhuǎn)到框403,繼續(xù)檢測(cè)。
在本實(shí)施例中,行間檢測(cè)是以回車換行符結(jié)束的行為單位進(jìn)行檢測(cè);行間檢測(cè)后進(jìn)行的行內(nèi)檢測(cè)是檢測(cè)一行內(nèi),兩個(gè)特征分隔符之間的文本段是否屬于超長(zhǎng)文本。兩者可以從不同的層面上,檢測(cè)出屬于超長(zhǎng)文本的所有可能。
實(shí)施例4可以直接進(jìn)行圖4所示的行內(nèi)檢測(cè)而不進(jìn)行圖3所示的行間檢測(cè),多半情況下,同樣可以及時(shí)檢測(cè)出輸入文本中的超長(zhǎng)文本。
實(shí)施例5本實(shí)施例是實(shí)施本發(fā)明網(wǎng)絡(luò)超長(zhǎng)信令報(bào)文檢測(cè)方法的一個(gè)模塊化表示,結(jié)合圖1,過(guò)濾引擎單元1用于將輸入信令報(bào)文的每一行及每一行內(nèi),進(jìn)行轉(zhuǎn)換,將轉(zhuǎn)換后的每個(gè)五元組(S1、F1、D、S2、F2)存放在五元組單元2;過(guò)濾引擎單元1還用于在行間檢測(cè)和行內(nèi)檢測(cè)環(huán)節(jié)中判斷五元組是否滿足特征間距表3和特征分隔符約束關(guān)系表4規(guī)定的屬于超長(zhǎng)報(bào)文的情形,如果屬于超長(zhǎng)報(bào)文,則過(guò)濾屬于超長(zhǎng)報(bào)文的文本信令;如不屬于超長(zhǎng)報(bào)文則輸出不屬于超長(zhǎng)報(bào)文的文本信令,繼續(xù)處理。其中,特征間距表3用于存放任何兩個(gè)特征分隔符之間最大允許間距,特征分隔符約束關(guān)系表4用于存放任何兩個(gè)特征分隔符是否允許連續(xù)重復(fù)出現(xiàn)的;五元組單元2中,S1是從文本段提取的第一個(gè)特征分隔符,F(xiàn)1是緊跟該第一個(gè)特征分隔符的第一個(gè)字符;D是兩個(gè)特征分隔符之間的特征間距;S2是第一個(gè)特征分隔符后第緊跟的第二個(gè)特征分隔符;F2是第二個(gè)特征分隔符后緊跟的第一個(gè)字符。
本發(fā)明針對(duì)基于文本編碼的信令協(xié)議,提出了利用超長(zhǎng)字段檢測(cè)出畸形報(bào)文的惡意攻擊的方法和裝置,可用于各種不同的基于文本編碼的信令協(xié)議。本發(fā)明的上述實(shí)施例僅僅是示范說(shuō)明性表述而非限制性表述。本領(lǐng)域普通技術(shù)人員可能根據(jù)本發(fā)明的啟示和教導(dǎo),對(duì)本發(fā)明實(shí)施例進(jìn)行某種改變,但這種變形和改變?nèi)匀粸楸旧暾?qǐng)權(quán)利要求書(shū)限定的保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種基于文本編碼的超長(zhǎng)信令報(bào)文的檢測(cè)方法,其特征在于,包括以下步驟B1)根據(jù)文本編碼的信令協(xié)議構(gòu)造基于特征分隔符的超長(zhǎng)報(bào)文識(shí)別函數(shù);B2)對(duì)收到的信令報(bào)文用識(shí)別函數(shù)識(shí)別是否為超長(zhǎng)報(bào)文;B3)如屬于超長(zhǎng)報(bào)文則將其過(guò)濾,否則繼續(xù)其它處理。
2.根據(jù)權(quán)利要求1所述方法,其特征在于,所述B1包括步驟B11)確定特征分隔符集合;B12)確定特征分隔符集合中任何兩個(gè)特征分隔符之間允許的最大間距的特征間距表;B13)確定任何兩個(gè)特征分隔符是否允許連續(xù)重復(fù)出現(xiàn)的特征分隔符約束關(guān)系表。
3.根據(jù)權(quán)利要求2所述方法,其特征在于,所述B2包括對(duì)收到的文本中的任何一個(gè)特征分隔符,如檢測(cè)到與所述特征分隔符約束關(guān)系表中不允許的特征分隔符直接相鄰,則確定收到的文本屬于超長(zhǎng)報(bào)文。
4.根據(jù)權(quán)利要求2所述方法,其特征在于,所述B2包括對(duì)收到的文本中的任何一個(gè)特征分隔符,如檢測(cè)到與間隔最近的另一個(gè)特征分隔符的距離超出所述特征間距表規(guī)定的最大間距,則確定收到的報(bào)文屬于超長(zhǎng)報(bào)文。
5.根據(jù)權(quán)利要求2所述方法,其特征在于,所述步驟B2包括行內(nèi)檢測(cè)步驟B23,所述行內(nèi)檢測(cè)步驟B23對(duì)每一個(gè)以回車換行符結(jié)束的行執(zhí)行以下步驟B231)提取本行的第一個(gè)特征分隔符S1和其后的一個(gè)特征分隔符S2;B232)在已提取的特征分隔符S1、S2基礎(chǔ)上,形成五元組(S1、F1、D、S2、F2),其中,F(xiàn)1是緊跟該第一個(gè)特征分隔符S1的第一個(gè)字符;D是兩個(gè)特征分隔符S1與S2之間的特征間距;F2是第二個(gè)特征分隔符S2后緊跟的第一個(gè)字符;B233)對(duì)五元組(S1、F1、D、S2、F2)進(jìn)行三項(xiàng)檢測(cè)如果F1是特征分隔符檢測(cè)S1和F1是否滿足屬于所述特征分隔符約束關(guān)系表規(guī)定的禁止相連的情形;如果F2是特征分隔符,檢測(cè)S2和F2是否滿足所述特征分隔符約束關(guān)系表規(guī)定的禁止相連的情形;檢測(cè)特征間距D是否滿足大于所述特征間距表中規(guī)定的S1和S2之間的最大間距;如果三項(xiàng)檢測(cè)中有任何一項(xiàng)條件滿足,則確認(rèn)該報(bào)文是超長(zhǎng)報(bào)文并退出,否則,執(zhí)行步驟B234);B234)檢測(cè)是否到本行結(jié)尾,如未到本行結(jié)尾,則將當(dāng)前特征分隔符S2作為S1、提取下一個(gè)特征分隔符作為S2,返回到步驟B232);如已到本行結(jié)尾,則轉(zhuǎn)到步驟B235);B235)判斷是否完成所有行內(nèi)檢測(cè),如未完成則選擇下一個(gè)行,轉(zhuǎn)到步驟B231);如已經(jīng)完成所有行內(nèi)檢測(cè)則退出。
6.根據(jù)權(quán)利要求5所述方法,其特征在于,所述步驟B23之前還包括行間檢測(cè)步驟B22,所述行間檢測(cè)步驟B22包括以下步驟B221)對(duì)輸入信令報(bào)文中每一個(gè)以回車換行符結(jié)束的成行的文本段,反復(fù)執(zhí)行以下步驟B222-B223,直到確定當(dāng)前報(bào)文為超長(zhǎng)報(bào)文或輸入信令報(bào)文結(jié)束;B222)這樣產(chǎn)生文本段的五元組(S1、F1、D、S2、F2),使得第一行文本段的首字符或其它行文本段的前一行回車換行符為S1,緊跟S1后的第一個(gè)字符為F1,取S1后的第一個(gè)回車換行符為S2,取S2后緊跟的第一個(gè)字符為F2,符號(hào)S1與符號(hào)S2之間的間距為D;B223)對(duì)上述五元組檢測(cè)S1和F1是否滿足F1是特征分隔符,同時(shí)S1和F1屬于所述特征分隔符約束關(guān)系表規(guī)定的禁止相連的情形;檢測(cè)S2和F2是否滿足F2是特征分隔符,同時(shí)S2和F2屬于所述特征分隔符約束關(guān)系表規(guī)定的禁止相連的情形;檢測(cè)特征間距D是否滿足大于所述特征間距表中規(guī)定的S1和S2之間的最大間距;如有任何一項(xiàng)滿足,則確認(rèn)該報(bào)文為超長(zhǎng)報(bào)文并退出;否則,取下一行文本段,進(jìn)到步驟B222。
7.根據(jù)權(quán)利要求6所述方法,其特征在于,在所述步驟B22與所述步驟B23之間還包括步驟B224)如當(dāng)前輸入信令報(bào)文結(jié)束且沒(méi)有確認(rèn)為超長(zhǎng)報(bào)文,則形成用于指出輸入信令報(bào)文各個(gè)行文本段的位置和長(zhǎng)度的行分布位置表,包括報(bào)文首字符、由相對(duì)于前一行回車換行符之間距離的偏移量和回車換行符組成的有限序列對(duì)。
8.根據(jù)權(quán)利要求2-7中任何一項(xiàng)所述方法,其特征在于,所述特征分隔符包括“(”/“)”/“<”/“>”/“@”/“,”/“;”/“”/DQUOTE/“/”/“[”/“]”/“=”/“{”/“}”/SP/CR/LF。
全文摘要
一種基于文本編碼的超長(zhǎng)信令報(bào)文的檢測(cè)方法,包括以下步驟B1)根據(jù)文本編碼的信令協(xié)議構(gòu)造基于特征分隔符的超長(zhǎng)報(bào)文識(shí)別函數(shù);B2)對(duì)收到的信令報(bào)文用識(shí)別函數(shù)識(shí)別是否為超長(zhǎng)報(bào)文;B3)如屬于超長(zhǎng)報(bào)文則將其過(guò)濾,否則繼續(xù)其它處理。識(shí)別函數(shù)包括表示兩個(gè)特征分隔符之間允許的最大間距的特征間距表以及兩個(gè)特征分隔符是否允許連續(xù)重復(fù)出現(xiàn)的特征分隔符約束關(guān)系表。這種超長(zhǎng)信令報(bào)文檢測(cè)方法,可以用軟件實(shí)現(xiàn),也可以采用硬件實(shí)現(xiàn),用于在網(wǎng)絡(luò)入口處實(shí)施超長(zhǎng)報(bào)文檢測(cè)。本發(fā)明提供的方法適用于所有文本型信令報(bào)文的出現(xiàn)超長(zhǎng)報(bào)文的檢測(cè),對(duì)不同的文本信令協(xié)議,只需對(duì)特征間距表和特征分隔符約束關(guān)系表進(jìn)行更換調(diào)整相應(yīng)的參數(shù)即可,從而有效防止黑客的攻擊和破壞,保證網(wǎng)絡(luò)服務(wù)的正常運(yùn)行。
文檔編號(hào)H04L12/56GK1852245SQ20051012089
公開(kāi)日2006年10月25日 申請(qǐng)日期2005年12月15日 優(yōu)先權(quán)日2005年12月15日
發(fā)明者劉利鋒, 鄭志彬, 趙凱 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
田东县| 赤城县| 南郑县| 正宁县| 安新县| 商水县| 福鼎市| 专栏| 若尔盖县| 吴旗县| 乌拉特后旗| 云梦县| 嘉义市| 玛曲县| 留坝县| 万宁市| 城口县| 汝州市| 兰溪市| 灵石县| 依兰县| 彰武县| 隆昌县| 德安县| 邵阳县| 湾仔区| 宁都县| 蕉岭县| 奈曼旗| 乐东| 阿拉善盟| 班玛县| 海城市| 民县| 山东| 阆中市| 西乌珠穆沁旗| 浦城县| 普洱| 福建省| 呼图壁县|