亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種網(wǎng)絡(luò)攻擊的防御方法、裝置及系統(tǒng)與流程

文檔序號(hào):12278571閱讀:272來(lái)源:國(guó)知局
一種網(wǎng)絡(luò)攻擊的防御方法、裝置及系統(tǒng)與流程

本申請(qǐng)涉及網(wǎng)絡(luò)技術(shù)領(lǐng)域,尤其涉及一種網(wǎng)絡(luò)攻擊的防御方法、裝置及系統(tǒng)。



背景技術(shù):

隨著網(wǎng)絡(luò)技術(shù)的不斷進(jìn)步,網(wǎng)絡(luò)領(lǐng)域中的網(wǎng)絡(luò)攻擊也越來(lái)越多。目前,在眾多網(wǎng)絡(luò)攻擊中分布式拒絕服務(wù)攻擊(Distributed Denial of Service,DDoS)已經(jīng)成為較為嚴(yán)重的攻擊手段。在DDOS攻擊中DNS應(yīng)答攻擊已成為主流攻擊類(lèi)型,DNS應(yīng)答攻擊又可以稱(chēng)為域名解析系統(tǒng)(DNS,Domain Name System)應(yīng)答攻擊。

為了防范DNS應(yīng)答攻擊,可以在原有系統(tǒng)中加入清洗設(shè)備進(jìn)而形成防御系統(tǒng)。參見(jiàn)圖1為一種防御系統(tǒng)結(jié)構(gòu)示意圖,在圖示中可以看出清洗設(shè)備旁路設(shè)置在路由設(shè)備的一側(cè)。

在清洗設(shè)備旁路設(shè)置的情況下,可以使用源探測(cè)的方式來(lái)清洗外網(wǎng)設(shè)備向內(nèi)網(wǎng)設(shè)備發(fā)送的具有攻擊性的DNS應(yīng)答報(bào)文。具體清洗過(guò)程可以為:清洗設(shè)備接收外網(wǎng)設(shè)備向內(nèi)網(wǎng)設(shè)備發(fā)送的DNS應(yīng)答報(bào)文后,提取其中的源地址,并判斷源地址是否包含在動(dòng)態(tài)白名單中。如果源地址沒(méi)有包含在動(dòng)態(tài)白名單中,則向外網(wǎng)設(shè)備發(fā)送一個(gè)DNS Request報(bào)文作為探測(cè)報(bào)文,如果未接收到外網(wǎng)設(shè)備反饋的DNS應(yīng)答報(bào)文,則確定外網(wǎng)設(shè)備為虛假源,丟棄DNS應(yīng)答報(bào)文;如果接收到外網(wǎng)設(shè)備反饋的DNS應(yīng)答報(bào)文,且DNS應(yīng)答報(bào)文中的域名滿足一定條件,則確定外網(wǎng)設(shè)備為真實(shí)源,將外網(wǎng)設(shè)備的IP地址加入至動(dòng)態(tài)白名單中。如果源地址包含在動(dòng)態(tài)白名單中,即外網(wǎng)設(shè)備為真實(shí)源,則轉(zhuǎn)發(fā)DNS應(yīng)答報(bào)文。

DNS應(yīng)答攻擊按攻擊類(lèi)型又可以分為:真實(shí)源攻擊和虛假源攻擊。由于動(dòng)態(tài)白名單中僅包含真實(shí)源的IP地址,不包含虛假源的IP地址,所以源探測(cè)方式僅能夠清洗虛假源發(fā)起的DNS應(yīng)答攻擊,而不能夠清洗掉真實(shí)源發(fā)起的DNS應(yīng)答攻擊。

鑒于此,現(xiàn)在需要一種方法來(lái)清洗真實(shí)源發(fā)起的DNS應(yīng)答攻擊,以緩解DNS應(yīng)答攻擊對(duì)業(yè)務(wù)和網(wǎng)絡(luò)造成的沖擊。



技術(shù)實(shí)現(xiàn)要素:

本申請(qǐng)?zhí)峁┝艘环N網(wǎng)絡(luò)攻擊的防御方法、裝置及系統(tǒng),清洗真實(shí)源發(fā)起的DNS應(yīng)答攻擊,以緩解DNS應(yīng)答攻擊對(duì)業(yè)務(wù)和網(wǎng)絡(luò)造成的沖擊。

為了實(shí)現(xiàn)上述目的,本申請(qǐng)?zhí)峁┝艘韵录夹g(shù)手段:

一種網(wǎng)絡(luò)攻擊的防御方法,包括:

接收外網(wǎng)設(shè)備旨在向內(nèi)網(wǎng)設(shè)備發(fā)送的目標(biāo)DNS應(yīng)答報(bào)文;

在動(dòng)態(tài)白名單包含所述目標(biāo)DNS應(yīng)答報(bào)文中的源地址的情況下,判斷所述目標(biāo)DNS應(yīng)答報(bào)文是否滿足預(yù)設(shè)條件;

若所述目標(biāo)DNS應(yīng)答報(bào)文滿足預(yù)設(shè)條件,則丟棄所述目標(biāo)DNS應(yīng)答報(bào)文;

其中,所述預(yù)設(shè)條件至少包括:所述目標(biāo)DNS應(yīng)答報(bào)文中的目標(biāo)域名不包含在歷史域名記錄中,所述歷史域名記錄中的每個(gè)歷史域名均從所述外網(wǎng)設(shè)備所發(fā)送的歷史DNS應(yīng)答報(bào)文中提取。

優(yōu)選的,所述預(yù)設(shè)條件還包括:

所述外網(wǎng)設(shè)備發(fā)起訪問(wèn)所述目標(biāo)域名的第一發(fā)送時(shí)間與第二發(fā)送時(shí)間的時(shí)間間隔小于預(yù)設(shè)時(shí)間間隔;

其中,所述第一發(fā)送時(shí)間為所述目標(biāo)DNS應(yīng)答報(bào)文的發(fā)送時(shí)間,所述第二發(fā)送時(shí)間為所述外網(wǎng)設(shè)備在所述第一發(fā)送時(shí)間之前最近一次發(fā)送包含所述目標(biāo)域名的DNS應(yīng)答報(bào)文的時(shí)間。

優(yōu)選的,還包括:

在所述時(shí)間間隔不小于預(yù)設(shè)時(shí)間間隔情況下,將所述目標(biāo)DNS應(yīng)答報(bào)文轉(zhuǎn)發(fā)給所述內(nèi)網(wǎng)設(shè)備。

優(yōu)選的,還包括:

若所述目標(biāo)DNS應(yīng)答報(bào)文中的目標(biāo)域名不包含在歷史域名記錄中,則將所述目標(biāo)域名和所述目標(biāo)DNS應(yīng)答報(bào)文的發(fā)送時(shí)間,存儲(chǔ)在所述歷史域名記錄中。

優(yōu)選的,還包括:

依據(jù)與所述外網(wǎng)設(shè)備的源地址對(duì)應(yīng)的所述歷史域名記錄,計(jì)算命中次數(shù)超過(guò)預(yù)設(shè)次數(shù)的域名數(shù)量與所有域名數(shù)量的比值;其中,所述歷史域名記錄中包含所述外網(wǎng)設(shè)備所發(fā)送的歷史DNS應(yīng)答報(bào)文中所有域名以及每個(gè)域名的命中次數(shù);所述預(yù)設(shè)次數(shù)為不小于3的自然數(shù);

若所述比值大于預(yù)設(shè)比值,則刪除所述動(dòng)態(tài)白名單中的所述外網(wǎng)設(shè)備的源地址;

將所述外網(wǎng)設(shè)備的源地址添加至動(dòng)態(tài)黑名單中。

優(yōu)選的,所述歷史域名記錄中每個(gè)域名的命中次數(shù)的計(jì)算方式包括:

在接收一個(gè)DNS應(yīng)答報(bào)文之后,在所述歷史域名記錄中查找該DNS應(yīng)答報(bào)文中的域名;

將所述域名的命中次數(shù)增加1;其中,每個(gè)域名的命中次數(shù)的初始值為零。

優(yōu)選的,所述預(yù)設(shè)條件還包括:

所述目標(biāo)DNS應(yīng)答報(bào)文的流量值及歷史DNS應(yīng)答報(bào)文的流量值的總和流量值大于所述預(yù)設(shè)流量值;

其中,所述歷史DNS應(yīng)答報(bào)文為所述外網(wǎng)設(shè)備在發(fā)送目標(biāo)DNS應(yīng)答報(bào)文之前所發(fā)送的所有DNS應(yīng)答報(bào)文。

