两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種DDOS防御系統(tǒng)中檢測偽造源IP的方法和裝置與流程

文檔序號:12752743閱讀:622來源:國知局
一種DDOS防御系統(tǒng)中檢測偽造源IP的方法和裝置與流程

本發(fā)明涉及網(wǎng)絡(luò)安全技術(shù)領(lǐng)域,更具體地,涉及一種DDOS防御系統(tǒng)中檢測偽造源IP的方法和裝置。



背景技術(shù):

分布式拒絕服務(wù)(DDoS,Distributed Denial of Service)攻擊是攻擊者通過讓大量的網(wǎng)絡(luò)流量同時涌向攻擊目標(biāo),造成目標(biāo)主機網(wǎng)絡(luò)擁塞、資源耗盡甚至宕機,實現(xiàn)讓目標(biāo)主機拒絕服務(wù)的目的。

DDOS攻擊通常是由僵尸網(wǎng)絡(luò)和代理服務(wù)器上各種攻擊軟件、應(yīng)用軟件產(chǎn)生大量流量來實現(xiàn)的。在攻擊中,偽造源IP攻擊是很常用的方式,原因有:(1)可以避免監(jiān)管和追溯;(2)避免目標(biāo)主機對攻擊數(shù)據(jù)的響應(yīng)給攻擊主機帶來壓力;(3)通過偽造源IP還可以實現(xiàn)反射攻擊,其威力巨大。

DDOS防御系統(tǒng)就是用來檢測和清洗這些異常流量,保障被攻擊主機能夠持續(xù)在線服務(wù)。在該系統(tǒng)中,源IP識別和與之相關(guān)的統(tǒng)計是常用的流量清洗依據(jù)。例如,(1)通過源IP與白名單、惡意名單匹配與否來決定是否放行;(2)在避免SYNFLOOD攻擊時需要計算SYN cookie或者使用SYN首包丟棄/SYN proxy技術(shù)并維護大量的連接狀態(tài)表;(3)在HTTP應(yīng)用中,通過封源IP、對源IP限速的方式來解決源IP訪問頻率過快、流量過大、惡意訪問等;(4)通過對爬蟲源IP進行反向DNS查找來辨別google、百度等搜索網(wǎng)站爬蟲的真?zhèn)?,避免爬蟲DDOS攻擊。

在上述DDOS防御過程中,如果有大量偽造源IP攻擊,會導(dǎo)致攻擊流量繞過防御系統(tǒng)或者給防御系統(tǒng)帶來巨大壓力:

(1)偽造源IP如果命中白名單可能會直接穿透DDOS防御系統(tǒng)而不被阻攔;

(2)偽造源IP的攻擊特征是,攻擊報文多,但是屬于同一個源IP/同一個流的報文個數(shù)很少,大部分情況下一個源IP只會有一個報文,使得基于統(tǒng)計,流分析方式的清洗算法不能有效發(fā)揮,清洗效果不理想;

(3)短時間內(nèi)偽造源IP數(shù)量巨大,使得維護源IP統(tǒng)計表/連接狀態(tài)表/計算syn cookie將耗費很多DDOS防御系統(tǒng)的資源。這對防御系統(tǒng)本身帶來挑戰(zhàn)。



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

鑒于上述問題,本發(fā)明提出了一種DDOS防御系統(tǒng)中檢測偽造源IP的方法和裝置,能夠準確地識別偽造源IP。

本發(fā)明實施例中提供了一種DDOS防御系統(tǒng)中檢測偽造源IP的方法,包括:

獲取其中一個待檢測報文的源IP地址和生存時間值,根據(jù)該生存時間值計算該待檢測報文途徑網(wǎng)絡(luò)節(jié)點的跳數(shù);

在本地數(shù)據(jù)表中查詢所述源IP地址對應(yīng)的跳數(shù)集合;

當(dāng)所述跳數(shù)屬于所述跳數(shù)集合,或該跳數(shù)與所述跳數(shù)集合中最大或最小跳數(shù)的差距小于預(yù)設(shè)閾值時,判斷所述待檢測報文為非偽造源IP的攻擊報文,更新所述本地數(shù)據(jù)表;否則,判斷所述待檢測報文為偽造源IP的攻擊報文。

優(yōu)選地,當(dāng)在本地數(shù)據(jù)表中查詢不到所述源IP地址,或查詢到的所述跳數(shù)集合為空集,或跳數(shù)與所述跳數(shù)集合中所述最大或最小跳數(shù)的差距不小于預(yù)設(shè)閾值,或所述源IP地址的反探測次數(shù)少于預(yù)設(shè)置信值時,向所述源IP地址發(fā)送反探測報文;

若收到所述源IP地址對所述反探測報文的響應(yīng)報文,則根據(jù)所述響應(yīng)報文的生存時間值計算反向跳數(shù),并將該反向跳數(shù)添加至所述源IP地址對應(yīng)的跳數(shù)集合之中;

若收不到所述源IP地址對所述反探測報文的響應(yīng)報文,則減少所述本地數(shù)據(jù)表中該源IP地址的可信度。

優(yōu)選地,所述本地數(shù)據(jù)表至少包含由連續(xù)的IP地址組成的IP地址段和該IP地址段對應(yīng)的跳數(shù)集合,在本地數(shù)據(jù)表中查詢所述源IP地址對應(yīng)的跳數(shù)集合的步驟,包括:

