本發(fā)明涉及網(wǎng)絡(luò)安全領(lǐng)域,特別涉及一種攻擊防護系統(tǒng)、方法、裝置和網(wǎng)絡(luò)設(shè)備。
背景技術(shù):
一種網(wǎng)絡(luò)架構(gòu)包括接入層、匯聚層以及核心層。其中,接入層的設(shè)備直接與終端連接,核心層的設(shè)備一般作為終端的網(wǎng)關(guān),匯聚層的設(shè)備連接于核心層和接入層之間。為了避免終端發(fā)送的大量攻擊報文對核心層的設(shè)備的中央處理器(英文:centralprocessingunit,cpu)的占用,可以在核心層的設(shè)備上對報文進行分析,根據(jù)分析結(jié)果丟棄攻擊終端發(fā)送來的報文。
上述利用核心層的設(shè)備執(zhí)行懲罰操作的方式,對攻擊防護的精準度比較低。
技術(shù)實現(xiàn)要素:
為了解決上述技術(shù)問題,本申請?zhí)峁┝艘环N攻擊防護系統(tǒng)、方法、裝置和網(wǎng)絡(luò)設(shè)備。
第一方面,提供了一種攻擊防護系統(tǒng)。該攻擊防護系統(tǒng)包括檢測設(shè)備和懲罰設(shè)備,懲罰設(shè)備為在終端和檢測設(shè)備之間傳輸數(shù)據(jù)的設(shè)備;
所述檢測設(shè)備用于在確定待懲罰的終端后,將用于指示懲罰所述終端的第一懲罰參數(shù)添加至第一報文中,并向所述終端發(fā)送所述第一報文,所述第一報文的報文頭中有預(yù)定標識;
所述懲罰設(shè)備用于攔截報文頭中有所述預(yù)定標識的所述第一報文,在所述第一報文包括所述第一懲罰參數(shù)時,生成包括第二懲罰參數(shù)的第二報文,所述第二報文的報文頭中有所述預(yù)定標識,并向所述終端發(fā)送所述第二報文,并在發(fā)送所述第二報文后的第一預(yù)定時長內(nèi)未接收到第一懲罰結(jié)果時,根據(jù)所述第一懲罰參數(shù)執(zhí)行對所述終端的懲罰操作,所述第一懲罰結(jié)果用于指示所述終端已被懲罰。
由于懲罰設(shè)備可以將懲罰參數(shù)發(fā)送給下游設(shè)備,這樣可以由離終端較近的設(shè)備控制終端的攻擊,可以防御不經(jīng)過檢測設(shè)備的攻擊報文,達到了精準懲罰的目的。
結(jié)合第一方面,在第一方面的第一種實現(xiàn)中,所述第一懲罰參數(shù)包括取值用于指示等待時長的時長參數(shù),所述懲罰設(shè)備還用于將所述第一懲罰參數(shù)中的時長參數(shù)的取值確定為所述第一預(yù)定時長;
或者,
所述第一懲罰參數(shù)包括用于計算等待時長的時長計算參數(shù),所述懲罰設(shè)備還用于根據(jù)所述第一懲罰參數(shù)中的時長計算參數(shù)的取值計算等待時長,將計算得到的所述等待時長確定為所述第一預(yù)定時長。
結(jié)合第一方面或第一方面的第一種實現(xiàn),在第一方面的第二種實現(xiàn)中,當所述第一懲罰參數(shù)包括取值用于指示等待時長的時長參數(shù)時,所述懲罰設(shè)備還用于將所述時長參數(shù)的取值減少后作為所述第二懲罰參數(shù)的時長參數(shù);
當所述第一懲罰參數(shù)包括用于計算等待時長的時長計算參數(shù)時,所述懲罰設(shè)備還用于將所述時長計算參數(shù)減少后作為所述第二懲罰參數(shù)的時長計算參數(shù)。
結(jié)合第一方面的第二種實現(xiàn),在第一方面的第三種實現(xiàn)中,當所述第一懲罰參數(shù)包括取值用于指示等待時長的時長參數(shù)時,所述懲罰設(shè)備還用于將所述第二懲罰參數(shù)的時長參數(shù)確定為所述第一預(yù)定時長;
或者,
當所述第一懲罰參數(shù)包括用于計算等待時長的時長計算參數(shù)時,所述懲罰設(shè)備還用于,根據(jù)所述第二懲罰參數(shù)的時長計算參數(shù)計算等待時長,將得到的等待時長確定為所述第一預(yù)定時長。
結(jié)合第一方面的第二種實現(xiàn),在第一方面的第四種實現(xiàn)中,當所述第一懲罰參數(shù)包括取值用于指示等待時長的時長參數(shù)時,所述懲罰設(shè)備還用于將所述第一懲罰參數(shù)的時長參數(shù)確定為所述第一預(yù)定時長;當所述第一懲罰參數(shù)包括用于計算等待時長的時長計算參數(shù)時,所述懲罰設(shè)備還用于根據(jù)所述第一懲罰參數(shù)計算等待時長,將得到的等待時長確定為所述第一預(yù)定時長。
由于從檢測設(shè)備到待懲罰終端路徑上各個設(shè)備的等待時長不斷減少,因此離待懲罰終端最近的具備懲罰能力的設(shè)備的等待時長最先到達,執(zhí)行對終端的 懲罰操作,而離待懲罰設(shè)備較遠的具備懲罰能力的設(shè)備不再執(zhí)行對終端的懲罰操作。
結(jié)合第一方面、第一方面的第一種實現(xiàn)至第一方面的第四種實現(xiàn)中的一種,在第一方面的第五種實現(xiàn)中,所述懲罰設(shè)備還用于在發(fā)送所述第二報文后的第一預(yù)定時長內(nèi)接收到所述第一懲罰結(jié)果時,忽略執(zhí)行對所述終端的懲罰操作,并轉(zhuǎn)發(fā)所述第一懲罰結(jié)果。
本接收到懲罰結(jié)果的懲罰設(shè)備不執(zhí)行對終端的懲罰操作,可以避免重復執(zhí)行另一懲罰設(shè)備已執(zhí)行過的懲罰操作。
結(jié)合第一方面以及第一方面的第一種實現(xiàn)至第一方面的第五種實現(xiàn)中的一種,在第一方面的第六種實現(xiàn)中,所述懲罰設(shè)備還用于在執(zhí)行了對所述終端的懲罰操作后,生成第二懲罰結(jié)果,向所述檢測設(shè)備發(fā)送所述第二懲罰結(jié)果,所述第二懲罰結(jié)果用于指示所述終端已被懲罰。
懲罰設(shè)備對終端執(zhí)行懲罰操作后,生成懲罰結(jié)果,可以避免檢測設(shè)備及可能存在的其它懲罰設(shè)備重復執(zhí)行懲罰操作。
結(jié)合第一方面以及第一方面的第一種實現(xiàn)至第一方面的第六種實現(xiàn)中的一種,在第一方面的第七種實現(xiàn)中,所述檢測設(shè)備還用于在發(fā)送所述第一報文后的第二預(yù)定時長內(nèi)未接收到懲罰結(jié)果時,執(zhí)行對所述終端的懲罰操作,所述第二預(yù)定時長為所述第一懲罰參數(shù)中的等待時長,或者所述第二預(yù)定時長大于所述第一懲罰參數(shù)所限定的等待時長。
檢測設(shè)備在沒有懲罰設(shè)備返回懲罰結(jié)果時執(zhí)行對終端的懲罰操作,可以在缺乏懲罰設(shè)備配合時,保證對終端的懲罰操作。
結(jié)合第一方面以及第一方面的第一種實現(xiàn)至第一方面的第七種實現(xiàn)中的一種,在第一方面的第八種實現(xiàn)中,懲罰設(shè)備還用于根據(jù)第一懲罰參數(shù)建立懲罰任務(wù);在接收到第一懲罰結(jié)果后,刪除該懲罰任務(wù)。
建立與終端對應(yīng)的懲罰任務(wù),便于懲罰設(shè)備對懲罰任務(wù)的管理。
結(jié)合第一方面以及第一方面的第一種實現(xiàn)至第一方面的第八種實現(xiàn)中的一種,在第一方面的第九種實現(xiàn)中,所述第一報文的目的地址為待懲罰的終端的地址;所述第二報文的目的地址為待懲罰的終端的地址;所述第一懲罰結(jié)果包括被懲罰的終端的地址,所述第一懲罰結(jié)果的源地址為懲罰所述終端的懲罰設(shè)備的地址;所述第二懲罰結(jié)果包括被懲罰的終端的地址,所述第二懲罰結(jié)果的 源地址為懲罰所述終端的懲罰設(shè)備的地址。
結(jié)合第一方面以及第一方面的第一種實現(xiàn)至第一方面的第九種實現(xiàn)中的一種,在第一方面的第十種實現(xiàn)中,懲罰設(shè)備還用于獲取第一懲罰參數(shù)中指示的懲罰動作,根據(jù)所述懲罰設(shè)備自身的處理能力,判定是否具備懲罰所述終端的懲罰能力。
根據(jù)懲罰動作判定自身是否具有懲罰該終端的懲罰能力,避免在不具備懲罰能力時,因執(zhí)行懲罰操作造成對處理器的過度負擔。
第二方面,提供了一種攻擊防護方法。該攻擊防護方法應(yīng)用于攻擊防護系統(tǒng)的檢測設(shè)備中,該攻擊防護系統(tǒng)還包括懲罰設(shè)備,懲罰設(shè)備為在終端和檢測設(shè)備之間傳輸數(shù)據(jù)的設(shè)備,該方法包括:
檢測設(shè)備在確定待懲罰的終端后,將用于指示懲罰所述終端的懲罰參數(shù)添加至報文中;
所述檢測設(shè)備向所述終端發(fā)送所述報文,所述報文的報文頭中有預(yù)定標識,所述報文用于觸發(fā)懲罰設(shè)備攔截所述報文,所述懲罰設(shè)備為在終端和所述檢測設(shè)備之間傳輸數(shù)據(jù)的設(shè)備;
所述檢測設(shè)備在發(fā)送所述報文后的預(yù)定時長內(nèi)未接收到所述懲罰設(shè)備發(fā)送的懲罰結(jié)果時,執(zhí)行對所述終端的懲罰操作,所述預(yù)定時長和所述懲罰參數(shù)中的等待時長相關(guān),所述懲罰結(jié)果用于指示所述終端已被懲罰。
第三方面,提供了一種攻擊防護方法。該方法包括:
懲罰設(shè)備攔截報文頭中有預(yù)定標識的第一報文,所述第一報文包括第一懲罰參數(shù),其中,所述第一報文來自檢測設(shè)備,所述懲罰設(shè)備為在終端和所述檢測設(shè)備之間傳輸數(shù)據(jù)的設(shè)備;
所述懲罰設(shè)備在所述第一報文包括第一懲罰參數(shù)時,生成包括第二懲罰參數(shù)的第二報文,所述第二報文的報文頭中有所述預(yù)定標識;
所述懲罰設(shè)備向待懲罰的終端發(fā)送所述第二報文;
在發(fā)送所述第二報文后的預(yù)定時長內(nèi)未接收到第一懲罰結(jié)果時,所述懲罰設(shè)備根據(jù)所述第一懲罰參數(shù)執(zhí)行對所述終端的懲罰操作,所述第一懲罰結(jié)果用于指示所述終端已被懲罰。
結(jié)合第三方面,在第三方面的第一種實現(xiàn)中,所述方法還包括:
當所述第一懲罰參數(shù)包括取值用于指示等待時長的時長參數(shù)時,所述懲罰 設(shè)備將所述第一懲罰參數(shù)中的時長參數(shù)的取值確定為所述預(yù)定時長;
或者,
當所述第一懲罰參數(shù)包括用于計算等待時長的時長計算參數(shù)時,所述懲罰設(shè)備根據(jù)所述第一懲罰參數(shù)中的時長計算參數(shù)的取值計算等待時長,將計算得到的所述等待時長確定為所述預(yù)定時長。
結(jié)合第三方面的第一種可能的實施方式,在第三方面的第二種可能的實施方式中,所述方法還包括:
當所述第一懲罰參數(shù)包括取值用于指示等待時長的時長參數(shù)時,所述懲罰設(shè)備將所述時長參數(shù)的取值減少后作為所述第二懲罰參數(shù)的時長參數(shù);
當所述第一懲罰參數(shù)包括用于計算等待時長的時長計算參數(shù)時,所述懲罰設(shè)備將所述時長計算參數(shù)減少后作為所述第二懲罰參數(shù)的時長計算參數(shù)。
結(jié)合第三方面以及第三方面的第一種實現(xiàn)至第三方面的第二種實現(xiàn)中的一種,在第三方面的第三種實現(xiàn)中,所述方法還包括:
在發(fā)送所述第二報文后的預(yù)定時長內(nèi)接收到所述第一懲罰結(jié)果時,所述懲罰設(shè)備忽略執(zhí)行對所述終端的懲罰操作,并轉(zhuǎn)發(fā)所述第一懲罰結(jié)果。
結(jié)合第三方面以及第三方面的第一種實現(xiàn)至第三方面的第三種實現(xiàn)中的一種,在第三方面的第四種實現(xiàn)中,該方法還包括:
在執(zhí)行了對所述終端的懲罰操作后,所述懲罰設(shè)備生成第二懲罰結(jié)果,向所述檢測設(shè)備發(fā)送所述第二懲罰結(jié)果,所述第二懲罰結(jié)果用于指示所述終端已被懲罰。
第四方面,提供了一種攻擊防護裝置。該攻擊防護裝置包括至少一個單元,每個單元用于實現(xiàn)上述第二方面的攻擊防護方法中的對應(yīng)步驟。
第五方面,提供了一種網(wǎng)絡(luò)設(shè)備。該網(wǎng)絡(luò)設(shè)備包括:處理器,該處理器用于實現(xiàn)上述第二方面的攻擊防護方法的對應(yīng)步驟。
第六方面,提供了一種網(wǎng)絡(luò)設(shè)備。該網(wǎng)絡(luò)設(shè)備包括:轉(zhuǎn)發(fā)面、控制面,
轉(zhuǎn)發(fā)面,用于攔截報文頭中有第一預(yù)定標識的第一報文,所述第一報文包括第一懲罰參數(shù);
控制面,用于生成包括第二懲罰參數(shù)的第二報文,所述第二報文的報文頭中有所述第一預(yù)定標識,向待懲罰的終端發(fā)送所述第二報文,在所述轉(zhuǎn)發(fā)面發(fā)送所述第二報文后的預(yù)定時長內(nèi)未接收到第一懲罰結(jié)果時,根據(jù)所述第一懲罰 參數(shù)執(zhí)行對所述終端的懲罰操作,所述第一懲罰結(jié)果用于指示所述終端已被懲罰。
結(jié)合第六方面,在第六方面的第一種實現(xiàn)中,所述控制面,還用于當所述第一懲罰參數(shù)包括取值用于指示等待時長的時長參數(shù)時,將所述第一懲罰參數(shù)中的時長參數(shù)的取值確定為所述預(yù)定時長;
或者,
所述控制面,還用于當所述第一懲罰參數(shù)包括用于計算等待時長的時長計算參數(shù)時,所述懲罰設(shè)備還用于根據(jù)所述第一懲罰參數(shù)中的時長計算參數(shù)的取值計算等待時長,將計算得到的所述等待時長確定為所述預(yù)定時長。
結(jié)合第六方面或第六方面的第一種實現(xiàn),在第六方面的第二種實現(xiàn)中,所述控制面,還用于當所述第一懲罰參數(shù)包括取值用于指示等待時長的時長參數(shù)時,將所述時長參數(shù)的取值減少后作為所述第二懲罰參數(shù)的時長參數(shù);
所述控制面,還用于當所述第一懲罰參數(shù)包括用于計算等待時長的時長計算參數(shù)時,將所述時長計算參數(shù)減少后作為所述第二懲罰參數(shù)的時長計算參數(shù)。
結(jié)合第六方面以及第六方面的第一種實現(xiàn)至第六方面的第二種實現(xiàn)中的一種,在第六方面的第三種實現(xiàn)中,所述控制面,還用于在執(zhí)行了對所述終端的懲罰操作后,生成第二懲罰結(jié)果,所述第二懲罰結(jié)果用于指示所述終端已被懲罰;
所述轉(zhuǎn)發(fā)面,還用于向所述檢測設(shè)備發(fā)送所述第二懲罰結(jié)果。
結(jié)合第六方面以及第六方面的第一種實現(xiàn)至第六方面的第三種實現(xiàn)中的一種,在第六方面的第四種實現(xiàn)中,所述轉(zhuǎn)發(fā)面,還用于攔截報文頭中包含第二預(yù)定標識的所述第一懲罰結(jié)果,并將攔截的所述第一懲罰結(jié)果發(fā)送至所述控制面。
第七方面,提供了一種計算機可讀介質(zhì),該計算機可讀介質(zhì)用于實現(xiàn)第二方面所提供的攻擊防護方法的指令,或者,該計算機可讀介質(zhì)用于實現(xiàn)第三方面所提供的攻擊防護方法的指令。
附圖說明
為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明 的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是本發(fā)明一示例性實施例提供的攻擊防護系統(tǒng)的結(jié)構(gòu)示意圖;
圖2a是本發(fā)明一示例性實施例提供的攻擊防護方法的流程圖;
圖2b是本發(fā)明一示例性實施例提供的第一報文的報文頭的示意圖;
圖3是本發(fā)明一示例性實施例提供的檢測設(shè)備的結(jié)構(gòu)示意圖;
圖4是本發(fā)明一示例性實施例提供的懲罰設(shè)備的結(jié)構(gòu)示意圖;
圖5是本發(fā)明一示例性實施例提供的攻擊防護裝置的結(jié)構(gòu)示意圖。
具體實施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明實施方式作進一步地詳細描述。
請參考圖1,其示出了本發(fā)明一示例性實施例提供的攻擊防護系統(tǒng)的結(jié)構(gòu)示意圖。該攻擊防護系統(tǒng)包括:檢測設(shè)備110和懲罰設(shè)備120。
在一個攻擊防護系統(tǒng)中,存在終端130和檢測設(shè)備110,終端130的數(shù)據(jù)可以依次經(jīng)過至少一個網(wǎng)絡(luò)設(shè)備被傳輸至檢測設(shè)備110,或者,檢測設(shè)備110發(fā)出的數(shù)據(jù)可以依次經(jīng)過這些網(wǎng)絡(luò)設(shè)備被傳輸至終端130。在終端130和檢測設(shè)備110之間傳送數(shù)據(jù)的網(wǎng)絡(luò)設(shè)備中具有懲罰能力的網(wǎng)絡(luò)設(shè)備被稱為懲罰設(shè)備120。
可選的,攻擊防護系統(tǒng)中可以包括多個檢測設(shè)備和多個終端,本實施例中僅以利用一個檢測設(shè)備和一個終端之間的傳輸路徑上的網(wǎng)絡(luò)設(shè)備作為懲罰設(shè)備為例進行說明。
請參考圖2a,其示出了本發(fā)明一示例性實施例提供的攻擊防護方法的流程圖。本實施例以該方法用于如圖1所示的攻擊防護系統(tǒng)中來舉例說明,該方法包括以下幾個步驟:
步驟201,檢測設(shè)備在確定待懲罰的終端后,將用于指示懲罰該終端的第一懲罰參數(shù)添加至第一報文中。
檢測設(shè)備可以根據(jù)接收到的報文,確定出待懲罰的終端,比如,當某一終端發(fā)送特定類型的報文的速率超過預(yù)定速率閾值時,則可以判定該終端存在攻 擊行為,此時可以將該終端認定為待懲罰的終端。
第一報文包括第一懲罰參數(shù),這里的第一懲罰參數(shù)用于指示需要對待懲罰的終端進行懲罰。
為了找到離待懲罰的終端最近的具有懲罰能力的設(shè)備,檢測設(shè)備向待懲罰的終端發(fā)送該第一報文。第一報文中的目的地址為待懲罰的終端的地址。
以地址解析協(xié)議(英文:addressresolutionprotocol,arp)攻擊為例,在檢測設(shè)備根據(jù)arp報文確定待懲罰的終端時,可以記錄待懲罰終端的媒體訪問控制(英文:mediaaccesscontrol,mac)地址。還可以記錄相應(yīng)的虛擬局域網(wǎng)(英文:virtuallocalareanetwork,vlan)標識。例如,檢測設(shè)備可以將該終端的mac地址以及vlan標識存儲至檢測設(shè)備的待懲罰列表中。檢測設(shè)備的待懲罰列表用于存儲各個待懲罰終端的信息。
表1為待懲罰列表的一個例子。
表1
對每一個待懲罰終端,檢測設(shè)備均在待懲罰列表中記錄一組第一類參數(shù),每組第一類參數(shù)至少包括待懲罰的終端的地址,比如可以為待懲罰的終端的mac地址,每組第一類參數(shù)還可以包括懲罰動作、用于指示待懲罰終端尚未被懲罰的待懲罰狀態(tài)以及用于計算等待時長的時長計算參數(shù)。表1中的時長計算參數(shù)還可以被替換為用于指示等待時長的時長參數(shù)。
為了便于后期的統(tǒng)計,檢測設(shè)備還可以存儲已懲罰列表。在每個終端被懲罰后,檢測設(shè)備均在已懲罰列表中記錄一組第二類參數(shù),每組第二類參數(shù)可以包括被懲罰的終端的地址,比如可以為被懲罰的終端的mac地址,每組第二類參數(shù)還可以包括對終端進行懲罰的懲罰設(shè)備的地址、對待懲罰終端進行懲罰的實際懲罰動作等。已懲罰列表和待懲罰列表可以被獨立維護,也可以共存在一張表中并被統(tǒng)一維護。
檢測設(shè)備可以根據(jù)待懲罰列表中每組第一類參數(shù)分別生成第一報文,第一報文中的第一懲罰參數(shù)至少包括待懲罰的終端的地址。當生成第一報文的第一類參數(shù)中包括時長計算參數(shù)時,第一懲罰參數(shù)還可以包括該時長計算參數(shù);當 生成第一報文的參數(shù)中包括時長參數(shù)時,第一懲罰參數(shù)還可以包括該時長參數(shù)??蛇x的,第一懲罰參數(shù)還可以包括懲罰動作,該懲罰動作用于指示對待懲罰終端執(zhí)行懲罰操作時的懲罰方式。
為了讓其他接收到該第一報文的設(shè)備得知該第一報文為用于指示懲罰終端的報文,檢測設(shè)備可以在第一報文的報文頭中添加第一預(yù)定標識??蛇x的,第一預(yù)定標識可以作為第一懲罰參數(shù)的一部分。
在一種可選的實現(xiàn)中,添加有第一預(yù)定標識的第一報文的報文頭可以如圖2b所示,圖2b中懲罰報文的報文頭中的字段含義如下:目的mac地址、源mac地址、第一預(yù)定標識等。如果懲罰報文包括網(wǎng)際協(xié)議(英文:internetprotocol,ip)頭,第一報文還包括目的ip地址。第一預(yù)定標識在報文頭中的位置并不局限于圖2b中所示出的位置。
可選的,第一報文包括的第一懲罰參數(shù)均在第一報文的報文頭中。比如,第一報文的第一懲罰參數(shù)中的待懲罰的終端的地址、時長計算參數(shù)(或時長參數(shù))、第一預(yù)定標識等均在第一報文的報文頭中。其中,以第一報文的目的mac地址作為待懲罰的終端的地址。可替換的,第一懲罰參數(shù)的部分參數(shù)在第一報文的報文頭中,第一懲罰參數(shù)的另一部分參數(shù)在第一報文的報文體中。比如,以第一報文的目的mac地址作為待懲罰的終端的地址,即第一報文的第一懲罰參數(shù)中的待懲罰的終端的地址在第一報文的報文頭中,而時長計算參數(shù)(或時長參數(shù))、第一預(yù)定標識在第一報文的報文體中??商鎿Q的,第一懲罰參數(shù)均在第一報文的報文體中。比如,第一報文的報文體攜帶待懲罰的終端的地址、時長計算參數(shù)(或時長參數(shù))、第一預(yù)定標識。報文體中的待懲罰的終端的地址可以是待懲罰的終端的mac地址或ip地址。如果懲罰報文包括ip頭,待懲罰的終端的地址可以是ip頭中的目的ip地址。
檢測設(shè)備生成第一報文的目的是將該第一報文向待懲罰的終端的方向發(fā)送,因此,第一報文的目的地址為待懲罰的終端的地址。
另外,檢測設(shè)備將檢測設(shè)備的mac地址作為第一報文的源mac地址,以便在懲罰設(shè)備對終端執(zhí)行懲罰操作后,將懲罰結(jié)果發(fā)送至檢測設(shè)備。
步驟202,檢測設(shè)備向該終端發(fā)送該第一報文。
檢測設(shè)備向待懲罰的終端發(fā)送該第一報文,第一報文的目的地址為待懲罰終端的地址。
可選的,檢測設(shè)備可以將發(fā)送該第一報文的發(fā)送時刻記錄到待懲罰列表中,該發(fā)送時刻作為第一預(yù)定時長的起始時刻;或者檢測設(shè)備在發(fā)送該第一報文時,開啟與該第一報文對應(yīng)的定時器,該定時器的定時時長為第一預(yù)定時長。第一預(yù)定時長可以為第一報文中第一懲罰參數(shù)所限定的等待時長,或者大于第一報文中第一懲罰參數(shù)所限定的等待時長。當?shù)谝粓笪牡牡谝粦土P參數(shù)包括用于指示等待時長的時長參數(shù)時,該等待時長可以等于或大于第一懲罰參數(shù)中時長參數(shù)的取值;當?shù)谝粓笪牡牡谝粦土P參數(shù)包括時長計算參數(shù)時,該等待時長可以等于或大于根據(jù)第一報文的第一懲罰參數(shù)中時長計算參數(shù)計算得到的時長。
在一種實現(xiàn)中,結(jié)合檢測設(shè)備的具體結(jié)構(gòu)對上述步驟201和步驟202進行舉例說明。檢測設(shè)備的結(jié)構(gòu)可以參見圖3所示,請參考圖3,其示出了本發(fā)明一示例性實施例提供的檢測設(shè)備的結(jié)構(gòu)示意圖。該檢測設(shè)備包括:處理器31、網(wǎng)絡(luò)接口32和存儲器33。
處理器31可以是cpu,網(wǎng)絡(luò)處理器(英文:networkprocessor,np)或者cpu和np的組合。處理器31還可以進一步包括硬件芯片。上述硬件芯片可以是專用集成電路(英文:application-specificintegratedcircuit,asic),可編程邏輯器件(英文:programmablelogicdevice,pld)或其組合。上述pld可以是復雜可編程邏輯器件(英文:complexprogrammablelogicdevice,cpld),現(xiàn)場可編程邏輯門陣列(英文:field-programmablegatearray,fpga),通用陣列邏輯(英文:genericarraylogic,gal)或其任意組合。
網(wǎng)絡(luò)接口32可以是有線通信接口,無線通信接口或其組合。有線通信接口例如可以為以太網(wǎng)接口。以太網(wǎng)接口可以是光接口,電接口或其組合。
存儲器33用總線或其它方式與處理器31相連。
存儲器33可以為易失性存儲器(英文:volatilememory),非易失性存儲器(英文:non-volatilememory)或者它們的組合。易失性存儲器可以為隨機存取存儲器(英文:random-accessmemory,ram),例如靜態(tài)隨機存取存儲器(英文:staticrandomaccessmemory,sram),動態(tài)隨機存取存儲器(英文:dynamicrandomaccessmemory,dram)。非易失性存儲器可以為只讀存儲器(英文:readonlymemoryimage,rom),例如可編程只讀存儲器(英文:programmablereadonlymemory,prom),可擦除可編程只讀存儲器(英文:erasableprogrammablereadonlymemory,eprom),電可擦除可編程只讀存儲器(英文:electrically erasableprogrammableread-onlymemory,eeprom)。非易失性存儲器也可以為快閃存儲器(英文:flashmemory),磁存儲器,例如磁帶(英文:magnetictape),軟盤(英文:floppydisk),硬盤。非易失性存儲器也可以為光盤。
其中,存儲器33中可以存儲上述的待懲罰列表,處理器31在確定一個待懲罰的終端后,可以為其生成一組參數(shù)并添加至待懲罰列表中。處理器31根據(jù)待懲罰列表確定每個待懲罰終端所對應(yīng)的第一懲罰參數(shù),并將用于指示懲罰該終端的第一懲罰參數(shù)添加至第一報文中,具體實現(xiàn)可以參見對步驟201的描述;處理器31還利用網(wǎng)絡(luò)接口32向終端發(fā)送第一報文,具體實現(xiàn)可以參見對步驟202的描述。
由于檢測設(shè)備與待懲罰終端之間可能會有一個或多個懲罰設(shè)備,每個懲罰設(shè)備執(zhí)行的操作均類似,這里僅以檢測設(shè)備與待懲罰設(shè)備之間的一個懲罰設(shè)備舉例,說明該懲罰設(shè)備執(zhí)行的操作。
在一種實現(xiàn)中,懲罰設(shè)備的結(jié)構(gòu)可以參見圖4所示,其示出了本發(fā)明一示例性實施例提供的懲罰設(shè)備的結(jié)構(gòu)示意圖。該懲罰設(shè)備包括:轉(zhuǎn)發(fā)面41、控制面42和網(wǎng)絡(luò)接口43。
轉(zhuǎn)發(fā)面41可以包括轉(zhuǎn)發(fā)芯片411,轉(zhuǎn)發(fā)面41可以與其他網(wǎng)絡(luò)設(shè)備或終端進行通信,轉(zhuǎn)發(fā)芯片411可以選擇不同的網(wǎng)絡(luò)接口43。
控制面42可以是控制芯片。例如,控制面42可以由cpu實現(xiàn),也可以由有控制面功能的網(wǎng)絡(luò)處理器np實現(xiàn)。
轉(zhuǎn)發(fā)面41可以包括獨立的轉(zhuǎn)發(fā)芯片,也可以和控制面42一起由單個芯片實現(xiàn)。例如,轉(zhuǎn)發(fā)面41可以由asic,pld,np,多核cpu中用于實現(xiàn)轉(zhuǎn)發(fā)面的核心或其任意組合實現(xiàn)。為了識別報文,轉(zhuǎn)發(fā)面41還可以包括內(nèi)容可尋址存儲器(英文:content-addressablememory,cam)412,例如三態(tài)cam(英文:ternarycam,tcam)。為了識別待懲罰的終端發(fā)送來的報文,cam412存儲有用于匹配報文頭中源地址為待懲罰的終端的地址的訪問控制列表(英文:accesscontrollist,acl);為了識別檢測設(shè)備發(fā)送的包括第一預(yù)定標識的報文,cam412存儲有匹配第一預(yù)定標識的訪問控制列表(英文:accesscontrollist,acl);為了識別設(shè)備發(fā)送的包括第二預(yù)定標識的報文,cam412存儲有匹配第二預(yù)定標識的訪問控制列表(英文:accesscontrollist,acl)。轉(zhuǎn)發(fā)芯片411從網(wǎng)絡(luò)接口43獲取到報文后,會將報文的報文頭發(fā)送至cam412,cam412利 用存儲的acl對報文頭進行識別,將識別結(jié)果發(fā)送給轉(zhuǎn)發(fā)芯片411,轉(zhuǎn)發(fā)芯片411根據(jù)識別結(jié)果確定是丟棄報文,還是將報文發(fā)送至控制面42。如果轉(zhuǎn)發(fā)面41包括np或多核cpu中用于實現(xiàn)轉(zhuǎn)發(fā)面的核心,也可以不使用cam412識別上述各類報文,而由np或cpu識別上述各類報文。
為了能更清楚的說明懲罰設(shè)備在攻擊防護過程中的實現(xiàn)過程,下面結(jié)合圖4中懲罰設(shè)備的具體結(jié)構(gòu)對步驟203至步驟207進行說明。
步驟203,懲罰設(shè)備攔截報文頭中有第一預(yù)定標識的第一報文,在第一報文包括第一懲罰參數(shù)時,生成包括第二懲罰參數(shù)的第二報文。
對于目的地址不是自身地址的報文,一般的網(wǎng)絡(luò)設(shè)備會直接根據(jù)報文的目的地址轉(zhuǎn)發(fā)該報文。為了攔截第一報文,懲罰設(shè)備用第一預(yù)定標識嘗試匹配接收到的報文。懲罰設(shè)備攔截報文頭中有第一預(yù)定標識的報文,并可以直接轉(zhuǎn)發(fā)報文頭中不包括第一預(yù)定標識的報文。例如,懲罰設(shè)備的cam412中可以存儲匹配項為第一預(yù)定標識的acl,當懲罰設(shè)備的網(wǎng)絡(luò)接口43接收到報文后,會將報文發(fā)送給懲罰設(shè)備的轉(zhuǎn)發(fā)芯片411,懲罰設(shè)備的轉(zhuǎn)發(fā)芯片411將包括報文的報文頭發(fā)送給cam412時,cam412利用匹配項為第一預(yù)定標識的acl,可以識別出報文頭中是否包括第一預(yù)定標識,并將識別結(jié)果發(fā)送給轉(zhuǎn)發(fā)芯片411,當識別結(jié)果指示報文的報文頭中包括第一預(yù)定標識,轉(zhuǎn)發(fā)芯片411則將該報文發(fā)送到控制面42。
懲罰設(shè)備可以根據(jù)第一報文中的第一懲罰參數(shù),生成包括第二懲罰參數(shù)的第二報文,第二報文的報文頭中有第一預(yù)定標識。
第二懲罰參數(shù)所限定的等待時長與第一懲罰參數(shù)所限定的等待時長不同,通常,第二懲罰參數(shù)所限定的等待時長小于第一懲罰參數(shù)所限定的等待時長。這里的等待時長是設(shè)備在懲罰該待懲罰終端需要等待的時長。第二懲罰參數(shù)中的其它信息和第一懲罰參數(shù)中的相同。
可選的,當?shù)谝粦土P參數(shù)包括取值用于指示等待時長的時長參數(shù)時,懲罰設(shè)備將該時長參數(shù)的取值減少后作為第二懲罰參數(shù)的時長參數(shù),并將第一懲罰參數(shù)中的其他參數(shù)作為第二懲罰參數(shù)中的參數(shù)。可選的,當?shù)谝粦土P參數(shù)包括用于計算等待時長的時長計算參數(shù)時,懲罰設(shè)備將該時長計算參數(shù)減少后作為第二懲罰參數(shù)的時長計算參數(shù),并將第一懲罰參數(shù)中的其他參數(shù)作為第二懲罰數(shù)中的參數(shù)。
當時長計算參數(shù)與等待時長成正相關(guān)時,將時長計算參數(shù)減少用于指示將時長計算參數(shù)的取值減少,從而使得通過時長計算參數(shù)計算得到的等待時長減??;當時長計算參數(shù)與等待時長成負相關(guān)時,將時長計算參數(shù)減少用于指示將時長計算參數(shù)的取值增大,從而使得通過時長計算參數(shù)計算得到的等待時長減小。
可選的,懲罰設(shè)備攔截報文頭中有第一預(yù)定標識的第一報文后,在判定自身具有懲罰能力時,利用第一報文包括的第一懲罰參數(shù),生成包括第二懲罰參數(shù)的第二報文。
當?shù)谝粦土P參數(shù)包括懲罰動作時,懲罰設(shè)備還可以根據(jù)懲罰動作以及懲罰設(shè)備自身的處理能力,判定是否具備懲罰終端的懲罰能力。懲罰動作可以是攻擊防護系統(tǒng)中預(yù)先定義的懲罰動作,也可以是第一懲罰參數(shù)中指示的懲罰動作。舉例來講,當懲罰設(shè)備的懲罰動作為阻塞終端時,根據(jù)懲罰設(shè)備對報文的處理能力,判定懲罰設(shè)備是否具備懲罰能力。再舉例來講,當懲罰設(shè)備的懲罰動作為阻塞接口時,根據(jù)懲罰設(shè)備所存儲的攔截規(guī)則,判定懲罰設(shè)備是否具備懲罰能力。一般來講,懲罰設(shè)備已存儲的攔截規(guī)則超過預(yù)定閾值,或者懲罰設(shè)備的處理負擔較大,則可以判定懲罰設(shè)備的轉(zhuǎn)發(fā)面41不具有懲罰能力。若懲罰設(shè)備的轉(zhuǎn)發(fā)面41具有懲罰能力,控制面42則生成第二報文,若懲罰設(shè)備的轉(zhuǎn)發(fā)面41不具有懲罰能力,則將第一報文發(fā)送至轉(zhuǎn)發(fā)面41,由轉(zhuǎn)發(fā)面41根據(jù)第一報文的目的地址選擇對應(yīng)的網(wǎng)絡(luò)接口,將該第一報文發(fā)送出去。
懲罰設(shè)備根據(jù)懲罰動作判定自身是否具有懲罰該終端的懲罰能力,避免在不具備懲罰能力時,因執(zhí)行懲罰操作造成對懲罰設(shè)備的過度負擔。
步驟204,懲罰設(shè)備向該終端發(fā)送第二報文。
懲罰設(shè)備向該終端發(fā)送包括第二懲罰參數(shù)的第二報文,第二報文中的目的地址仍舊為第一報文中的目的地址,也即待懲罰的終端的地址。
懲罰設(shè)備的控制面42在生成第二報文后,會將第二報文發(fā)送至懲罰設(shè)備的轉(zhuǎn)發(fā)面41,比如發(fā)送至轉(zhuǎn)發(fā)芯片411,轉(zhuǎn)發(fā)芯片411根據(jù)第二報文的目的地址選擇發(fā)送該第二報文的網(wǎng)絡(luò)接口43,通過選擇的網(wǎng)絡(luò)接口43將該第二報文發(fā)送出去。
步驟205,懲罰設(shè)備在發(fā)送第二報文后的第二預(yù)定時長內(nèi)未接收到第一懲罰結(jié)果時,根據(jù)第一懲罰參數(shù)執(zhí)行對終端的懲罰操作,生成第二懲罰結(jié)果。
第二預(yù)定時長等于第二懲罰參數(shù)限定的等待時長,或大于第二懲罰參數(shù)限定的等待時長。
以第一懲罰參數(shù)中包括時長參數(shù)為例,檢測設(shè)備將第一懲罰參數(shù)中的時長參數(shù)的取值確定為第一預(yù)定時長,懲罰設(shè)備將獲取的第一懲罰參數(shù)中的時長參數(shù)的取值減少,將減少的時長參數(shù)確定為第二預(yù)定時長,將減少的時長參數(shù)作為第二懲罰參數(shù)包括的時長參數(shù)?;蛘?,檢測設(shè)備將第一預(yù)定時長減少后確定第一懲罰參數(shù)中的時長參數(shù),懲罰設(shè)備將獲取的第一懲罰參數(shù)中的時長參數(shù)的取值確定為第二預(yù)定時長,將第一懲罰參數(shù)包括的時長參數(shù)減少后作為第二懲罰參數(shù)包括的時長參數(shù)。
以懲罰參數(shù)中包括時長計算參數(shù)為例,檢測設(shè)備根據(jù)第一懲罰參數(shù)中的時長計算參數(shù)計算等待時長,將得到的等待時長確定為第一預(yù)定時長,懲罰設(shè)備將獲取的第一懲罰參數(shù)中的時長計算參數(shù)減少,根據(jù)減少的時長計算參數(shù)計算等待時長,將得到的等待時長確定為第二預(yù)定時長?;蛘?,檢測設(shè)備將第一預(yù)定時長對應(yīng)的時長計算參數(shù)減少,將減少后的時長計算參數(shù)作為第一懲罰參數(shù)中的時長計算參數(shù),懲罰設(shè)備根據(jù)第一懲罰參數(shù)中的時長計算參數(shù)計算等待時長,將該等待時長確定為第二預(yù)定時長,將第一懲罰參數(shù)包括的時長計算參數(shù)減少后作為第二懲罰參數(shù)包括的時長計算參數(shù)。
第一懲罰結(jié)果用于指示該終端已被懲罰。一般的,第一懲罰結(jié)果中可以包括被懲罰的終端的地址,第一懲罰結(jié)果的目的地址為檢測設(shè)備的地址,第一懲罰結(jié)果還可以包括懲罰該終端的設(shè)備的地址以及第二預(yù)定標識。第二預(yù)定標識可以與第一預(yù)定標識相同或不同。在第二預(yù)定標識與第一預(yù)定標識相同時,懲罰設(shè)備可以根據(jù)報文的報文頭中的其他字段確定報文是否為懲罰結(jié)果。
類似的,對于目的地址不是自身地址的報文,一般的網(wǎng)絡(luò)設(shè)備會直接根據(jù)報文的目的地址轉(zhuǎn)發(fā)該報文。為了攔截第一懲罰結(jié)果,懲罰設(shè)備用第二預(yù)定標識嘗試匹配接收到的報文。懲罰設(shè)備攔截報文頭中有第二預(yù)定標識的報文,并可以直接轉(zhuǎn)發(fā)報文頭中不包括第二預(yù)定標識的報文。例如,懲罰設(shè)備的cam412中可以存儲匹配項為第二預(yù)定標識的acl,當懲罰設(shè)備的網(wǎng)絡(luò)接口43接收到報文后,會將報文發(fā)送給懲罰設(shè)備的轉(zhuǎn)發(fā)芯片411,懲罰設(shè)備的轉(zhuǎn)發(fā)芯片411將包括報文的報文頭發(fā)送給cam412時,cam412利用匹配項為第二預(yù)定標識的acl,可以識別出報文頭中是否包括第二預(yù)定標識,并將識別結(jié)果發(fā)送給轉(zhuǎn)發(fā) 芯片411,當識別結(jié)果指示報文的報文頭中包括第二預(yù)定標識,轉(zhuǎn)發(fā)芯片411則將該報文發(fā)送到控制面42。如果第二預(yù)定標識與第一預(yù)定標識不同,控制面42可以根據(jù)第二預(yù)定標識或者根據(jù)報文的報文頭中的其他字段確定報文是否為懲罰結(jié)果。如果第二預(yù)定標識與第一預(yù)定標識相同,控制面42可以根據(jù)報文的報文頭中的其他字段確定報文是否為懲罰結(jié)果。
懲罰設(shè)備在發(fā)送第二報文后的第二預(yù)定時長內(nèi)未接收到第一懲罰結(jié)果,表明下游的設(shè)備并沒有執(zhí)行懲罰該待懲罰的終端的操作,此時懲罰設(shè)備則根據(jù)第一懲罰參數(shù)執(zhí)行對終端的懲罰操作,生成第二懲罰結(jié)果。
這里的第二懲罰結(jié)果用于指示該終端已被懲罰。一般的,第二懲罰結(jié)果中可以包括被懲罰的終端的地址,懲罰該終端的設(shè)備的地址(也即該懲罰設(shè)備的地址)和第二預(yù)定標識。
為了能夠使得第二懲罰結(jié)果可以發(fā)送至檢測設(shè)備,一般的,懲罰設(shè)備可以從第一報文中得到檢測設(shè)備的地址,將檢測設(shè)備的地址作為第二懲罰結(jié)果的目的地址。
懲罰結(jié)果中的目的地址可以是檢測設(shè)備的地址。
本步驟實現(xiàn)時,懲罰設(shè)備的轉(zhuǎn)發(fā)面41可以將包括第二預(yù)定標識的報文進行攔截,在發(fā)送第二報文后的第二預(yù)定時長內(nèi)未接收到被控制面42判定為第一懲罰結(jié)果的報文時,控制面42則可以根據(jù)第一懲罰參數(shù)執(zhí)行對終端的懲罰操作,生成第二懲罰結(jié)果。
懲罰設(shè)備在對待懲罰終端發(fā)送來的報文進行懲罰時,可以根據(jù)懲罰動作進行不同的懲罰操作。比如,懲罰動作為阻塞終端,懲罰設(shè)備的cam412中可以添加acl,該acl的匹配項用于匹配報文頭中源地址為待懲罰終端的地址,當懲罰設(shè)備的網(wǎng)絡(luò)接口43接收到報文后,會將報文發(fā)送給懲罰設(shè)備的轉(zhuǎn)發(fā)芯片411,懲罰設(shè)備的轉(zhuǎn)發(fā)芯片411將包括報文的報文頭發(fā)送給cam412時,cam412利用匹配項為用于匹配報文頭中源地址為待懲罰終端的地址的acl,可以識別出報文頭中的源地址是否為待懲罰終端的地址,并將識別結(jié)果發(fā)送給轉(zhuǎn)發(fā)芯片411,當識別結(jié)果指示報文的報文頭中源地址為待懲罰終端的地址,轉(zhuǎn)發(fā)芯片411則丟棄該報文。
還比如,懲罰動作為阻塞接口,懲罰設(shè)備在確定出接收待懲罰終端發(fā)送的報文的網(wǎng)絡(luò)接口時,禁止該網(wǎng)絡(luò)接口繼續(xù)接收報文,也即關(guān)閉接收待懲罰終端 發(fā)送的報文的網(wǎng)絡(luò)接口。
步驟206,懲罰設(shè)備向檢測設(shè)備發(fā)送第二懲罰結(jié)果。
由于第二懲罰結(jié)果的目的地址為檢測設(shè)備的地址,因此懲罰設(shè)備的轉(zhuǎn)發(fā)面41會向檢測設(shè)備發(fā)送該第二懲罰結(jié)果。
懲罰設(shè)備的控制面42將生成的第二懲罰結(jié)果發(fā)送至轉(zhuǎn)發(fā)面41的轉(zhuǎn)發(fā)芯片411,轉(zhuǎn)發(fā)芯片411根據(jù)第二懲罰結(jié)果的目的地址選擇對應(yīng)的網(wǎng)絡(luò)接口43,由被選擇的網(wǎng)絡(luò)接口43發(fā)送該第二懲罰結(jié)果。
步驟207,懲罰設(shè)備在發(fā)送第二報文后的第二預(yù)定時長內(nèi)接收到第一懲罰結(jié)果時,忽略執(zhí)行對該終端的懲罰操作,并轉(zhuǎn)發(fā)第一懲罰結(jié)果。
懲罰設(shè)備在發(fā)送第二報文后的第二預(yù)定時長內(nèi)接收到第一懲罰結(jié)果時,則表明下游的設(shè)備已經(jīng)成功對待懲罰的終端執(zhí)行了懲罰操作,此時懲罰設(shè)備不再對該終端進行懲罰操作,也即忽略執(zhí)行對該終端的懲罰操作,并轉(zhuǎn)發(fā)第一懲罰結(jié)果。
一種實現(xiàn)中,第二預(yù)定標識和第一預(yù)定標識可以相同也可以不同。懲罰設(shè)備的轉(zhuǎn)發(fā)面41攔截包括第二預(yù)定標識的報文,并將攔截到的報文發(fā)送至控制面42,控制面42根據(jù)報文頭中的第二預(yù)定標識或者根據(jù)其他字段判定接收到的報文是否為懲罰結(jié)果。如果接收到的報文是懲罰結(jié)果,即第一懲罰結(jié)果,則忽略執(zhí)行對該終端的第一懲罰操作??刂泼?2可以將該第一懲罰結(jié)果發(fā)送至轉(zhuǎn)發(fā)面41,轉(zhuǎn)發(fā)面41的轉(zhuǎn)發(fā)芯片411根據(jù)第一懲罰結(jié)果中的目的地址選擇對應(yīng)的網(wǎng)絡(luò)接口43,由被選擇的網(wǎng)絡(luò)接口43發(fā)送該第一懲罰結(jié)果。
另一種實現(xiàn)中,第二預(yù)定標識和第一預(yù)定標識不同,因此轉(zhuǎn)發(fā)面41可以區(qū)分用于指示對待懲罰終端進行懲罰的報文和懲罰結(jié)果。轉(zhuǎn)發(fā)面41攔截包括第二預(yù)定標識的報文,復制該包括第二預(yù)定標識的報文,并繼續(xù)轉(zhuǎn)發(fā)原報文。轉(zhuǎn)發(fā)面41將復制得到的報文發(fā)送至控制面42??刂泼?2接收到復制得到的報文后判定該報文為懲罰結(jié)果,即第一懲罰結(jié)果,則忽略執(zhí)行對該終端的第一懲罰操作。
步驟208,檢測設(shè)備在發(fā)送第一報文后的第一預(yù)定時長內(nèi)未接收到懲罰結(jié)果時,執(zhí)行對該終端的懲罰操作。
檢測設(shè)備若在發(fā)送第一報文后的第一預(yù)定時長內(nèi)未接收到懲罰結(jié)果,表明其他設(shè)備并未成功完成對待懲罰終端的懲罰操作,此時檢測設(shè)備在可以執(zhí)行對 待懲罰終端的懲罰操作。
這里的第一預(yù)定時長可以參考步驟202中的描述,這里就不再贅述。
可選的,檢測設(shè)備開啟了與第一報文對應(yīng)的定時器,檢測設(shè)備在與該第一報文對應(yīng)的定時器超時,且尚未接收到與該第一報文對應(yīng)的懲罰結(jié)果時,則對該第一報文對應(yīng)的終端進行懲罰?;蛘撸瑱z測設(shè)備的待懲罰列表中記錄了第一報文的發(fā)送時刻,檢測從該發(fā)送時刻起是否達到第一預(yù)定時長,若檢測到從該發(fā)送時刻起達到第一預(yù)定時長,且尚未接收到與該第一報文對應(yīng)的懲罰結(jié)果,則對該第一報文對應(yīng)的終端進行懲罰。
若檢測設(shè)備在發(fā)送第一報文后的第一預(yù)定時長內(nèi)接收到懲罰結(jié)果,則可以將與懲罰結(jié)果對應(yīng)的第二類參數(shù)記錄至已懲罰列表中。比如,已懲罰列表中需要記錄的第二類參數(shù)包括被懲罰的終端的地址和對終端進行懲罰的懲罰設(shè)備的地址等,檢測設(shè)備可以從接收到的該懲罰結(jié)果獲取被懲罰的終端的地址和對終端進行懲罰的懲罰設(shè)備的地址等,并將獲取的這些參數(shù)添加至已懲罰列表中??蛇x的,檢測設(shè)備可以將待懲罰列表中與該懲罰結(jié)果所涉及的被懲罰終端相關(guān)的第一類參數(shù)刪除。
需要說明的是,檢測設(shè)備中存儲的與攻擊終端的懲罰操作相關(guān)的記錄信息并不局限于記錄在上述的待懲罰列表和已懲罰列表中。在另一種實現(xiàn)中,檢測設(shè)備中可以存儲懲罰記錄列表,該懲罰記錄列表的每組第三類參數(shù)用于記錄對攻擊終端的進行懲罰操作的相關(guān)信息。比如,第三類參數(shù)包括攻擊終端的地址、懲罰狀態(tài)、對該攻擊終端進行懲罰的懲罰設(shè)備的地址等,當該攻擊終端尚未被懲罰時,懲罰狀態(tài)為“待懲罰”,對該攻擊終端進行懲罰的懲罰設(shè)備的地址為空;當該攻擊終端被懲罰后,將該終端的第三類參數(shù)中的懲罰狀態(tài)修改為“已懲罰”,將對該攻擊終端進行懲罰的懲罰設(shè)備的地址設(shè)置為懲罰該終端的設(shè)備的地址。
上述實施例中記載的“第一”、“第二”等詞語用來表示名稱,而并不表示任何特定的順序。
綜上所述,本公開實施例提供的攻擊防護方法,檢測設(shè)備在確定出待懲罰終端后,會向該待懲罰終端發(fā)送攜帶有懲罰參數(shù)的報文,在該報文向該待懲罰終端發(fā)送時會經(jīng)過位于檢測設(shè)備和待懲罰終端之間的設(shè)備,這些設(shè)備在具備懲罰能力的情況下,減少懲罰參數(shù)所限定的等待時長后,繼續(xù)生成帶有更新后的懲罰參數(shù)的報文,并向待懲罰終端發(fā)送生成的報文,從而使得檢測設(shè)備、待懲 罰終端以及兩者中間的設(shè)備形成一條懲罰線路,且由于每經(jīng)過一個設(shè)備,懲罰參數(shù)所限定的等待時長均會減少,因此離待懲罰終端最近的具有懲罰能力的設(shè)備的等待時長會最先到達,從而執(zhí)行對待懲罰終端的懲罰操作。通過上述攻擊防護方法可以防御不經(jīng)過檢測設(shè)備的攻擊報文,達到了精準懲罰的目的。
請參考圖5,其示出了本發(fā)明一個實施例提供的攻擊防護裝置的框圖。該攻擊防護裝置可以通過軟件、硬件或者兩者的結(jié)合實現(xiàn)成為檢測設(shè)備的全部或者一部分。該攻擊防護裝置可以包括:執(zhí)行單元510和發(fā)送單元520。
執(zhí)行單元510,用于實現(xiàn)上述步驟201、步驟208功能。
發(fā)送單元520,用于實現(xiàn)上述步驟202功能。
相關(guān)細節(jié)可結(jié)合參考上述方法實施例。
本發(fā)明再一個實施例中還公開一種攻擊防護裝置。該攻擊防護裝置可以通過軟件、硬件或者兩者的結(jié)合實現(xiàn)成為檢測設(shè)備的全部或者一部分。該攻擊防護裝置可以包括:處理器,該處理器用于實現(xiàn)上述步驟201、步驟202和步驟208的功能。
上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。
本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例的全部或部分步驟可以通過硬件來完成,也可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲于一種計算機可讀存儲介質(zhì)中,上述提到的存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。
以上所述,僅為本發(fā)明較佳的具體實施方式,但本發(fā)明的保護范圍并不局限于此。本發(fā)明的保護范圍應(yīng)該以權(quán)利要求的保護范圍為準。