優(yōu)選的,還包括:

在所述總和流量值大于所述預(yù)設(shè)流量值的情況下,刪除所述動(dòng)態(tài)白名單中的所述源地址;

將所述源地址加入至動(dòng)態(tài)黑名單中。

優(yōu)選的,所述歷史DNS應(yīng)答報(bào)文的流量值計(jì)算過(guò)程包括:

在所述外網(wǎng)設(shè)備的源地址發(fā)送一個(gè)DNS應(yīng)答報(bào)文之后,在所述歷史DNS應(yīng)答報(bào)文的流量值上疊加該DNS應(yīng)答報(bào)文的流量值;所述歷史DNS應(yīng)答報(bào)文的流量值的初始值為零。

優(yōu)選的,還包括:

在動(dòng)態(tài)黑名單中包含所述目標(biāo)DNS應(yīng)答報(bào)文中的源地址的情況下,丟棄所述目標(biāo)DNS應(yīng)答報(bào)文。

一種網(wǎng)絡(luò)攻擊的防御裝置,包括:

接收單元,用于接收外網(wǎng)設(shè)備旨在向內(nèi)網(wǎng)設(shè)備發(fā)送的目標(biāo)DNS應(yīng)答報(bào)文;

判斷單元,用于在動(dòng)態(tài)白名單包含所述目標(biāo)DNS應(yīng)答報(bào)文中的源地址的情況下,判斷所述目標(biāo)DNS應(yīng)答報(bào)文是否滿足預(yù)設(shè)條件;

第一丟棄單元,用于若所述目標(biāo)DNS應(yīng)答報(bào)文滿足預(yù)設(shè)條件,則丟棄所述目標(biāo)DNS應(yīng)答報(bào)文;

其中,所述預(yù)設(shè)條件至少包括:所述目標(biāo)DNS應(yīng)答報(bào)文中的目標(biāo)域名不包含在歷史域名記錄中,所述歷史域名記錄中的每個(gè)歷史域名均從所述外網(wǎng)設(shè)備所發(fā)送的歷史DNS應(yīng)答報(bào)文中提取。

優(yōu)選的,所述預(yù)設(shè)條件還包括:

所述外網(wǎng)設(shè)備發(fā)起訪問(wèn)所述目標(biāo)域名的第一發(fā)送時(shí)間與第二發(fā)送時(shí)間的時(shí)間間隔小于預(yù)設(shè)時(shí)間間隔;

其中,所述第一發(fā)送時(shí)間為所述目標(biāo)DNS應(yīng)答報(bào)文的發(fā)送時(shí)間,所述第二發(fā)送時(shí)間為所述外網(wǎng)設(shè)備在所述第一發(fā)送時(shí)間之前最近一次發(fā)送包含所述目標(biāo)域名的DNS應(yīng)答報(bào)文的時(shí)間。

優(yōu)選的,還包括:

轉(zhuǎn)發(fā)單元,用于在所述時(shí)間間隔不小于預(yù)設(shè)時(shí)間間隔情況下,將所述目標(biāo)DNS應(yīng)答報(bào)文轉(zhuǎn)發(fā)給所述內(nèi)網(wǎng)設(shè)備。

優(yōu)選的,還包括:

存儲(chǔ)單元,用于若所述目標(biāo)DNS應(yīng)答報(bào)文中的目標(biāo)域名不包含在歷史域名記錄中,則將所述目標(biāo)域名和所述目標(biāo)DNS應(yīng)答報(bào)文的發(fā)送時(shí)間,存儲(chǔ)在所述歷史域名記錄中。

優(yōu)選的,還包括:

比值計(jì)算單元,用于依據(jù)與所述外網(wǎng)設(shè)備的源地址對(duì)應(yīng)的所述歷史域名記錄,計(jì)算命中次數(shù)超過(guò)預(yù)設(shè)次數(shù)的域名數(shù)量與所有域名數(shù)量的比值;其中,所述歷史域名記錄中包含所述外網(wǎng)設(shè)備所發(fā)送的歷史DNS應(yīng)答報(bào)文中所有域名以及每個(gè)域名的命中次數(shù);所述預(yù)設(shè)次數(shù)為不小于3的自然數(shù);

第一刪除單元,用于若所述比值大于預(yù)設(shè)比值,則刪除所述動(dòng)態(tài)白名單中的所述外網(wǎng)設(shè)備的源地址;

第一添加單元,用于將所述外網(wǎng)設(shè)備的源地址添加至動(dòng)態(tài)黑名單中。

優(yōu)選的,還包括:

命中次數(shù)計(jì)算單元,用于在接收一個(gè)DNS應(yīng)答報(bào)文之后,在所述歷史域名記錄中查找該DNS應(yīng)答報(bào)文中的域名;將所述域名的命中次數(shù)增加1;其中,每個(gè)域名的命中次數(shù)的初始值為零。

優(yōu)選的,所述預(yù)設(shè)條件還包括:

所述目標(biāo)DNS應(yīng)答報(bào)文的流量值及歷史DNS應(yīng)答報(bào)文的流量值的總和流量值大于所述預(yù)設(shè)流量值;

其中,所述歷史DNS應(yīng)答報(bào)文為所述外網(wǎng)設(shè)備在發(fā)送目標(biāo)DNS應(yīng)答報(bào)文之前所發(fā)送的所有DNS應(yīng)答報(bào)文。

優(yōu)選的,還包括:

第二刪除單元,用于在所述總和流量值大于所述預(yù)設(shè)流量值的情況下,刪除所述動(dòng)態(tài)白名單中的所述源地址;

第二添加單元,用于將所述源地址加入至動(dòng)態(tài)黑名單中。

優(yōu)選的,還包括:

流量計(jì)算單元,用于在所述外網(wǎng)設(shè)備的源地址發(fā)送一個(gè)DNS應(yīng)答報(bào)文之后,在所述歷史DNS應(yīng)答報(bào)文的流量值上疊加該DNS應(yīng)答報(bào)文的流量值;所述歷史DNS應(yīng)答報(bào)文的流量值的初始值為零。

優(yōu)選的,還包括:

第二丟棄單元,用于在動(dòng)態(tài)黑名單中包含所述目標(biāo)DNS應(yīng)答報(bào)文中的源地址的情況下,丟棄所述目標(biāo)DNS應(yīng)答報(bào)文。

一種網(wǎng)絡(luò)攻擊的防御系統(tǒng),包括:外網(wǎng)設(shè)備、清洗設(shè)備和內(nèi)網(wǎng)設(shè)備;

所述外網(wǎng)設(shè)備,用于向清洗設(shè)備發(fā)送旨在向內(nèi)網(wǎng)設(shè)備發(fā)送的目標(biāo)DNS應(yīng)答報(bào)文;

所述清洗設(shè)備,用于接收外網(wǎng)設(shè)備旨在向內(nèi)網(wǎng)設(shè)備發(fā)送的目標(biāo)DNS應(yīng)答報(bào)文;在動(dòng)態(tài)白名單包含所述目標(biāo)DNS應(yīng)答報(bào)文中的源地址的情況下,判斷所述目標(biāo)DNS應(yīng)答報(bào)文是否滿足預(yù)設(shè)條件;若所述目標(biāo)DNS應(yīng)答報(bào)文滿足預(yù)設(shè)條件,則丟棄所述目標(biāo)DNS應(yīng)答報(bào)文;其中,所述預(yù)設(shè)條件至少包括:所述目標(biāo)DNS應(yīng)答報(bào)文中的目標(biāo)域名不包含在歷史域名記錄中,所述歷史域名記錄中的每個(gè)歷史域名均從所述外網(wǎng)設(shè)備所發(fā)送的歷史DNS應(yīng)答報(bào)文中提??;

內(nèi)網(wǎng)設(shè)備,用于接收清洗設(shè)備清洗后的DNS應(yīng)答報(bào)文。

從以上技術(shù)內(nèi)容可以看出本申請(qǐng)具有以下有益效果:

本申請(qǐng)實(shí)施例在確認(rèn)目標(biāo)DNS應(yīng)答報(bào)文中源地址在動(dòng)態(tài)白名單內(nèi)后,即可確認(rèn)發(fā)起目標(biāo)DNS應(yīng)答報(bào)文的外網(wǎng)設(shè)備非虛假源而是真實(shí)源。真實(shí)源發(fā)起DNS應(yīng)答攻擊的一種方式為,頻繁發(fā)送包含不同域名的DNS應(yīng)答報(bào)文來(lái)攻擊內(nèi)網(wǎng)設(shè)備。因此本申請(qǐng)中設(shè)有一個(gè)歷史域名記錄,其中記錄有外網(wǎng)設(shè)備所發(fā)送的所有域名。