在本地數(shù)據(jù)表中以升序或降序?qū)λ鯥P地址段進行排列;

根據(jù)所述源IP地址歸屬的IP地址段,獲取對應(yīng)的跳數(shù)集合。

優(yōu)選地,將該反向跳數(shù)添加至所述源IP地址對應(yīng)的跳數(shù)集合之中的步驟之后,還包括:

根據(jù)所述反向跳數(shù)校驗所述跳數(shù)集合之中的其他跳數(shù);

當(dāng)所述源IP地址的反向跳數(shù)與其所屬的IP地址段對應(yīng)的跳數(shù)集合中其他跳數(shù)的差距不小于預(yù)設(shè)閾值,將該源IP地址從其所屬的IP地址段分離;

當(dāng)所述源IP地址的反向跳數(shù)與其相鄰的IP地址段對應(yīng)的跳數(shù)集合中其他跳數(shù)的差距小于預(yù)設(shè)閾值,將該源IP地址與其相鄰的IP地址段合并。

優(yōu)選地,根據(jù)該生存時間值計算該待檢測報文途徑網(wǎng)絡(luò)節(jié)點的跳數(shù)的步驟,包括:

從報文生存時間的系統(tǒng)初始設(shè)置值當(dāng)中,選取一個大于且最接近所述生存時間值的系統(tǒng)初始設(shè)置值,作為所述待檢測報文的報文初始值;

將所述報文初始值減去所述生存時間值,獲得該待檢測報文途徑網(wǎng)絡(luò)節(jié)點的跳數(shù)。

相應(yīng)地,本發(fā)明實施例提供了一種DDOS防御系統(tǒng)中檢測偽造源IP的裝置,包括:

跳數(shù)計算單元,用于獲取其中一個待檢測報文的源IP地址和生存時間值,根據(jù)該生存時間值計算該待檢測報文途徑網(wǎng)絡(luò)節(jié)點的跳數(shù);

數(shù)據(jù)查詢單元,用于在本地數(shù)據(jù)表中查詢所述源IP地址對應(yīng)的跳數(shù)集合;

數(shù)據(jù)更新單元,用于當(dāng)所述跳數(shù)屬于所述跳數(shù)集合或該跳數(shù)與所述跳數(shù)集合中最大或最小跳數(shù)的差距小于預(yù)設(shè)閾值時,判斷所述待檢測報文為非偽造源IP的攻擊報文,更新所述本地數(shù)據(jù)表;否則,判斷所述待檢測報文為偽造源IP的攻擊報文。

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

所述反向探測單元,用于當(dāng)在本地數(shù)據(jù)表中查詢不到所述源IP地址,或查詢到的所述跳數(shù)集合為空集,或跳數(shù)與所述跳數(shù)集合中所述最大或最小跳數(shù)的差距不小于預(yù)設(shè)閾值,或所述源IP地址的反探測次數(shù)少于預(yù)設(shè)置信值時,向所述源IP地址發(fā)送反探測報文;

所述反向探測單元還與所述跳數(shù)計算單元相連,所述跳數(shù)計算單元還用于若收到所述源IP地址對所述反探測報文的響應(yīng)報文,則根據(jù)所述響應(yīng)報文的生存時間值計算反向跳數(shù);所述數(shù)據(jù)更新單元,還用于將該反向跳數(shù)添加至所述源IP地址對應(yīng)的跳數(shù)集合之中;

所述反向探測單元還與所述數(shù)據(jù)更新單元相連,所述數(shù)據(jù)更新單元還用于若收不到所述源IP地址對所述反探測報文的響應(yīng)報文,則減少所述本地數(shù)據(jù)表中該源IP地址的可信度。

優(yōu)選地,所述本地數(shù)據(jù)表至少包含由連續(xù)的IP地址組成的IP地址段和該IP地址段對應(yīng)的跳數(shù)集合,所述數(shù)據(jù)查詢單元,包括:

IP段排列單元,用于在本地數(shù)據(jù)表中以升序或降序?qū)λ鯥P地址段進行排列;

歸屬查詢單元,用于根據(jù)所述源IP地址歸屬的IP地址段,獲取對應(yīng)的跳數(shù)集合;

IP段校驗單元,用于根據(jù)所述反向跳數(shù)校驗所述跳數(shù)集合之中的其他跳數(shù);當(dāng)所述源IP地址的反向跳數(shù)與其所屬的IP地址段對應(yīng)的跳數(shù)集合中其他跳數(shù)的差距不小于預(yù)設(shè)閾值,將該源IP地址從其所屬的IP地址段分離;當(dāng)所述源IP地址的反向跳數(shù)與其相鄰的IP地址段對應(yīng)的跳數(shù)集合中其他跳數(shù)的差距小于預(yù)設(shè)閾值,將該源IP地址與其相鄰的IP地址段合并。

優(yōu)選地,所述跳數(shù)計算單元,包括:

初值估算單元,用于從報文生存時間的系統(tǒng)初始設(shè)置值當(dāng)中,選取一個大于且最接近所述生存時間值的系統(tǒng)初始設(shè)置值,作為所述待檢測報文的報文初始值;

跳數(shù)推測單元,用于將所述報文初始值減去所述生存時間值,獲得該待檢測報文途徑網(wǎng)絡(luò)節(jié)點的跳數(shù)。

相應(yīng)地,本發(fā)明實施例提供了一種DDOS防御系統(tǒng),包括:交換機、清洗設(shè)備和檢測設(shè)備;其中,所述檢測設(shè)備包含如前述的DDOS防御系統(tǒng)中檢測偽造源IP的裝置,所述清洗設(shè)備用于清洗偽造源IP;其中,所述交換機與目標(biāo)服務(wù)器相連,用于轉(zhuǎn)發(fā)訪問地址為目標(biāo)服務(wù)器的報文;所述清洗設(shè)備與所述交換機并聯(lián),用于分流訪問地址為目標(biāo)服務(wù)器的報文;所述檢測設(shè)備連接在所述交換機與所述清洗設(shè)備之間,用于檢測訪問地址為目標(biāo)服務(wù)器的報文,生成本地數(shù)據(jù)表,以供所述清洗設(shè)備。

相對于現(xiàn)有技術(shù),本發(fā)明提供的方案,首先,獲取其中一個待檢測報文的源IP地址和生存時間值TTL,根據(jù)該生存時間值TTL計算該待檢測報文途徑網(wǎng)絡(luò)節(jié)點的跳數(shù)。基于IP報文頭部中的生存時間值TTL來檢測偽造源IP,其原理是,有線網(wǎng)絡(luò)拓撲、核心網(wǎng)絡(luò)節(jié)點和主機位置相對穩(wěn)定,報文所經(jīng)過的跳數(shù)(由生存時間值TTL體現(xiàn))在本質(zhì)上反映網(wǎng)絡(luò)通信各節(jié)點之間的相對邏輯位置關(guān)系,因此跳數(shù)、源IP地址的節(jié)點和目標(biāo)服務(wù)器節(jié)點三者強相關(guān),在一定時間內(nèi)報文的跳數(shù)趨于穩(wěn)定且不存在線性規(guī)律。攻擊者偽造源IP容易,但是要得到偽造攻擊源IP和攻擊目標(biāo)服務(wù)器之間的網(wǎng)絡(luò)拓撲關(guān)系就很難,尤其是要得到大量的攻擊源IP和攻擊目標(biāo)服務(wù)器之間的網(wǎng)絡(luò)拓撲是幾乎不可能的。故此,在存儲有IP地址和相應(yīng)跳數(shù)的本地數(shù)據(jù)表中查詢所述源IP地址對應(yīng)的跳數(shù)集合;當(dāng)所述跳數(shù)屬于所述跳數(shù)集合或該跳數(shù)與所述跳數(shù)集合中最大或最小跳數(shù)的差距小于預(yù)設(shè)閾值時,判斷所述待檢測報文為非偽造源IP的攻擊報文,更新所述本地數(shù)據(jù)表;否則,判斷所述待檢測報文為偽造源IP的攻擊報文。當(dāng)所述跳數(shù)屬于所述跳數(shù)集合,可以增加所述跳數(shù)在所述跳數(shù)集合中的出現(xiàn)概率,以此更新本地數(shù)據(jù)表,提高本地數(shù)據(jù)表的準確性。所述跳數(shù)集合中最大或最小跳數(shù)的差距小于預(yù)設(shè)閾值時,說明該跳數(shù)集合還是在準確范圍之內(nèi),因為報文在途徑網(wǎng)絡(luò)節(jié)點時,有個別網(wǎng)絡(luò)節(jié)點出現(xiàn)故障或關(guān)閉,以此更新本地數(shù)據(jù)表,將所述跳數(shù)添加至所述跳數(shù)集合之中,提高本地數(shù)據(jù)表的準確性。本發(fā)明中基于源IP地址和跳數(shù)集合的方式來識別源IP是否偽造,而不是單純的基于源IP和TTL的配對方式。另外,本發(fā)明中源IP地址及對應(yīng)的跳數(shù)集合是通過學(xué)習(xí)訓(xùn)練來實現(xiàn)并不斷完善的,充分利用了IP地址屬性特征和人工智能思維,而不是單純的需要時才檢測,因此,本發(fā)明能夠準確地識別偽造源IP。

本發(fā)明附加的方面和優(yōu)點將在下面的描述中部分給出,這些將從下面的描述中變得明顯,或通過本發(fā)明的實踐了解到。

附圖說明

為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1為本發(fā)明一種DDOS防御系統(tǒng)中檢測偽造源IP的方法的流程圖。

圖2為本發(fā)明一種DDOS防御系統(tǒng)中檢測偽造源IP的方法的實施例流程圖。

圖3為本發(fā)明一種DDOS防御系統(tǒng)中檢測偽造源IP的裝置的示意圖。

圖4為本發(fā)明一種DDOS防御系統(tǒng)中檢測偽造源IP的裝置的實施例示意圖。

圖5為本發(fā)明一種DDOS防御系統(tǒng)的示意圖。

具體實施方式

為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述。

在本發(fā)明的說明書和權(quán)利要求書及上述附圖中的描述的一些流程中,包含了按照特定順序出現(xiàn)的多個操作,但是應(yīng)該清楚了解,這些操作可以不按照其在本文中出現(xiàn)的順序來執(zhí)行或并行執(zhí)行,操作的序號如101、102等,僅僅是用于區(qū)分開各個不同的操作,序號本身不代表任何的執(zhí)行順序。另外,這些流程可以包括更多或更少的操作,并且這些操作可以按順序執(zhí)行或并行執(zhí)行。需要說明的是,本文中的“第一”、“第二”等描述,是用于區(qū)分不同的消息、設(shè)備、模塊等,不代表先后順序,也不限定“第一”和“第二”是不同的類型。