當(dāng)目標(biāo)DNS應(yīng)答報(bào)文中的目標(biāo)域名不包含在歷史域名記錄中時(shí),則表明外網(wǎng)設(shè)備為首次發(fā)送包含目標(biāo)域名的DNS應(yīng)答報(bào)文。在此情況下,目標(biāo)DNS應(yīng)答報(bào)文可能是由外網(wǎng)設(shè)備以不同域名方式發(fā)起DNS應(yīng)答攻擊,為了避免內(nèi)網(wǎng)設(shè)備遭受攻擊,此時(shí)丟棄所述目標(biāo)DNS應(yīng)答報(bào)文。

由于正常的外網(wǎng)設(shè)備具有自動(dòng)重發(fā)機(jī)制,如果正常的外網(wǎng)設(shè)備發(fā)送的DNS應(yīng)答報(bào)文被丟棄之后,正常的外網(wǎng)設(shè)備會(huì)在接收到內(nèi)網(wǎng)設(shè)備重發(fā)的DNS Request報(bào)文之后,重新發(fā)送目標(biāo)DNS應(yīng)答報(bào)文,因此本申請(qǐng)不會(huì)影響正常的DNS應(yīng)答報(bào)文發(fā)送至內(nèi)網(wǎng)設(shè)備。而具有攻擊性的外網(wǎng)設(shè)備則不具有重發(fā)機(jī)制,所以本申請(qǐng)可以過(guò)濾掉真實(shí)源以不同域名的方式來(lái)攻擊內(nèi)網(wǎng)設(shè)備的DNS應(yīng)答報(bào)文,從而緩解DNS應(yīng)答攻擊對(duì)業(yè)務(wù)和網(wǎng)絡(luò)造成的沖擊。

附圖說(shuō)明

為了更清楚地說(shuō)明本申請(qǐng)實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本申請(qǐng)的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1為一種防御系統(tǒng)的結(jié)構(gòu)示意圖;

圖2為本申請(qǐng)實(shí)施例公開(kāi)的一種網(wǎng)絡(luò)攻擊的防御方法的流程圖;

圖3為本申請(qǐng)實(shí)施例公開(kāi)的又一種網(wǎng)絡(luò)攻擊的防御方法的流程圖;

圖4為本申請(qǐng)實(shí)施例公開(kāi)的一種網(wǎng)絡(luò)攻擊的防御方法中更改動(dòng)態(tài)白名單的流程圖;

圖5為本申請(qǐng)實(shí)施例公開(kāi)的又一種網(wǎng)絡(luò)攻擊的防御方法的流程圖;

圖6為本申請(qǐng)實(shí)施例公開(kāi)的一種網(wǎng)絡(luò)攻擊的防御裝置的結(jié)構(gòu)示意圖;

圖7為本申請(qǐng)實(shí)施例公開(kāi)的又一種網(wǎng)絡(luò)攻擊的防御裝置的結(jié)構(gòu)示意圖;

圖8為本申請(qǐng)實(shí)施例公開(kāi)的又一種網(wǎng)絡(luò)攻擊的防御裝置的結(jié)構(gòu)示意圖。

具體實(shí)施方式

下面將結(jié)合本申請(qǐng)實(shí)施例中的附圖,對(duì)本申請(qǐng)實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本申請(qǐng)一部分實(shí)施例,而不是全部的實(shí)施例?;诒旧暾?qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本申請(qǐng)保護(hù)的范圍。

為了清楚介紹本申請(qǐng)的應(yīng)用場(chǎng)景,參見(jiàn)圖1,為一種網(wǎng)絡(luò)攻擊的防御系統(tǒng),所述系統(tǒng)具體包括外網(wǎng)設(shè)備100、路由設(shè)備200、內(nèi)網(wǎng)設(shè)備300和與路由設(shè)備200旁路設(shè)置的清洗設(shè)備400。

其中,外網(wǎng)設(shè)備100用于向清洗設(shè)備400發(fā)送旨在向內(nèi)網(wǎng)設(shè)備300發(fā)送的DNS應(yīng)答報(bào)文;外網(wǎng)設(shè)備所發(fā)送的DNS應(yīng)答報(bào)文中可能在正常的DNS應(yīng)答報(bào)文中加雜有攻擊的DNS應(yīng)答報(bào)文。因此清洗設(shè)備400用于清洗掉外網(wǎng)設(shè)備正常的DNS應(yīng)答報(bào)文中具有攻擊性的DNS應(yīng)答報(bào)文,然后將清洗掉具有攻擊性的DNS應(yīng)答報(bào)文之后的正常的DNS應(yīng)答報(bào)文,轉(zhuǎn)發(fā)至內(nèi)網(wǎng)設(shè)備300。

在圖1所示的網(wǎng)絡(luò)攻擊的防御系統(tǒng)的基礎(chǔ)上,本申請(qǐng)?zhí)峁┝艘环N網(wǎng)絡(luò)攻擊的防御方法。本申請(qǐng)中僅針對(duì)一個(gè)外網(wǎng)設(shè)備和該外網(wǎng)設(shè)備所要訪問(wèn)的一個(gè)內(nèi)網(wǎng)設(shè)備進(jìn)行詳細(xì)說(shuō)明,可以理解的是,其它外網(wǎng)設(shè)備和內(nèi)網(wǎng)設(shè)備的實(shí)施方式與本申請(qǐng)?zhí)峁┑姆椒ㄒ恢隆?/p>

如圖2所示,本申請(qǐng)?zhí)峁┮环N網(wǎng)絡(luò)攻擊的防御方法,應(yīng)用于清洗設(shè)備,所述方法具體以下步驟S201~S203:

步驟S201:接收外網(wǎng)設(shè)備旨在向內(nèi)網(wǎng)設(shè)備發(fā)送的目標(biāo)DNS應(yīng)答報(bào)文。

外網(wǎng)設(shè)備在接收到目標(biāo)DNS應(yīng)答報(bào)文發(fā)送指令后,會(huì)向清洗設(shè)備發(fā)送旨在向內(nèi)網(wǎng)設(shè)備發(fā)送的目標(biāo)DNS應(yīng)答報(bào)文。目標(biāo)DNS應(yīng)答報(bào)文中包括:發(fā)送目標(biāo)DNS應(yīng)答報(bào)文的外網(wǎng)設(shè)備的源地址(IP地址),以及,外網(wǎng)設(shè)備需要訪問(wèn)內(nèi)網(wǎng)設(shè)備的目標(biāo)域名。清洗設(shè)備在接收目標(biāo)DNS應(yīng)答報(bào)文后,可以對(duì)目標(biāo)DNS應(yīng)答報(bào)文進(jìn)行判斷,以確定目標(biāo)DNS應(yīng)答報(bào)文是否為具有攻擊性的DNS應(yīng)答報(bào)文。

步驟S202:在動(dòng)態(tài)白名單包含所述目標(biāo)DNS應(yīng)答報(bào)文中的源地址的情況下,判斷所述目標(biāo)DNS應(yīng)答報(bào)文是否滿足預(yù)設(shè)條件。

清洗設(shè)備中設(shè)有一個(gè)動(dòng)態(tài)白名單,該動(dòng)態(tài)白名單中存儲(chǔ)有暫時(shí)不具有攻擊性的真實(shí)源的IP地址。動(dòng)態(tài)白名單中不具有攻擊性的IP地址是暫時(shí)的,當(dāng)某一個(gè)IP地址隨著本申請(qǐng)的判斷條件已經(jīng)改變?yōu)榫哂泄粜缘腎P地址時(shí),則將該IP地址在動(dòng)態(tài)白名單中刪除。即本申請(qǐng)中的動(dòng)態(tài)白名單中的IP地址不是固定的,而是動(dòng)態(tài)變化的,所以稱(chēng)為動(dòng)態(tài)白名單。清洗設(shè)備在接收目標(biāo)DNS應(yīng)答報(bào)文之后,在目標(biāo)DNS應(yīng)答報(bào)文中提取外網(wǎng)設(shè)備的源地址,然后判斷動(dòng)態(tài)白名單中是否包含有外網(wǎng)設(shè)備的源地址。