下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。

圖1為本發(fā)明一種DDOS防御系統(tǒng)中檢測偽造源IP的方法的流程圖,包括:

S101:獲取其中一個待檢測報文的源IP地址和生存時間值,根據(jù)該生存時間值計算該待檢測報文途徑網(wǎng)絡(luò)節(jié)點的跳數(shù);

S102:在本地數(shù)據(jù)表中查詢所述源IP地址對應(yīng)的跳數(shù)集合;

S103-1:當(dāng)所述跳數(shù)屬于所述跳數(shù)集合或該跳數(shù)與所述跳數(shù)集合中最大或最小跳數(shù)的差距小于預(yù)設(shè)閾值時,判斷所述待檢測報文為非偽造源IP的攻擊報文,更新所述本地數(shù)據(jù)表;

S103-2:否則,判斷所述待檢測報文為偽造源IP的攻擊報文。

相對于現(xiàn)有技術(shù),本發(fā)明提供的方案,首先,獲取其中一個待檢測報文的源IP地址和生存時間值TTL,根據(jù)該生存時間值TTL計算該待檢測報文途徑網(wǎng)絡(luò)節(jié)點的跳數(shù)?;贗P報文頭部中的生存時間值TTL來檢測偽造源IP,其原理是,有線網(wǎng)絡(luò)拓撲、核心網(wǎng)絡(luò)節(jié)點和主機位置相對穩(wěn)定,報文所經(jīng)過的跳數(shù)(由生存時間值TTL體現(xiàn))在本質(zhì)上反映網(wǎng)絡(luò)通信各節(jié)點之間的相對邏輯位置關(guān)系,因此跳數(shù)、源IP地址的節(jié)點和目標(biāo)服務(wù)器節(jié)點三者強相關(guān),在一定時間內(nèi)報文的跳數(shù)趨于穩(wěn)定且不存在線性規(guī)律。攻擊者偽造源IP容易,但是要得到偽造攻擊源IP和攻擊目標(biāo)服務(wù)器之間的網(wǎng)絡(luò)拓撲關(guān)系就很難,尤其是要得到大量的攻擊源IP和攻擊目標(biāo)服務(wù)器之間的網(wǎng)絡(luò)拓撲是幾乎不可能的。故此,在存儲有IP地址和相應(yīng)跳數(shù)的本地數(shù)據(jù)表中查詢所述源IP地址對應(yīng)的跳數(shù)集合;當(dāng)所述跳數(shù)屬于所述跳數(shù)集合或該跳數(shù)與所述跳數(shù)集合中最大或最小跳數(shù)的差距小于預(yù)設(shè)閾值時,判斷所述待檢測報文為非偽造源IP的攻擊報文,更新所述本地數(shù)據(jù)表;否則,判斷所述待檢測報文為偽造源IP的攻擊報文。當(dāng)所述跳數(shù)屬于所述跳數(shù)集合,可以增加所述跳數(shù)在所述跳數(shù)集合中的出現(xiàn)概率,以此更新本地數(shù)據(jù)表,提高本地數(shù)據(jù)表的準確性。所述跳數(shù)集合中最大或最小跳數(shù)的差距小于預(yù)設(shè)閾值時,說明該跳數(shù)集合還是在準確范圍之內(nèi),因為報文在途徑網(wǎng)絡(luò)節(jié)點時,有個別網(wǎng)絡(luò)節(jié)點出現(xiàn)故障或關(guān)閉,以此更新本地數(shù)據(jù)表,將所述跳數(shù)添加至所述跳數(shù)集合之中,提高本地數(shù)據(jù)表的準確性。

例如,在IPv4中,TTL(Time To Live,生存時間)是一個8個二進制位的IP協(xié)議的一個header。這個值可以被認為是數(shù)據(jù)包在internet系統(tǒng)中可以跳躍的次數(shù)上限。主流操作系統(tǒng)TTL初始值有32,64,128,255,且一般通信過程跳數(shù)不超過30跳。TTL是由數(shù)據(jù)包的發(fā)送者設(shè)置的,在前往目的地的過程中,每經(jīng)過一臺主機或設(shè)備,這個值就要減少一點。如果在數(shù)據(jù)包到達目的地前,TTL值被減到了0,那么這個包將作為一個ICMP錯誤的數(shù)據(jù)包被丟棄。

本發(fā)明技術(shù)方案的基本工作原理是,由于DDOS防御系統(tǒng)通常位于被保護機房的入口位置,因此可以學(xué)習(xí)和探測所有可能的源IP發(fā)出的報文在到達該目標(biāo)服務(wù)器時的跳數(shù)集合并形成本地數(shù)據(jù)表。當(dāng)攻擊可能發(fā)生時,通過對比每個IP所攜帶的報文跳數(shù)與本地數(shù)據(jù)表中記錄的該IP到達該目標(biāo)服務(wù)器所需要的跳數(shù)集合,當(dāng)誤差超過設(shè)置閥值后,即判定該報文攜帶偽造源IP,直接丟棄。因為攻擊者不知道其隨機設(shè)定的攻擊源IP真實位置到目標(biāo)服務(wù)器之間的確切跳數(shù),本方案可以通過反向探測或主動學(xué)習(xí)的方式獲得兩者之間的確切實跳數(shù),當(dāng)與根據(jù)待檢測報文計算出來的跳數(shù)不一致時,判定為攻擊報文,丟棄該報文。

本發(fā)明中基于上述源IP地址和跳數(shù)集合的方式來識別源IP是否偽造,而不是單純的基于源IP和TTL的配對方式。另外,本發(fā)明中源IP地址及對應(yīng)的跳數(shù)集合是通過學(xué)習(xí)訓(xùn)練來實現(xiàn)并不斷完善的,充分利用了IP地址屬性特征和人工智能思維,而不是單純的需要時才檢測,因此,本發(fā)明能夠準確地識別偽造源IP。

圖2為本發(fā)明一種DDOS防御系統(tǒng)中檢測偽造源IP的方法的實施例流程圖。

S201:獲取其中一個待檢測報文的源IP地址和生存時間值,根據(jù)該生存時間值計算該待檢測報文途徑網(wǎng)絡(luò)節(jié)點的跳數(shù);

S202:在本地數(shù)據(jù)表中查詢所述源IP地址對應(yīng)的跳數(shù)集合;

S203-1:當(dāng)所述跳數(shù)屬于所述跳數(shù)集合或該跳數(shù)與所述跳數(shù)集合中最大或最小跳數(shù)的差距小于預(yù)設(shè)閾值時,判斷所述待檢測報文為非偽造源IP的攻擊報文,更新所述本地數(shù)據(jù)表;

S203-2:否則,判斷所述待檢測報文為偽造源IP的攻擊報文。

S204:當(dāng)在本地數(shù)據(jù)表中查詢不到所述源IP地址,或查詢到的所述跳數(shù)集合為空集,或跳數(shù)與所述跳數(shù)集合中所述最大或最小跳數(shù)的差距不小于預(yù)設(shè)閾值,或所述源IP地址的反探測次數(shù)少于預(yù)設(shè)置信值時,向所述源IP地址發(fā)送反探測報文;

S205:若收到所述源IP地址對所述反探測報文的響應(yīng)報文,則根據(jù)所述響應(yīng)報文的生存時間值計算反向跳數(shù),并將該反向跳數(shù)添加至所述源IP地址對應(yīng)的跳數(shù)集合之中;

S206:若收不到所述源IP地址對所述反探測報文的響應(yīng)報文,則減少所述本地數(shù)據(jù)表中該源IP地址的可信度。

通過上述反向探測,可以不斷地訓(xùn)練跳數(shù)集合,進一步提高篩查待檢測報文的準確度。優(yōu)選地,本地數(shù)據(jù)表內(nèi)存儲的跳數(shù)集合如下表所示:

例如待檢測報文的源IP為IP1時,當(dāng)待檢測報文的跳數(shù)屬于所述跳數(shù)集合,例如為14步,且判定所述待檢測報文符合所述目標(biāo)服務(wù)器預(yù)設(shè)的篩查條件時,例如目標(biāo)服務(wù)器自身的篩查黑名單當(dāng)中并沒有包含該待檢測報文的源IP,此時,可以將該待檢測報文轉(zhuǎn)發(fā)到所述目標(biāo)服務(wù)器。

例如待檢測報文的源IP為IP5時,當(dāng)在本地數(shù)據(jù)表中查詢不到所述源IP地址,或查詢到的所述跳數(shù)集合為空集時,向所述源IP地址發(fā)送反探測報文。

例如待檢測報文的源IP為IP1時,向所述源IP地址發(fā)送反探測報文。若收到所述源IP地址對所述反探測報文的響應(yīng)報文,則根據(jù)所述響應(yīng)報文的生存時間值計算跳數(shù),例如根據(jù)響應(yīng)報文計算的跳數(shù)為13,將該跳數(shù)添加至所述源IP地址對應(yīng)的跳數(shù)集合之中,以備下一個待檢測報文的查詢。通過對1000個待檢測報文的計算學(xué)習(xí),獲知這1000個報文當(dāng)中,跳數(shù)與概率分布為(15,80%),(14,5%),(13,5%)。而通過發(fā)送10個反探測報文,也獲得15,14等跳數(shù)。可知IP1的跳數(shù)集合是比較準確的,其可信度設(shè)置為1??尚哦纫部梢宰鳛樗瞿繕?biāo)服務(wù)器預(yù)設(shè)的篩查條件之一,當(dāng)流量接近目標(biāo)服務(wù)器所能承受的界限時,可以將篩查條件設(shè)置為僅允許可信度為1的待檢測報文進入目標(biāo)服務(wù)器。

例如待檢測報文的源IP為IP2時,向所述源IP地址發(fā)送反探測報文。若收不到所述源IP地址對所述反探測報文的響應(yīng)報文,則將所述待檢測報文途徑網(wǎng)絡(luò)節(jié)點的跳數(shù),添加至所述源IP地址對應(yīng)的跳數(shù)集合之中,以備下一個待檢測報文的查詢。通過對17個待檢測報文的學(xué)習(xí),獲知(17,80%),(18,20%)的跳數(shù)集合。但是,發(fā)送1個反探測報文后,并沒收到任何的響應(yīng)報文,此時設(shè)置該跳數(shù)集合的可信度為0.5。