如果動(dòng)態(tài)白名單中不包含有外網(wǎng)設(shè)備的源地址,則使用源探測(cè)方式來(lái)確定源地址對(duì)應(yīng)的外網(wǎng)設(shè)備是否為虛假源;如果外網(wǎng)設(shè)備為虛假源則目標(biāo)DNS應(yīng)答報(bào)文為虛假源發(fā)送的具有攻擊性的DNS應(yīng)答報(bào)文,此時(shí)丟棄目標(biāo)DNS應(yīng)答報(bào)文。

如果動(dòng)態(tài)白名單中包含有外網(wǎng)設(shè)備的源地址,則表示外網(wǎng)設(shè)備為真實(shí)源;目標(biāo)DNS應(yīng)答報(bào)文為真實(shí)源發(fā)送的DNS應(yīng)答報(bào)文。隨著攻擊技術(shù)的發(fā)展,真實(shí)源也可以被攻擊人員作為攻擊源,所以在確定外網(wǎng)設(shè)備為真實(shí)源后需要采取進(jìn)一步判斷,來(lái)確定目標(biāo)DNS應(yīng)答報(bào)文是否為具有攻擊性的報(bào)文。

由于真實(shí)源發(fā)起DNS應(yīng)答攻擊的方式一為,頻繁發(fā)送包含不同域名的DNS應(yīng)答報(bào)文來(lái)攻擊內(nèi)網(wǎng)設(shè)備,因此本申請(qǐng)中清洗設(shè)備為動(dòng)態(tài)白名單中的每一個(gè)IP地址構(gòu)建一個(gè)歷史域名記錄。歷史域名記錄用于記錄每個(gè)IP地址所發(fā)送的DNS應(yīng)答報(bào)文中所包含的域名。可見(jiàn),本實(shí)施例中在清洗設(shè)備也存在一個(gè)與外網(wǎng)設(shè)備對(duì)應(yīng)歷史域名記錄,其中記錄有外網(wǎng)設(shè)備所發(fā)送的歷史DNS應(yīng)答報(bào)文中所出現(xiàn)過(guò)的域名。

為了進(jìn)一步確定目標(biāo)DNS應(yīng)答報(bào)文是否為具有攻擊性的報(bào)文,本實(shí)施例預(yù)先設(shè)定預(yù)設(shè)條件。預(yù)設(shè)條件至少包括:所述目標(biāo)DNS應(yīng)答報(bào)文中的目標(biāo)域名不包含在歷史域名記錄中,所述歷史域名記錄中的每個(gè)歷史域名均從所述外網(wǎng)設(shè)備所發(fā)送的歷史DNS應(yīng)答報(bào)文中提取。

在確定動(dòng)態(tài)白名單中包含有目標(biāo)DNS應(yīng)答報(bào)文的源地址之后,提取目標(biāo)DNS應(yīng)答報(bào)文中的目標(biāo)域名,然后進(jìn)一步判斷與源地址對(duì)應(yīng)的歷史域名記錄中是否包含目標(biāo)域名,即判斷目標(biāo)DNS應(yīng)答報(bào)文是否滿足預(yù)設(shè)條件。

步驟S203:若所述目標(biāo)DNS應(yīng)答報(bào)文滿足預(yù)設(shè)條件,則丟棄所述目標(biāo)DNS應(yīng)答報(bào)文。若所述目標(biāo)DNS應(yīng)答報(bào)文不滿足預(yù)設(shè)條件,則執(zhí)行其它處理。

如果歷史域名記錄中不包含目標(biāo)域名,則表明外網(wǎng)設(shè)備首次發(fā)送包含目標(biāo)域名的DNS應(yīng)答報(bào)文。在此情況下,目標(biāo)DNS應(yīng)答報(bào)文可能是由外網(wǎng)設(shè)備以不同域名方式發(fā)起DNS應(yīng)答攻擊,所以,歷史域名記錄中不存在目標(biāo)域名。在此情況下,為了避免內(nèi)網(wǎng)設(shè)備遭受攻擊,此時(shí)丟棄目標(biāo)DNS應(yīng)答報(bào)文。此過(guò)程可稱(chēng)為“首包丟棄機(jī)制”。

可以理解的是,目標(biāo)DNS應(yīng)答報(bào)文還可能是正常的外網(wǎng)設(shè)備發(fā)起的(外網(wǎng)設(shè)備第一次訪問(wèn)目標(biāo)域名對(duì)應(yīng)的內(nèi)網(wǎng)設(shè)備),在本申請(qǐng)假設(shè)目標(biāo)DNS應(yīng)答報(bào)文是正常,在本步驟中也會(huì)被丟棄。鑒于此,在丟棄目標(biāo)DNS應(yīng)答報(bào)文之后,將目標(biāo)域名存儲(chǔ)在歷史域名記錄中,以便正常的外網(wǎng)設(shè)備在重發(fā)機(jī)制下再次發(fā)送的包含目標(biāo)DNS應(yīng)答報(bào)文中的目標(biāo)域名會(huì)包含在歷史域名記錄中,即歷史域名記錄中的目標(biāo)域名被命中,從而保證正常的DNS報(bào)文不會(huì)因?yàn)椤笆装鼇G棄機(jī)制”被丟棄。

由于正常的外網(wǎng)設(shè)備具有重發(fā)機(jī)制,即內(nèi)網(wǎng)設(shè)備在向外網(wǎng)設(shè)備發(fā)送DNS請(qǐng)求之后,沒(méi)有接收到外網(wǎng)設(shè)備發(fā)送的DNS應(yīng)答報(bào)文,內(nèi)網(wǎng)設(shè)備會(huì)向外網(wǎng)發(fā)送DNS Request報(bào)文,在DNS Request報(bào)文的觸發(fā)下,正常的外網(wǎng)設(shè)備會(huì)重新發(fā)送目標(biāo)DNS應(yīng)答報(bào)文。當(dāng)清洗設(shè)備再次接收到目標(biāo)域名時(shí),由于歷史域名記錄中已有目標(biāo)域名,所以不會(huì)再次因?yàn)椤笆装鼇G棄機(jī)制”的原因被再次丟棄,從而保證正常DNS應(yīng)答報(bào)文不受影響。

具有攻擊性的外網(wǎng)設(shè)備不具有重發(fā)機(jī)制,所以針對(duì)真實(shí)源以不同域名的方式來(lái)攻擊內(nèi)網(wǎng)設(shè)備的DNS應(yīng)答報(bào)文,本申請(qǐng)可以準(zhǔn)確的清洗掉,從而緩解DNS應(yīng)答攻擊對(duì)業(yè)務(wù)和網(wǎng)絡(luò)造成的沖擊。

下面介紹本申請(qǐng)?zhí)峁┮环N網(wǎng)絡(luò)攻擊的防御方法的實(shí)施例二。如圖3所示,所述方法包括步驟S301~S304:

步驟S301:接收外網(wǎng)設(shè)備旨在向內(nèi)網(wǎng)設(shè)備發(fā)送的目標(biāo)DNS應(yīng)答報(bào)文。

步驟S302:在動(dòng)態(tài)白名單包含所述目標(biāo)DNS應(yīng)答報(bào)文中的源地址的情況下,判斷所述目標(biāo)DNS應(yīng)答報(bào)文是否滿足第一預(yù)設(shè)條件;所述第一預(yù)設(shè)條件 為所述目標(biāo)DNS應(yīng)答報(bào)文中的目標(biāo)域名不包含在歷史域名記錄中。若不滿足第一預(yù)設(shè)條件,則進(jìn)入步驟S303;若滿足第一預(yù)設(shè)條件,則進(jìn)入步驟S304。

本步驟的具體執(zhí)行過(guò)程已在圖2所示的實(shí)施例中進(jìn)行詳細(xì)說(shuō)明,在此不再贅述。

步驟S303:判斷所述目標(biāo)DNS應(yīng)答報(bào)文是否滿足第二預(yù)設(shè)條件;所述第二預(yù)設(shè)條件為:外網(wǎng)設(shè)備發(fā)起訪問(wèn)所述目標(biāo)域名的第一發(fā)送時(shí)間與第二發(fā)送時(shí)間的時(shí)間間隔小于預(yù)設(shè)時(shí)間間隔。其中,所述第一發(fā)送時(shí)間為所述目標(biāo)DNS應(yīng)答報(bào)文的發(fā)送時(shí)間,所述第二發(fā)送時(shí)間為所述外網(wǎng)設(shè)備在所述第一發(fā)送時(shí)間之前最近一次發(fā)送包含所述目標(biāo)域名的DNS應(yīng)答報(bào)文的時(shí)間。若滿足第二預(yù)設(shè)條件則進(jìn)入步驟S304。若不滿足第二預(yù)設(shè)條件,則進(jìn)入步驟S305。