例如待檢測報文的源IP為IP3時,計算獲得的跳數(shù)為23步,閾值設(shè)置為3,置信值設(shè)置為5次,跳數(shù)23步與所述(17,80%),(18,20%)跳數(shù)集合中所述最大跳數(shù)18的差距不小于預(yù)設(shè)閾值3,或所述源IP地址的反探測次數(shù)1少于預(yù)設(shè)置信值5次時,向所述源IP地址發(fā)送反探測報文。若收到所述源IP3地址對所述反探測報文的響應(yīng)報文,則根據(jù)所述響應(yīng)報文的生存時間值計算反向跳數(shù),若反向跳數(shù)為19,將該反向跳數(shù)19添加至所述源IP地址對應(yīng)的跳數(shù)集合之中,例如,將跳數(shù)集合調(diào)整為(17,80%),(18,18%)(19,2%)。

為了進一步快速的查詢源IP地址,所述本地數(shù)據(jù)表至少包含由連續(xù)的IP地址組成的IP地址段和該IP地址段對應(yīng)的跳數(shù)集合,在本地數(shù)據(jù)表中查詢所述源IP地址對應(yīng)的跳數(shù)集合的步驟,包括:

在本地數(shù)據(jù)表中以升序或降序?qū)λ鯥P地址段進行排列;

根據(jù)所述源IP地址歸屬的IP地址段,獲取對應(yīng)的跳數(shù)集合。

源IP理論上有大約40億個,如果直接描述源IP與跳數(shù)或者IP與TTL關(guān)系,數(shù)據(jù)量巨大,不能直接加載進內(nèi)存,不僅查找和比對速度慢,而且需要反向探測的源IP數(shù)量也很多,工程實現(xiàn)上不可取。經(jīng)過對IP庫源IP分析及其跳數(shù)探測發(fā)現(xiàn),歸屬于統(tǒng)一地區(qū)和運營商的IP通常是連續(xù)的,這些連續(xù)的源IP到同一個目的服務(wù)器的跳數(shù)通常是相對固定的。因此,在本發(fā)明中,不直接記錄源IP與跳數(shù)關(guān)系,也不是記錄IP和TTL關(guān)系,而是記錄源IP段與跳數(shù)的關(guān)系。一個IP段是IP庫中地區(qū)和運營商相同的IP聚合,在后續(xù)學(xué)習(xí)和探測過程中也會根據(jù)實際探測信息對IP段進行某些拆分,以描述特殊的IP地址或IP地址段的跳數(shù)信息.

在第一優(yōu)選實施例當(dāng)中,從運營商獲知的IP地址段119.33.110.01至119.33.180.33,其跳數(shù)應(yīng)為18步,但通過反向探測,獲知其中的IP地址段119.33.180.5至119.33.180.12的跳數(shù)為20,則可以將本地數(shù)據(jù)表中跳數(shù)集合(119.33.110.01-119.33.180.33,18)一項拆分為(119.33.110.01-119.33.180.4,18),(119.33.180.5-119.33.180.12,20),(119.33.180.13-119.33.180.33,18)等三項。當(dāng)源IP為119.33.120.11時,通過大小比對,可以快速地查詢其所屬的IP地址段為119.33.110.01-119.33.180.4,則獲取對應(yīng)的跳數(shù)集合中的跳數(shù)為18。

為了便于與跳數(shù)集合的跳數(shù)進行比對,將該反向跳數(shù)添加至所述源IP地址對應(yīng)的跳數(shù)集合之中的步驟之后,還包括:

根據(jù)所述反向跳數(shù)校驗所述跳數(shù)集合之中的其他跳數(shù);

當(dāng)所述源IP地址的反向跳數(shù)與其所屬的IP地址段對應(yīng)的跳數(shù)集合中其他跳數(shù)的差距不小于預(yù)設(shè)閾值,將該源IP地址從其所屬的IP地址段分離;

當(dāng)所述源IP地址的反向跳數(shù)與其相鄰的IP地址段對應(yīng)的跳數(shù)集合中其他跳數(shù)的差距小于預(yù)設(shè)閾值,將該源IP地址與其相鄰的IP地址段合并。

在第二優(yōu)選實施例當(dāng)中,接前述第一優(yōu)選實施例所述,如果反向跳數(shù)的差距的預(yù)設(shè)閾值為2,則將本地數(shù)據(jù)表中跳數(shù)集合(119.33.110.01-119.33.180.33,18)一項拆分為(119.33.110.01-119.33.180.4,18),(119.33.180.5-119.33.180.12,20),(119.33.180.13-119.33.180.33,18)等三項。如果反向跳數(shù)的差距的預(yù)設(shè)閾值為1,則將本地數(shù)據(jù)表中跳數(shù)集合(119.33.110.01-119.33.180.4,18),(119.33.180.5-119.33.180.12,20),(119.33.180.13-119.33.180.33,18)等三項合并為(119.33.110.01-119.33.180.33,18/20)一項。

為了進一步準確獲得報文跳數(shù),根據(jù)該生存時間值計算該待檢測報文途徑網(wǎng)絡(luò)節(jié)點的跳數(shù)的步驟,包括:

從報文生存時間的系統(tǒng)初始設(shè)置值當(dāng)中,選取一個大于且最接近所述生存時間值的系統(tǒng)初始設(shè)置值,作為所述待檢測報文的報文初始值;

將所述報文初始值減去所述生存時間值,獲得該待檢測報文途徑網(wǎng)絡(luò)節(jié)點的跳數(shù)。