真實(shí)源發(fā)起DNS應(yīng)答攻擊的方式二為,以有限個(gè)域名或者相同域名頻繁發(fā)送DNS應(yīng)答報(bào)文。由于真實(shí)源發(fā)送DNS應(yīng)答報(bào)文的頻率較高,所以在此情況下,包含相同域名的DNS應(yīng)答報(bào)文的間隔時(shí)間會(huì)非常短。因此本申請(qǐng)?jiān)O(shè)定一個(gè)預(yù)設(shè)時(shí)間間隔,例如1S。預(yù)設(shè)時(shí)間間隔為正常的外網(wǎng)設(shè)備相鄰兩次發(fā)送相同域名的DNS應(yīng)答報(bào)文時(shí),所應(yīng)該具有的時(shí)間間隔。

在歷史域名記錄中包含目標(biāo)域名的情況下,判定目標(biāo)DNS應(yīng)答報(bào)文的預(yù)設(shè)條件還包括:所述外網(wǎng)設(shè)備發(fā)起訪問(wèn)所述目標(biāo)域名的第一發(fā)送時(shí)間與第二發(fā)送時(shí)間的時(shí)間間隔小于預(yù)設(shè)時(shí)間間隔。

清洗設(shè)備在接收目標(biāo)DNS應(yīng)答報(bào)文時(shí),將當(dāng)前時(shí)間作為目標(biāo)DNS應(yīng)答報(bào)文的發(fā)送時(shí)間,即第一發(fā)送時(shí)間。清洗設(shè)備的歷史域名記錄中會(huì)記錄有包含目標(biāo)域名的DNS應(yīng)答報(bào)文最近一次的發(fā)送時(shí)間,即第二發(fā)送時(shí)間。

如果第一發(fā)送時(shí)間和第二發(fā)送時(shí)間的時(shí)間間隔小于預(yù)設(shè)時(shí)間間隔,則說(shuō)明外網(wǎng)設(shè)備頻繁發(fā)送包含相同域名的DNS應(yīng)答報(bào)文,也就是,外網(wǎng)設(shè)備發(fā)送相同域名的DNS應(yīng)答報(bào)文的頻率過(guò)高,此時(shí)可能是外網(wǎng)設(shè)備以有限個(gè)域名或者相同域名頻繁發(fā)送DNS應(yīng)答報(bào)文的攻擊方式來(lái)攻擊內(nèi)網(wǎng)設(shè)備。因此,清洗設(shè)備丟棄目標(biāo)DNS應(yīng)答報(bào)文,以保護(hù)內(nèi)網(wǎng)設(shè)備免受攻擊。

步驟S304:丟棄所述目標(biāo)DNS應(yīng)答報(bào)文。

步驟S305:將所述目標(biāo)DNS應(yīng)答報(bào)文轉(zhuǎn)發(fā)至內(nèi)網(wǎng)設(shè)備。

如果第一發(fā)送時(shí)間和第二發(fā)送時(shí)間的時(shí)間間隔不小于預(yù)設(shè)時(shí)間間隔,則說(shuō)明目標(biāo)DNS應(yīng)答報(bào)文暫且為正常外網(wǎng)設(shè)備發(fā)送的DNS應(yīng)答報(bào)文,因此轉(zhuǎn)發(fā)DNS應(yīng)答報(bào)文至內(nèi)網(wǎng)設(shè)備。

在上述圖2和圖3的實(shí)施例中所使用的動(dòng)態(tài)白名單中的IP地址僅是暫時(shí)不具有攻擊性的設(shè)備,所以,需要定期檢測(cè)動(dòng)態(tài)白名單中的IP地址是否已經(jīng)轉(zhuǎn)換為攻擊性的設(shè)備,以便更新動(dòng)態(tài)白名單。具體的可以采用以下方式:

在動(dòng)態(tài)白名單中的真實(shí)源可以發(fā)起DNS應(yīng)答攻擊的方式三:發(fā)送的DNS應(yīng)答報(bào)文中的域名比較多但是周期性變化,并且相同域名攻擊報(bào)文之間的間隔大于1秒。在此情況下,上述兩個(gè)預(yù)設(shè)條件均不能清洗掉此種具有攻擊性DNS應(yīng)答報(bào)文。因此采用下述方式來(lái)解決方式三的攻擊:

在圖2或3所示的實(shí)施例的基礎(chǔ)上,本申請(qǐng)的提供的實(shí)施例還包括:針對(duì)外網(wǎng)設(shè)備所發(fā)送的DNS應(yīng)答報(bào)文,清洗設(shè)備在接收一個(gè)DNS應(yīng)答報(bào)文之后,在所述歷史域名記錄中查找該DNS應(yīng)答報(bào)文中的域名;如果在歷史域名中查找到DNS應(yīng)答報(bào)文中域名,則說(shuō)明該域名被命中,因此將所述域名的命中次數(shù)增加1;其中,每個(gè)域名的命中次數(shù)的初始值為零。所以,歷史域名記錄中記錄有外網(wǎng)設(shè)備所發(fā)送的所有域名,以及每個(gè)域名被命中的總次數(shù)。

本申請(qǐng)?jiān)O(shè)定一個(gè)預(yù)設(shè)命中次數(shù),該命中次數(shù)至少為3次。因?yàn)橐话闱闆r下,正常的DNS應(yīng)答報(bào)文最多發(fā)送2兩次包含相同域名的DNS應(yīng)答報(bào)文。當(dāng)一個(gè)域名對(duì)應(yīng)的DNS應(yīng)答報(bào)文的命中次數(shù)超過(guò)預(yù)設(shè)命中次數(shù)之后,則說(shuō)明該域名被頻繁用于向內(nèi)網(wǎng)設(shè)備發(fā)送DNS應(yīng)答報(bào)文,所以可以認(rèn)為該域名被作為攻擊域名來(lái)攻擊內(nèi)網(wǎng)設(shè)備。

如圖4所示,在圖2或圖3所示的實(shí)施例的基礎(chǔ)上,清洗設(shè)備會(huì)定期執(zhí)行以下步驟:

步驟S401:依據(jù)與所述外網(wǎng)設(shè)備的源地址對(duì)應(yīng)的所述歷史域名記錄,計(jì)算命中次數(shù)超過(guò)預(yù)設(shè)次數(shù)的域名數(shù)量與所有域名數(shù)量的比值;其中,所述歷史域名記錄中包含所述外網(wǎng)設(shè)備所發(fā)送的歷史DNS應(yīng)答報(bào)文中所有域名以及每個(gè)域名的命中次數(shù)。

在歷史域名記錄中統(tǒng)計(jì)命中次數(shù)超過(guò)預(yù)設(shè)次數(shù)的域名數(shù)量(第一數(shù)量),這樣做的目的是統(tǒng)計(jì)外網(wǎng)設(shè)備所發(fā)送的攻擊域名的數(shù)量;然后再統(tǒng)計(jì)外網(wǎng)設(shè) 備所發(fā)送的所有域名的數(shù)量(第二數(shù)量);計(jì)算第一數(shù)量和第二數(shù)量的比值,以確定外網(wǎng)設(shè)備中發(fā)送攻擊域名與所有域名的比值。

步驟S402:判斷所述比值是否大于預(yù)設(shè)比值,若是,則進(jìn)入步驟S403,否則執(zhí)行其它處理。

本申請(qǐng)可以設(shè)定一個(gè)預(yù)設(shè)比值,例如0.5,用于表示正常情況下攻擊域名在所有域名中占有的比值。

步驟S403:刪除所述動(dòng)態(tài)白名單中的所述外網(wǎng)設(shè)備的源地址。

當(dāng)S401中計(jì)算得到的比值大于預(yù)設(shè)比值時(shí),則說(shuō)明外網(wǎng)設(shè)備頻繁發(fā)送包含攻擊域名的DNS應(yīng)答報(bào)文,即外網(wǎng)設(shè)備現(xiàn)在已轉(zhuǎn)換為具有攻擊性的外網(wǎng)設(shè)備,所以將外網(wǎng)設(shè)備的源地址在動(dòng)態(tài)白名單中刪除。

步驟S404:將所述外網(wǎng)設(shè)備的源地址添加至動(dòng)態(tài)黑名單中。

定期將動(dòng)態(tài)白名單中的具有攻擊性的外網(wǎng)設(shè)備的源地址添加至動(dòng)態(tài)黑名單中,以便外網(wǎng)設(shè)備再次發(fā)送DNS應(yīng)答報(bào)文時(shí),丟棄外網(wǎng)設(shè)備所發(fā)送的DNS應(yīng)答報(bào)文,從而保護(hù)內(nèi)網(wǎng)設(shè)備免受攻擊。

圖4所示的實(shí)施例以目標(biāo)DNS應(yīng)答報(bào)文中的目標(biāo)域名為出發(fā)點(diǎn),來(lái)確定外網(wǎng)設(shè)備發(fā)送的目標(biāo)DNS應(yīng)答報(bào)文是否為具有攻擊性,從而實(shí)現(xiàn)更新動(dòng)態(tài)白名單的目的。除了采用域名的方式,本申請(qǐng)還提供了采用流量的方式,來(lái)更新動(dòng)態(tài)白名單。

具體的可以為:外網(wǎng)設(shè)備的源地址發(fā)送一個(gè)DNS應(yīng)答報(bào)文且源地址包含在動(dòng)態(tài)白名單中,在歷史DNS應(yīng)答報(bào)文的流量值上疊加該DNS應(yīng)答報(bào)文的流量值;所述歷史DNS應(yīng)答報(bào)文的流量值的初始值為零。即這樣做的目的為不斷統(tǒng)計(jì)外網(wǎng)設(shè)備發(fā)送DNS應(yīng)答報(bào)文的流量值。

在此情況下,所述預(yù)設(shè)條件還包括:所述目標(biāo)DNS應(yīng)答報(bào)文的流量值及歷史DNS應(yīng)答報(bào)文的流量值的總和流量值大于所述預(yù)設(shè)流量值;其中,所述歷史DNS應(yīng)答報(bào)文為所述外網(wǎng)設(shè)備在發(fā)送目標(biāo)DNS應(yīng)答報(bào)文之前所發(fā)送的所有DNS應(yīng)答報(bào)文。

本申請(qǐng)?jiān)O(shè)定一個(gè)預(yù)設(shè)流量值,用于表示正常外網(wǎng)設(shè)備在一段時(shí)間內(nèi)所發(fā)送的流量值總和。當(dāng)一段時(shí)間內(nèi),外網(wǎng)設(shè)備所發(fā)送的DNS應(yīng)答報(bào)文的流量值超過(guò)預(yù)設(shè)流量值,則說(shuō)明該外網(wǎng)設(shè)備頻繁發(fā)送DNS應(yīng)答報(bào)文。在此情況下, 表明動(dòng)態(tài)白名單中的外網(wǎng)設(shè)備已經(jīng)轉(zhuǎn)換為具有攻擊性外網(wǎng)設(shè)備,因此在所述總和流量值大于所述預(yù)設(shè)流量值的情況下,刪除所述動(dòng)態(tài)白名單中的所述源地址;將所述源地址加入至動(dòng)態(tài)黑名單中。

針對(duì)真實(shí)源發(fā)起DNS應(yīng)答攻擊的方式三(發(fā)送的DNS應(yīng)答報(bào)文中的域名比較多但是周期性變化,并且相同域名攻擊報(bào)文之間的間隔大于1秒),盡管在圖2或圖3所示的實(shí)施例中沒(méi)有辦法及時(shí)清除,但是通過(guò)定期查看外網(wǎng)設(shè)備所發(fā)送的流量值總和的方式,或者,采用攻擊域名的命中次數(shù)超過(guò)預(yù)設(shè)比值的方式,便能夠確定外網(wǎng)設(shè)備是否為具有攻擊性的設(shè)備。如果是具有攻擊性的設(shè)備,則將外網(wǎng)設(shè)備對(duì)應(yīng)的源地址加入至動(dòng)態(tài)黑名單中,以便下次外網(wǎng)設(shè)備再發(fā)送DNS應(yīng)答報(bào)文時(shí),則可以立即丟棄報(bào)文。

下面介紹本申請(qǐng)?zhí)峁┮环N網(wǎng)絡(luò)攻擊的防御方法的實(shí)施例三。如圖5所示,所述方法包括步驟S501~S504:

步驟S501:接收外網(wǎng)設(shè)備旨在向內(nèi)網(wǎng)設(shè)備發(fā)送的目標(biāo)DNS應(yīng)答報(bào)文。

步驟S502:判斷動(dòng)態(tài)黑名單中是否包含有所述目標(biāo)DNS應(yīng)答報(bào)文中的源地址;如果是,則進(jìn)入步驟S512;如果否,則進(jìn)入步驟S503。

清洗設(shè)備接收到一個(gè)外網(wǎng)設(shè)備發(fā)送的DNS應(yīng)答報(bào)文之后,根據(jù)報(bào)文的目的地址(IP地址)查詢(xún)?cè)撃康牡刂穼?duì)應(yīng)的內(nèi)網(wǎng)設(shè)備是否處于防御狀態(tài)。如果,內(nèi)網(wǎng)設(shè)備處于防御狀態(tài),則可以執(zhí)行本實(shí)施例中的過(guò)程。

動(dòng)態(tài)黑名單中存儲(chǔ)的為具有攻擊性的外網(wǎng)設(shè)備的源地址,所以當(dāng)外網(wǎng)設(shè)備的源地址命中動(dòng)態(tài)黑名單之后,則確定目標(biāo)DNS應(yīng)答報(bào)文為具有攻擊性的報(bào)文,此時(shí)丟棄目標(biāo)DNS應(yīng)答報(bào)文。

步驟S503:判斷動(dòng)態(tài)白名單是否包含所述目標(biāo)DNS應(yīng)答報(bào)文中的源地址;如果是,則進(jìn)入步驟S508以及步驟S514,否則進(jìn)入步驟S504。

步驟S504:向外網(wǎng)設(shè)備發(fā)送一個(gè)包含特殊域名的DNS Request報(bào)文作為探測(cè)報(bào)文。

清洗設(shè)備會(huì)構(gòu)造一個(gè)DNS Request報(bào)文作為探測(cè)報(bào)文發(fā)送給外網(wǎng)設(shè)備,其中,DNS Request報(bào)文中的域名可由目標(biāo)DNS應(yīng)答報(bào)文中的五元組信息和域名信息通過(guò)一定哈希方式構(gòu)造而來(lái),并保證構(gòu)造的域名是現(xiàn)網(wǎng)中不存在的域名。

步驟S505:清洗設(shè)備判斷是否接收到外網(wǎng)設(shè)備反饋的包含特殊域名的DNS應(yīng)答報(bào)文;如果是,則進(jìn)入步驟S506,否則進(jìn)入步驟S507。

清洗設(shè)備再次接收該外網(wǎng)設(shè)備發(fā)送的DNS應(yīng)答報(bào)文后,查看報(bào)文中域名是否是由步驟S504中的方式構(gòu)造而來(lái)的。如果是正常的外網(wǎng)設(shè)備在接收DNS Request報(bào)文后,會(huì)將其中的域名加載在依據(jù)DNS Request報(bào)文所生成的DNS應(yīng)答報(bào)文中。所以如果再次接收到的DNS應(yīng)答報(bào)文中包含特殊域名,則表示該外網(wǎng)設(shè)備是正常的外網(wǎng)設(shè)備,否則表示該外網(wǎng)設(shè)備是具有攻擊性的外網(wǎng)設(shè)備。

步驟S506:將外網(wǎng)設(shè)備的IP地址加入至動(dòng)態(tài)白名單中,并為外網(wǎng)設(shè)備的IP地址構(gòu)建歷史域名記錄,以及流量監(jiān)控表。

步驟S507:將外網(wǎng)設(shè)備對(duì)應(yīng)的IP地址加入至動(dòng)態(tài)黑名單中。

步驟S508:判斷所述目標(biāo)DNS應(yīng)答報(bào)文是否滿足第一預(yù)設(shè)條件;所述第一預(yù)設(shè)條件為所述目標(biāo)DNS應(yīng)答報(bào)文中的目標(biāo)域名不包含在歷史域名記錄中。若不滿足第一預(yù)設(shè)條件,則進(jìn)入步驟S509;若滿足第一預(yù)設(shè)條件,則進(jìn)入步驟S511。

步驟S509:將歷史域名記錄中目標(biāo)DNS應(yīng)答報(bào)文中目標(biāo)域名的命中次數(shù)加1。