需要補充說明的是,一般而言,在本地數(shù)據(jù)表中所述源IP地址對應(yīng)的跳數(shù)集合當(dāng)中,如果包含的是源IP與目標(biāo)服務(wù)器之間的跳數(shù),則上述優(yōu)選的跳數(shù)計算方式只是自源IP地址到截獲該報文的網(wǎng)絡(luò)節(jié)點之間的跳數(shù),因為為避免對目標(biāo)服務(wù)器的沖擊,上述計算必定發(fā)生在報文到達目標(biāo)服務(wù)器之前。所以,此時還需考慮截獲該報文的網(wǎng)絡(luò)節(jié)點與目標(biāo)服務(wù)器之間的跳數(shù),如果截獲該報文的網(wǎng)絡(luò)節(jié)點發(fā)生在目標(biāo)服務(wù)器的入口交換機一級,在入口交換機一級與目標(biāo)服務(wù)器之間相差一步跳數(shù)。

圖3為本發(fā)明一種DDOS防御系統(tǒng)中檢測偽造源IP的裝置的示意圖,包括:

跳數(shù)計算單元,用于獲取其中一個待檢測報文的源IP地址和生存時間值,根據(jù)該生存時間值計算該待檢測報文途徑網(wǎng)絡(luò)節(jié)點的跳數(shù);

數(shù)據(jù)查詢單元,用于在本地數(shù)據(jù)表中查詢所述源IP地址對應(yīng)的跳數(shù)集合;

數(shù)據(jù)更新單元,用于當(dāng)所述跳數(shù)屬于所述跳數(shù)集合或該跳數(shù)與所述跳數(shù)集合中最大或最小跳數(shù)的差距小于預(yù)設(shè)閾值時,判斷所述待檢測報文為非偽造源IP的攻擊報文,更新所述本地數(shù)據(jù)表;否則,判斷所述待檢測報文為偽造源IP的攻擊報文。

圖3與圖1相對應(yīng),圖中各單元的運行方式與方法中的相同。

圖4為本發(fā)明一種DDOS防御系統(tǒng)中檢測偽造源IP的裝置的實施例示意圖。

如圖4所示,還包括:

所述反向探測單元,用于當(dāng)在本地數(shù)據(jù)表中查詢不到所述源IP地址,或查詢到的所述跳數(shù)集合為空集,或跳數(shù)與所述跳數(shù)集合中所述最大或最小跳數(shù)的差距不小于預(yù)設(shè)閾值,或所述源IP地址的反探測次數(shù)少于預(yù)設(shè)置信值時,向所述源IP地址發(fā)送反探測報文;

所述反向探測單元還與所述跳數(shù)計算單元相連,所述跳數(shù)計算單元還用于若收到所述源IP地址對所述反探測報文的響應(yīng)報文,則根據(jù)所述響應(yīng)報文的生存時間值計算反向跳數(shù);所述數(shù)據(jù)更新單元,還用于將該反向跳數(shù)添加至所述源IP地址對應(yīng)的跳數(shù)集合之中;

所述反向探測單元還與所述數(shù)據(jù)更新單元相連,所述數(shù)據(jù)更新單元還用于若收不到所述源IP地址對所述反探測報文的響應(yīng)報文,則減少所述本地數(shù)據(jù)表中該源IP地址的可信度。

圖4與圖2相對應(yīng),圖中各單元的運行方式與方法中的相同。

優(yōu)選地,所述本地數(shù)據(jù)表至少包含由連續(xù)的IP地址組成的IP地址段和該IP地址段對應(yīng)的跳數(shù)集合,所述數(shù)據(jù)查詢單元,包括:

IP段排列單元,用于在本地數(shù)據(jù)表中以升序或降序?qū)λ鯥P地址段進行排列;

歸屬查詢單元,用于根據(jù)所述源IP地址歸屬的IP地址段,獲取對應(yīng)的跳數(shù)集合;

IP段校驗單元,用于根據(jù)所述反向跳數(shù)校驗所述跳數(shù)集合之中的其他跳數(shù);當(dāng)所述源IP地址的反向跳數(shù)與其所屬的IP地址段對應(yīng)的跳數(shù)集合中其他跳數(shù)的差距不小于預(yù)設(shè)閾值,將該源IP地址從其所屬的IP地址段分離;當(dāng)所述源IP地址的反向跳數(shù)與其相鄰的IP地址段對應(yīng)的跳數(shù)集合中其他跳數(shù)的差距小于預(yù)設(shè)閾值,將該源IP地址與其相鄰的IP地址段合并。

優(yōu)選地,所述跳數(shù)計算單元,包括:

初值估算單元,用于從報文生存時間的系統(tǒng)初始設(shè)置值當(dāng)中,選取一個大于且最接近所述生存時間值的系統(tǒng)初始設(shè)置值,作為所述待檢測報文的報文初始值;

跳數(shù)推測單元,用于將所述報文初始值減去所述生存時間值,獲得該待檢測報文途徑網(wǎng)絡(luò)節(jié)點的跳數(shù)。

圖5為本發(fā)明一種DDOS防御系統(tǒng)的示意圖,包括:交換機、清洗設(shè)備和檢測設(shè)備;其中,所述檢測設(shè)備包含如前述的DDOS防御系統(tǒng)中檢測偽造源IP的裝置,所述清洗設(shè)備用于清洗偽造源IP;其中,所述交換機與目標(biāo)服務(wù)器相連,用于轉(zhuǎn)發(fā)訪問地址為目標(biāo)服務(wù)器的報文;所述清洗設(shè)備與所述交換機并聯(lián),用于分流訪問地址為目標(biāo)服務(wù)器的報文;所述檢測設(shè)備連接在所述交換機與所述清洗設(shè)備之間,用于檢測訪問地址為目標(biāo)服務(wù)器的報文,生成本地數(shù)據(jù)表,以供所述清洗設(shè)備。

具體處理過程是:

<1>檢測設(shè)備在判定沒有攻擊發(fā)生時,啟動(IP段,跳數(shù))的學(xué)習(xí)和探測邏輯;

<2>對鏡像過來的每個報文,進行分析,如果報文無異常,進入學(xué)習(xí)過程;如果報文有特殊協(xié)議指紋,則該次學(xué)習(xí)的可信度會更高;其中,特殊協(xié)議指紋是指由正版軟件的軟件商服務(wù)器所發(fā)出的報文。

<3>學(xué)習(xí)過程首先提取每個報文的源IP和TTL;然后根據(jù)TTL估算跳數(shù),主流操作系統(tǒng)TTL初始值有32,64,128,255,且一般通信過程跳數(shù)不超過30跳,所以根據(jù)當(dāng)前TTL向上就近推測出初始TTL,初始TTL減去當(dāng)前TTL即得到源IP到達目標(biāo)服務(wù)器A的跳數(shù)D1;

<4>利用源IP去查詢本地數(shù)據(jù)表,得到其所屬的IP段,跳數(shù)集合,學(xué)習(xí)和探測信息,可信度等信息。并將跳數(shù)D1與本地數(shù)據(jù)表中的跳數(shù)集合進行比對處理;當(dāng)然,如果之前沒有學(xué)習(xí)和探測過,該記錄為空;

<5>根據(jù)已經(jīng)學(xué)習(xí)和探測的次數(shù)情況,可信度,跳數(shù)比對情況和預(yù)配置策略,決定是否需要繼續(xù)探測;如果能夠判定此次數(shù)據(jù)明顯錯誤,則丟棄不予處理;如果判定此次數(shù)據(jù)為有效,則跳到<10>,更新本地數(shù)據(jù)表;如果需要繼續(xù)探測,則向探測模塊提交探測任務(wù);

<6>探測模塊根據(jù)提交的源IP,以及端口等信息向源IP發(fā)起ping或者tcpsyn反探測報文;

<7>如果源IP響應(yīng)了反探測報文,可以得到響應(yīng)報文,計算源IP到達檢測設(shè)備的跳數(shù)為D2;

<8>比較D1和D2,如果D1和D2的偏差為1,則認為D1有效;如果D1和D2誤差偏大,則需要參考檢測設(shè)備IP和目標(biāo)服務(wù)器A的網(wǎng)絡(luò)差異(是否跨運營商)來修正,根據(jù)修正結(jié)果來判定D1是否有效;如果判定D1有效,則跳到<10>更新本地數(shù)據(jù)表,否則丟棄不予處理;

<9>如果源IP不響應(yīng)探測流量,也會跳到<10>更新本地數(shù)據(jù)表,區(qū)別是可信度會比較低,經(jīng)過多次有效學(xué)習(xí)后(比如帶有特殊協(xié)議指紋)才會不斷提到其可信度;

<10>更新本地數(shù)據(jù)表記錄,修改學(xué)習(xí)和探測次數(shù),修改可信度,優(yōu)化跳數(shù)集合及其概率分布。如果該IP明顯區(qū)別于該IP段中其他IP,則把該IP拆分出來單獨記錄。

<11>探測時,不論源IP是否反饋響應(yīng)報文,均會根據(jù)本地數(shù)據(jù)表中記錄的學(xué)習(xí)情況、配置策略以及探測模塊的負載來決定是否選擇一些與該源IP相鄰的IP作為探測對象,重復(fù)<6>中過程。

<12>總之,學(xué)習(xí)和探測過程是一個擇優(yōu)、驗證、迭代的人工智能過程,隨著程序運行,記錄的結(jié)果就會越多越準確。

對于清洗處理過程:

<1>清洗時,首先根據(jù)報文中攜帶的TTL值推測出跳數(shù);

<2>然后利用源IP查詢本地數(shù)據(jù)表得到所歸屬的IP段及其跳數(shù)集合分布,可信度等信息;

<3>根據(jù)查找信息來判斷該源IP是否是確定的偽造源IP或真實源IP。

本技術(shù)方案帶來的有益效果是,有效的防止偽造源IP的DDOS攻擊方式,以及偽造源攻擊時DDOS防御可能不能有效工作的情況。

所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統(tǒng),裝置和單元的具體工作過程,可以參考前述方法實施例中的對應(yīng)過程,在此不再贅述。

以上所述實施例僅表達了本發(fā)明的幾種實施方式,其描述較為具體和詳細,但并不能因此而理解為對本發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進,這些都屬于本發(fā)明的保護范圍。因此,本發(fā)明專利的保護范圍應(yīng)以所附權(quán)利要求為準。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
榆社县| 敦化市| 江川县| 浦县| 潮安县| 安图县| 敦煌市| 高雄市| 温宿县| 鱼台县| 桃园县| 上栗县| 武平县| 时尚| 临泉县| 平顺县| 罗平县| 磐安县| 广南县| 大石桥市| 钟山县| 青铜峡市| 凤阳县| 惠安县| 保靖县| 宾川县| 白朗县| 卓资县| 石狮市| 油尖旺区| 乌什县| 林芝县| 同仁县| 德钦县| 德兴市| 原平市| 寻甸| 通州市| 津市市| 新郑市| 华阴市|