步驟S510:判斷所述目標(biāo)DNS應(yīng)答報(bào)文是否滿足第二預(yù)設(shè)條件;所述第二預(yù)設(shè)條件為:外網(wǎng)設(shè)備發(fā)起訪問(wèn)所述目標(biāo)域名的第一發(fā)送時(shí)間與第二發(fā)送時(shí)間的時(shí)間間隔小于預(yù)設(shè)時(shí)間間隔。若滿足第二預(yù)設(shè)條件則進(jìn)入步驟S512。若不滿足第二預(yù)設(shè)條件,則進(jìn)入步驟S513。

步驟S511:將目標(biāo)域名以及包含目標(biāo)域名的發(fā)送時(shí)間,添加至外網(wǎng)設(shè)備的歷史域名記錄中,并設(shè)置目標(biāo)域名的命中次數(shù)為1。

步驟S512:丟棄所述目標(biāo)DNS應(yīng)答報(bào)文。

步驟S513:將目標(biāo)DNS應(yīng)答報(bào)文轉(zhuǎn)發(fā)至內(nèi)網(wǎng)設(shè)備。

步驟S514:將目標(biāo)DNS應(yīng)答報(bào)文的流量值添加至流量監(jiān)控表中。

步驟S515:如果流量監(jiān)控表中的流量值是否大于預(yù)設(shè)流量值,則在動(dòng)態(tài)白名單中刪除外網(wǎng)設(shè)備的源地址,并將外網(wǎng)設(shè)備的源地址加入至動(dòng)態(tài)黑名單中。

步驟S516:定期計(jì)算命中次數(shù)超過(guò)預(yù)設(shè)次數(shù)的域名數(shù)量與所有域名數(shù)量的比值。

步驟S517:如果比值大于預(yù)設(shè)比值,則刪除所述動(dòng)態(tài)白名單中的所述外網(wǎng)設(shè)備的源地址,將所述外網(wǎng)設(shè)備的源地址添加至動(dòng)態(tài)黑名單中。

通過(guò)圖5所示的實(shí)施例,可以過(guò)濾所有類(lèi)型的DNS應(yīng)答攻擊:

針對(duì)虛假源類(lèi)型的DNS應(yīng)答攻擊:通過(guò)步驟S503動(dòng)態(tài)白名單的方式即可過(guò)濾掉;針對(duì)真實(shí)源的DNS應(yīng)答攻擊方式一(攻擊報(bào)文中的域名隨機(jī)變化),采用步驟S508的方式(域名首包丟棄機(jī)制)即可過(guò)濾掉;針對(duì)真實(shí)源的DNS應(yīng)答攻擊的方式二(攻擊報(bào)文中的域名個(gè)數(shù)有限或不變,相同域名攻擊報(bào)文之間的間隔小于1秒),通過(guò)步驟S510的判斷即可過(guò)濾掉;針對(duì)真實(shí)源的DNS應(yīng)答攻擊的方式三(攻擊報(bào)文中的域名比較多但是周期性變化,相同域名攻擊報(bào)文之間的間隔大于1秒),通過(guò)步驟S515-S517即可過(guò)濾掉。

因此本申請(qǐng)可以過(guò)濾所有類(lèi)型的DNS應(yīng)答攻擊,從而緩解DNS應(yīng)答攻擊對(duì)業(yè)務(wù)和網(wǎng)絡(luò)造成的沖擊。

與本申請(qǐng)?zhí)峁┑囊环N網(wǎng)絡(luò)攻擊的防御方法相對(duì)應(yīng),本申請(qǐng)還提供了一種網(wǎng)絡(luò)攻擊的防御裝置。如圖6所示,本裝置包括:

接收單元61,用于接收外網(wǎng)設(shè)備旨在向內(nèi)網(wǎng)設(shè)備發(fā)送的目標(biāo)DNS應(yīng)答報(bào)文;

判斷單元62,用于在動(dòng)態(tài)白名單包含所述目標(biāo)DNS應(yīng)答報(bào)文中的源地址的情況下,判斷所述目標(biāo)DNS應(yīng)答報(bào)文是否滿足預(yù)設(shè)條件;

第一丟棄單元63,用于若所述目標(biāo)DNS應(yīng)答報(bào)文滿足預(yù)設(shè)條件,則丟棄所述目標(biāo)DNS應(yīng)答報(bào)文;

其中,所述預(yù)設(shè)條件至少包括:所述目標(biāo)DNS應(yīng)答報(bào)文中的目標(biāo)域名不包含在歷史域名記錄中,所述歷史域名記錄中的每個(gè)歷史域名均從所述外網(wǎng)設(shè)備所發(fā)送的歷史DNS應(yīng)答報(bào)文中提取。

所述預(yù)設(shè)條件還包括:所述外網(wǎng)設(shè)備發(fā)起訪問(wèn)所述目標(biāo)域名的第一發(fā)送時(shí)間與第二發(fā)送時(shí)間的時(shí)間間隔小于預(yù)設(shè)時(shí)間間隔。其中,所述第一發(fā)送時(shí)間為所述目標(biāo)DNS應(yīng)答報(bào)文的發(fā)送時(shí)間,所述第二發(fā)送時(shí)間為所述外網(wǎng)設(shè)備 在所述第一發(fā)送時(shí)間之前最近一次發(fā)送包含所述目標(biāo)域名的DNS應(yīng)答報(bào)文的時(shí)間。

所述預(yù)設(shè)條件還包括:所述目標(biāo)DNS應(yīng)答報(bào)文的流量值及歷史DNS應(yīng)答報(bào)文的流量值的總和流量值大于所述預(yù)設(shè)流量值;其中,所述歷史DNS應(yīng)答報(bào)文為所述外網(wǎng)設(shè)備在發(fā)送目標(biāo)DNS應(yīng)答報(bào)文之前所發(fā)送的所有DNS應(yīng)答報(bào)文。

如圖7所示,本申請(qǐng)還提供的一種網(wǎng)絡(luò)攻擊的防御裝置,還包括:

轉(zhuǎn)發(fā)單元64,用于在所述時(shí)間間隔不小于預(yù)設(shè)時(shí)間間隔情況下,將所述目標(biāo)DNS應(yīng)答報(bào)文轉(zhuǎn)發(fā)給所述內(nèi)網(wǎng)設(shè)備。

存儲(chǔ)單元65,用于若所述目標(biāo)DNS應(yīng)答報(bào)文中的目標(biāo)域名不包含在歷史域名記錄中,則將所述目標(biāo)域名和所述目標(biāo)DNS應(yīng)答報(bào)文的發(fā)送時(shí)間,存儲(chǔ)在所述歷史域名記錄中。

比值計(jì)算單元66,用于依據(jù)與所述外網(wǎng)設(shè)備的源地址對(duì)應(yīng)的所述歷史域名記錄,計(jì)算命中次數(shù)超過(guò)預(yù)設(shè)次數(shù)的域名數(shù)量與所有域名數(shù)量的比值;其中,所述歷史域名記錄中包含所述外網(wǎng)設(shè)備所發(fā)送的歷史DNS應(yīng)答報(bào)文中所有域名以及每個(gè)域名的命中次數(shù);

第一刪除單元67,用于若所述比值大于預(yù)設(shè)比值,則刪除所述動(dòng)態(tài)白名單中的所述外網(wǎng)設(shè)備的源地址;

第一添加單元68,用于將所述外網(wǎng)設(shè)備的源地址添加至動(dòng)態(tài)黑名單中。

命中次數(shù)計(jì)算單元69,用于在一個(gè)DNS應(yīng)答報(bào)文被丟棄之后,在所述歷史域名記錄中查找該DNS應(yīng)答報(bào)文中的域名;將所述域名的命中次數(shù)增加1;其中,每個(gè)域名的命中次數(shù)的初始值為零。

由以上內(nèi)容可以看出,本申請(qǐng)具有以下有益效果:

本申請(qǐng)實(shí)施例在確認(rèn)目標(biāo)DNS應(yīng)答報(bào)文中源地址在動(dòng)態(tài)白名單內(nèi)后,即可確認(rèn)發(fā)起目標(biāo)DNS應(yīng)答報(bào)文的外網(wǎng)設(shè)備非虛假源而是真實(shí)源。真實(shí)源發(fā)起DNS應(yīng)答攻擊的一種方式為,頻繁發(fā)送包含不同域名的DNS應(yīng)答報(bào)文來(lái)攻擊內(nèi)網(wǎng)設(shè)備。因此本申請(qǐng)中設(shè)有一個(gè)歷史域名記錄,其中記錄有外網(wǎng)設(shè)備所發(fā)送的所有域名。

當(dāng)目標(biāo)DNS應(yīng)答報(bào)文中的目標(biāo)域名不包含在歷史域名記錄中時(shí),則表明外網(wǎng)設(shè)備為首次發(fā)送包含目標(biāo)域名的DNS應(yīng)答報(bào)文。在此情況下,目標(biāo)DNS應(yīng)答報(bào)文可能是由外網(wǎng)設(shè)備以不同域名方式發(fā)起DNS應(yīng)答攻擊,為了避免內(nèi)網(wǎng)設(shè)備遭受攻擊,此時(shí)丟棄所述目標(biāo)DNS應(yīng)答報(bào)文。

由于正常的外網(wǎng)設(shè)備具有自動(dòng)重發(fā)機(jī)制,如果正常的外網(wǎng)設(shè)備發(fā)送的DNS應(yīng)答報(bào)文被丟棄之后,正常的外網(wǎng)設(shè)備會(huì)重新發(fā)送目標(biāo)DNS應(yīng)答報(bào)文,從而不影響正常的DNS應(yīng)答報(bào)文發(fā)送至內(nèi)網(wǎng)設(shè)備。而具有攻擊性的外網(wǎng)設(shè)備則不具有自動(dòng)重發(fā)機(jī)制,所以本申請(qǐng)可以過(guò)濾掉真實(shí)源以不同域名的方式來(lái)攻擊內(nèi)網(wǎng)設(shè)備的DNS應(yīng)答報(bào)文,從而緩解DNS應(yīng)答攻擊對(duì)業(yè)務(wù)和網(wǎng)絡(luò)造成的沖擊。

如圖8所示,本申請(qǐng)還提供的一種網(wǎng)絡(luò)攻擊的防御裝置,還包括:

流量計(jì)算單元71,用于在所述外網(wǎng)設(shè)備的源地址發(fā)送一個(gè)DNS應(yīng)答報(bào)文之后,在所述歷史DNS應(yīng)答報(bào)文的流量值上疊加該DNS應(yīng)答報(bào)文的流量值;所述歷史DNS應(yīng)答報(bào)文的流量值的初始值為零。

第二刪除單元72,用于在所述總和流量值大于所述預(yù)設(shè)流量值的情況下,刪除所述動(dòng)態(tài)白名單中的所述源地址;

第二添加單元73,用于將所述源地址加入至動(dòng)態(tài)黑名單中。

第二丟棄單元74,用于在動(dòng)態(tài)黑名單中包含所述目標(biāo)DNS應(yīng)答報(bào)文中的源地址的情況下,丟棄所述目標(biāo)DNS應(yīng)答報(bào)文。

參見(jiàn)圖1,本申請(qǐng)?zhí)峁┝艘环N網(wǎng)絡(luò)攻擊的防御系統(tǒng),包括:外網(wǎng)設(shè)備100、路由設(shè)備200,清洗設(shè)備400和內(nèi)網(wǎng)設(shè)備300;

所述外網(wǎng)設(shè)備100,用于向清洗設(shè)備400發(fā)送旨在向內(nèi)網(wǎng)設(shè)備300發(fā)送的目標(biāo)DNS應(yīng)答報(bào)文。

所述清洗設(shè)備400,用于接收外網(wǎng)設(shè)備旨在向內(nèi)網(wǎng)設(shè)備發(fā)送的目標(biāo)DNS應(yīng)答報(bào)文;在動(dòng)態(tài)白名單包含所述目標(biāo)DNS應(yīng)答報(bào)文中的源地址的情況下,判斷所述目標(biāo)DNS應(yīng)答報(bào)文是否滿足預(yù)設(shè)條件;若所述目標(biāo)DNS應(yīng)答報(bào)文滿足預(yù)設(shè)條件,則丟棄所述目標(biāo)DNS應(yīng)答報(bào)文;其中,所述預(yù)設(shè)條件至少包括:所述目標(biāo)DNS應(yīng)答報(bào)文中的目標(biāo)域名不包含在歷史域名記錄中,所述歷 史域名記錄中的每個(gè)歷史域名均從所述外網(wǎng)設(shè)備所發(fā)送的歷史DNS應(yīng)答報(bào)文中提取;

內(nèi)網(wǎng)設(shè)備300,用于接收清洗設(shè)備清洗后的DNS應(yīng)答報(bào)文。

本系統(tǒng)具有以下有益效果:

本申請(qǐng)實(shí)施例在確認(rèn)目標(biāo)DNS應(yīng)答報(bào)文中源地址在動(dòng)態(tài)白名單內(nèi)后,即可確認(rèn)發(fā)起目標(biāo)DNS應(yīng)答報(bào)文的外網(wǎng)設(shè)備非虛假源而是真實(shí)源。真實(shí)源發(fā)起DNS應(yīng)答攻擊的一種方式為,頻繁發(fā)送包含不同域名的DNS應(yīng)答報(bào)文來(lái)攻擊內(nèi)網(wǎng)設(shè)備。因此本申請(qǐng)中設(shè)有一個(gè)歷史域名記錄,其中記錄有外網(wǎng)設(shè)備所發(fā)送的所有域名。

當(dāng)目標(biāo)DNS應(yīng)答報(bào)文中的目標(biāo)域名不包含在歷史域名記錄中時(shí),則表明外網(wǎng)設(shè)備為首次發(fā)送包含目標(biāo)域名的DNS應(yīng)答報(bào)文。在此情況下,目標(biāo)DNS應(yīng)答報(bào)文可能是由外網(wǎng)設(shè)備以不同域名方式發(fā)起DNS應(yīng)答攻擊,為了避免內(nèi)網(wǎng)設(shè)備遭受攻擊,此時(shí)丟棄所述目標(biāo)DNS應(yīng)答報(bào)文。

由于正常的外網(wǎng)設(shè)備具有自動(dòng)重發(fā)機(jī)制,如果正常的外網(wǎng)設(shè)備發(fā)送的DNS應(yīng)答報(bào)文被丟棄之后,正常的外網(wǎng)設(shè)備會(huì)重新發(fā)送目標(biāo)DNS應(yīng)答報(bào)文,從而不影響正常的DNS應(yīng)答報(bào)文發(fā)送至內(nèi)網(wǎng)設(shè)備。而具有攻擊性的外網(wǎng)設(shè)備則不具有自動(dòng)重發(fā)機(jī)制,所以本申請(qǐng)可以過(guò)濾掉真實(shí)源以不同域名的方式來(lái)攻擊內(nèi)網(wǎng)設(shè)備的DNS應(yīng)答報(bào)文,從而緩解DNS應(yīng)答攻擊對(duì)業(yè)務(wù)和網(wǎng)絡(luò)造成的沖擊。

本實(shí)施例方法所述的功能如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷(xiāo)售或使用時(shí),可以存儲(chǔ)在一個(gè)計(jì)算設(shè)備可讀取存儲(chǔ)介質(zhì)中?;谶@樣的理解,本申請(qǐng)實(shí)施例對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,移動(dòng)計(jì)算設(shè)備或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本申請(qǐng)各個(gè)實(shí)施例所述方法的全部或部分步驟。而前述的存儲(chǔ)介質(zhì)包括:U盤(pán)、移動(dòng)硬盤(pán)、只讀存儲(chǔ)器(ROM,Read-Only Memory)、隨機(jī)存取存儲(chǔ)器(RAM,Random Access Memory)、磁碟或者光盤(pán)等各種可以存儲(chǔ)程序代碼的介質(zhì)。

本說(shuō)明書(shū)中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其它實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同或相似部分互相參見(jiàn)即可。

對(duì)所公開(kāi)的實(shí)施例的上述說(shuō)明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本申請(qǐng)。對(duì)這些實(shí)施例的多種修改對(duì)本領(lǐng)域的專(zhuān)業(yè)技術(shù)人員來(lái)說(shuō)將是顯而易見(jiàn)的,本文中所定義的一般原理可以在不脫離本申請(qǐng)的精神或范圍的情況下,在其它實(shí)施例中實(shí)現(xiàn)。因此,本申請(qǐng)將不會(huì)被限制于本文所示的這些實(shí)施例,而是要符合與本文所公開(kāi)的原理和新穎特點(diǎn)相一致的最寬的范圍。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1