專(zhuān)利名稱(chēng):一種防止網(wǎng)絡(luò)消息攻擊的方法及設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)安全技術(shù),尤其涉及一種防止快速大流量網(wǎng)絡(luò)消息攻擊的方法及設(shè)備。
背景技術(shù):
以太網(wǎng)是一種標(biāo)準(zhǔn)開(kāi)發(fā)、高性能、低價(jià)格、眾多廠商支持的LAN(局域網(wǎng))技術(shù),是LAN網(wǎng)絡(luò)中最常用的組網(wǎng)技術(shù)。以太網(wǎng)是一種廣播網(wǎng)絡(luò),ARP(地址解析協(xié)議)是以太網(wǎng)上數(shù)據(jù)交互的重要協(xié)議,大部分的以太網(wǎng)數(shù)據(jù)交換都是伴隨著ARP報(bào)文開(kāi)始的。ARP請(qǐng)求(Request)報(bào)文在以太網(wǎng)的同一網(wǎng)段內(nèi)以廣播的方式查詢某個(gè)IP地址對(duì)應(yīng)的MAC地址,并根據(jù)這個(gè)IP地址對(duì)應(yīng)的設(shè)備回應(yīng)的響應(yīng)(Reply)報(bào)文學(xué)習(xí)三層IP地址與二層MAC地址的對(duì)應(yīng)關(guān)系,以實(shí)現(xiàn)兩者之間的動(dòng)態(tài)映射。ARP協(xié)議是任何以太網(wǎng)設(shè)備都支持的協(xié)議。
運(yùn)行在二層以太網(wǎng)絡(luò)上的ARP協(xié)議是一個(gè)開(kāi)放的協(xié)議,開(kāi)放性導(dǎo)致以太網(wǎng)是一個(gè)脆弱的網(wǎng)絡(luò)。隨著以太城域網(wǎng)的迅猛發(fā)展,大量的個(gè)人用戶通過(guò)以太網(wǎng)接入Internet。隨之而來(lái)的,網(wǎng)絡(luò)上通過(guò)ARP報(bào)文和網(wǎng)段掃描攻擊的黑客和病毒多起來(lái),能夠防范這些攻擊就成為運(yùn)營(yíng)商和企業(yè)網(wǎng)用戶非常重視的功能。
ARP報(bào)文比較簡(jiǎn)單,構(gòu)造也比較容易,網(wǎng)絡(luò)黑客可以通過(guò)ARP報(bào)文發(fā)送工具(報(bào)文發(fā)送工具比較容易獲取)快速向設(shè)備發(fā)送大流量的ARP報(bào)文,這些ARP報(bào)文或者其目的IP地址為網(wǎng)關(guān)IP地址,或者這些ARP報(bào)文是由源目的IP地址變換而來(lái)的。對(duì)于接收?qǐng)?bào)文的路由器或者三層交換機(jī),ARP報(bào)文的處理往往是通過(guò)CPU而不是轉(zhuǎn)發(fā)引擎進(jìn)行處理的。對(duì)于這些集中式設(shè)備,CPU處理能力往往不強(qiáng),大量的攻擊報(bào)文會(huì)導(dǎo)致CPU繁忙而不能正常處理其他協(xié)議報(bào)文從而引起網(wǎng)絡(luò)異常;而對(duì)于分布式設(shè)備,接口板上的轉(zhuǎn)發(fā)引擎能力較強(qiáng),會(huì)把這些ARP報(bào)文上送到接口板或者是主控板上的CPU進(jìn)行處理,同樣會(huì)引起這些CPU繁忙而不能正常處理其他協(xié)議報(bào)文。除了上述的ARP報(bào)文攻擊之外,還有類(lèi)似的網(wǎng)段掃描攻擊(比如說(shuō)沖擊波病毒),這一類(lèi)攻擊往往不是通過(guò)ARP報(bào)文產(chǎn)生的,而是通過(guò)遍歷網(wǎng)段訪問(wèn)可能并不存在的用戶產(chǎn)生的。因?yàn)榇蟛糠值囊蕴W(wǎng)數(shù)據(jù)交換都是伴隨著ARP報(bào)文開(kāi)始的,所以訪問(wèn)沒(méi)有對(duì)應(yīng)ARP表項(xiàng)的目的IP地址會(huì)導(dǎo)致設(shè)備發(fā)送ARP請(qǐng)求報(bào)文,而發(fā)送ARP報(bào)文是通過(guò)CPU進(jìn)行的,對(duì)CPU的消耗比較大,大量的遍歷訪問(wèn)并不存在的目的地會(huì)導(dǎo)致CPU忙于發(fā)送ARP請(qǐng)求而影響正常業(yè)務(wù)的處理??梢钥闯?,上述這兩種攻擊有一個(gè)共同的特點(diǎn)在短時(shí)間內(nèi)網(wǎng)絡(luò)設(shè)備(包括集中式設(shè)備和分布式設(shè)備)將處理大量的網(wǎng)絡(luò)消息(ARP報(bào)文或網(wǎng)段掃描產(chǎn)生的信息),而這些本質(zhì)為病毒或黑客攻擊的網(wǎng)絡(luò)消息會(huì)消耗大量的處理資源,引起網(wǎng)絡(luò)速度變慢甚至癱瘓。
現(xiàn)有技術(shù)中防止這種攻擊主要包括下述方法1、對(duì)于集中式設(shè)備,ARP報(bào)文(或網(wǎng)段掃描產(chǎn)生的發(fā)送ARP報(bào)文的消息,在背景技術(shù)中下同)往往是通過(guò)報(bào)文隊(duì)列緩存的,對(duì)于超過(guò)隊(duì)列長(zhǎng)度的報(bào)文會(huì)被丟棄掉,通過(guò)控制隊(duì)列的長(zhǎng)度可以減小ARP報(bào)文攻擊。
2、對(duì)于分布式設(shè)備,轉(zhuǎn)發(fā)引擎上送報(bào)文往往通過(guò)漏桶進(jìn)行控制,漏桶的原理如下令牌桶可以想象成是一個(gè)容量固定的容器,按照規(guī)定的速度(這個(gè)速度可以配置)向桶中存放令牌,ARP報(bào)文通過(guò)的時(shí)候需要看令牌桶中有沒(méi)有令牌,如果有足夠的令牌時(shí),則按規(guī)定的速率均勻地向外發(fā)送報(bào)文,否則丟棄報(bào)文。通過(guò)漏桶,可以限制上送報(bào)文的速率。
可以看出,上述的兩種解決方法具有同樣的缺點(diǎn)對(duì)于短時(shí)間內(nèi)大量涌現(xiàn)的具有同一地址信息的報(bào)文或消息(可以通稱(chēng)為網(wǎng)絡(luò)消息)無(wú)法辨識(shí),對(duì)于這些報(bào)文或消息的地址信息不加以區(qū)別就進(jìn)行速率控制,使得高速率(即短時(shí)間內(nèi)大量涌現(xiàn))的具有同一地址信息的報(bào)文或消息(往往這些報(bào)文是病毒或黑客攻擊)的處理與正常的報(bào)文或消息的處理方法一樣,因此導(dǎo)致正常報(bào)文或消息被丟棄或被擠掉,而達(dá)不到防止攻擊的目的。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種防止網(wǎng)絡(luò)消息攻擊的方法及設(shè)備,用以解決具有同一地址信息的網(wǎng)絡(luò)消息短時(shí)間內(nèi)大量涌現(xiàn)而導(dǎo)致的網(wǎng)絡(luò)異常問(wèn)題。
本發(fā)明一方面提供了一種防止網(wǎng)絡(luò)消息攻擊的方法,包括(A)統(tǒng)計(jì)接收到的具有同一地址信息的網(wǎng)絡(luò)消息的到達(dá)速率;(B)判斷所述到達(dá)速率是否大于限制速率,如果是,則(C)丟棄所述網(wǎng)絡(luò)消息;否則(D)允許所述網(wǎng)絡(luò)消息通過(guò)。
優(yōu)選地,所述步驟(A)包括(A1)取出所述網(wǎng)絡(luò)消息的地址信息;(A2)判斷該地址是否為首次到達(dá),如果是,則(A3)將歷史時(shí)間戳記錄為系統(tǒng)當(dāng)前時(shí)間并將累加器置1;否則(A4)利用所述歷史時(shí)間戳、系統(tǒng)當(dāng)前時(shí)間和累加器確定到達(dá)速率。
優(yōu)選地,所述步驟(A)包括(A1)取出所述網(wǎng)絡(luò)消息的地址信息;(A2)判斷該地址是否為首次到達(dá),如果是,則(A3)啟動(dòng)定時(shí)器,并將累加器置1后返回步驟(A1);否則(A4)判斷定時(shí)器是否結(jié)束,如果是,則(A5)根據(jù)定時(shí)器和累加器確定到達(dá)速率;否則(A6)累加器累加1,返回步驟(A1)。
本發(fā)明另一方面提供了一種防止網(wǎng)絡(luò)消息攻擊的設(shè)備,包括統(tǒng)計(jì)單元,用于統(tǒng)計(jì)接收到的具有同一地址信息的網(wǎng)絡(luò)消息的到達(dá)速率;與所述統(tǒng)計(jì)單元藕接的判斷單元,用于判斷所述到達(dá)速率是否大于限制速率,產(chǎn)生肯定結(jié)果或否定結(jié)果;與所述判斷單元藕接的與所述肯定結(jié)果相關(guān)的丟棄單元,用于丟棄所述網(wǎng)絡(luò)消息;與所述判斷單元藕接的與所述否定結(jié)果相關(guān)的通過(guò)單元,用于允許所述網(wǎng)絡(luò)消息通過(guò)。
優(yōu)選地,所述統(tǒng)計(jì)單元包括獲取單元,用于取出所述網(wǎng)絡(luò)消息的地址信息;與所述獲取單元藕接的第二判斷單元,用于判斷該地址是否為首次到達(dá),產(chǎn)生第二肯定結(jié)果或第二否定結(jié)果;與所述第二判斷單元藕接的與所述第二肯定結(jié)果相關(guān)的設(shè)置單元,用于將歷史時(shí)間戳記錄為系統(tǒng)當(dāng)前時(shí)間并將累加器置1;與所述第二判斷單元藕接的與所述第二否定結(jié)果相關(guān)的確定單元,用于利用歷史時(shí)間戳、系統(tǒng)當(dāng)前時(shí)間和累加器確定到達(dá)速率。
優(yōu)選地,所述統(tǒng)計(jì)單元包括獲取單元,用于取出所述網(wǎng)絡(luò)消息的地址信息;與所述獲取單元藕接的第二判斷單元,用于判斷該地址是否為首次到達(dá),產(chǎn)生第二肯定結(jié)果或第二否定結(jié)果;與所述第二判斷單元藕接的與所述第二肯定結(jié)果相關(guān)的啟動(dòng)單元,用于啟動(dòng)定時(shí)器,并將累加器置1后返回獲取單元;與所述第二判斷單元藕接的與所述第二否定結(jié)果相關(guān)的第三判斷單元,用于判斷定時(shí)器是否結(jié)束,產(chǎn)生第三肯定結(jié)果或第三否定結(jié)果;與所述第三判斷單元藕接的與所述第三肯定結(jié)果相關(guān)的確定單元,用于根據(jù)定時(shí)器和累加器確定到達(dá)速率;與所述第三判斷單元藕接的與所述第三否定結(jié)果相關(guān)的累加單元,用于使累加器累加1,并返回獲取單元。
根據(jù)本發(fā)明提供的一種防止網(wǎng)絡(luò)消息攻擊的方法,與現(xiàn)有技術(shù)相比,增加了對(duì)具有同一地址信息的網(wǎng)絡(luò)消息的到達(dá)速率進(jìn)行統(tǒng)計(jì),并與事先配置好的限制速率相比較,對(duì)于速率過(guò)大的同一地址網(wǎng)絡(luò)消息進(jìn)行丟棄處理,從而保證能夠過(guò)濾掉在短時(shí)間內(nèi)大量涌現(xiàn)的具有同一地址信息的網(wǎng)絡(luò)消息,對(duì)于發(fā)生攻擊時(shí)出現(xiàn)的一秒鐘內(nèi)發(fā)送幾百乃至上千的網(wǎng)絡(luò)消息(例如ARP請(qǐng)求消息)能夠有效過(guò)濾,從而達(dá)到防止攻擊的目的。
根據(jù)本發(fā)明提供的一種防止網(wǎng)絡(luò)消息攻擊的設(shè)備是執(zhí)行上述方法的設(shè)備,其優(yōu)點(diǎn)與該方法的優(yōu)點(diǎn)一致,在此不再贅述。
圖1為本發(fā)明提供的一種防止網(wǎng)絡(luò)消息攻擊的設(shè)備的第一實(shí)施例的框圖;圖2為本發(fā)明提供的一種防止網(wǎng)絡(luò)消息攻擊的方法的流程圖;圖3為本發(fā)明提供的一種防止網(wǎng)絡(luò)消息攻擊的方法的一個(gè)實(shí)施例的部分流程圖;圖4為本發(fā)明提供的一種防止網(wǎng)絡(luò)消息攻擊的設(shè)備的第二實(shí)施例的框圖;圖5為本發(fā)明提供的一種防止網(wǎng)絡(luò)消息攻擊的方法的第二實(shí)施例的部分流程圖。
具體實(shí)施例方式
參考圖1,圖示了為本發(fā)明提供的一種防止網(wǎng)絡(luò)消息攻擊的設(shè)備的一個(gè)實(shí)施例的框圖。如圖所示,設(shè)備500包括統(tǒng)計(jì)單元510、與該統(tǒng)計(jì)單元510藕接的判斷單元520、與該判斷單元520藕接的通過(guò)單元530和丟棄單元540,此外,還包括與所述判斷單元520藕接的配置單元550。
參考圖2和圖1,圖2圖示了本發(fā)明提供的一種防止網(wǎng)絡(luò)消息攻擊的方法的流程。圖2所示的方法可以通過(guò)圖1所示的設(shè)備500來(lái)實(shí)現(xiàn),因此,對(duì)于圖2的說(shuō)明即是對(duì)圖1中各單元功能的說(shuō)明。參考圖2,所述方法開(kāi)始步驟后進(jìn)入步驟100統(tǒng)計(jì)接收到的具有同一地址信息的網(wǎng)絡(luò)消息的到達(dá)速率;值得說(shuō)明的是,所述網(wǎng)絡(luò)消息可以是ARP報(bào)文,也可以是網(wǎng)段掃描產(chǎn)生的消息。這些網(wǎng)絡(luò)消息中具有地址信息,例如源IP地址、目的IP地址。還有的消息中不但具有源目的IP地址,還同時(shí)具有標(biāo)識(shí)私網(wǎng)網(wǎng)絡(luò)的標(biāo)記符(簡(jiǎn)稱(chēng)私網(wǎng)標(biāo)記符)。統(tǒng)計(jì)時(shí),可以按不同的精度要求按不同的地址信息組合來(lái)統(tǒng)計(jì)。例如1、按網(wǎng)絡(luò)消息的源IP地址統(tǒng)計(jì);2、按網(wǎng)絡(luò)消息的目的IP地址統(tǒng)計(jì);3、按網(wǎng)絡(luò)消息的源IP地址+目的IP地址統(tǒng)計(jì);4、按網(wǎng)絡(luò)消息的源IP地址+私網(wǎng)標(biāo)記符統(tǒng)計(jì);5、按網(wǎng)絡(luò)消息目的IP地址+私網(wǎng)標(biāo)記符統(tǒng)計(jì);6、按網(wǎng)絡(luò)消息源IP地址+目的IP地址+私網(wǎng)標(biāo)記符統(tǒng)計(jì)。當(dāng)然,如果還有其它標(biāo)識(shí)網(wǎng)絡(luò)消息的來(lái)源和目的的信息也可以放入到組合中以提高統(tǒng)計(jì)的精度。
步驟100由所述統(tǒng)計(jì)單元510執(zhí)行。
步驟200判斷所述到達(dá)速率是否大于限制速率,如果是,則轉(zhuǎn)步驟400,如果否則轉(zhuǎn)步驟300;此步驟由所述判斷單元520執(zhí)行。限制速率可以事先通過(guò)所述配置單元550配置好,通過(guò)比較到達(dá)速率和限制速率可以做出判斷。值得說(shuō)明的是,這一步驟還可以有好多變形,例如比較到達(dá)速率的倒數(shù)和限制速率的倒數(shù),但這些變形都屬于本領(lǐng)域普通技術(shù)人員不用付出創(chuàng)造性勞動(dòng)就能夠得到的規(guī)避手段,因此也當(dāng)然包括在本發(fā)明的限定范圍內(nèi)。
步驟300允許所述網(wǎng)絡(luò)消息通過(guò)后進(jìn)入結(jié)束步驟。
此步驟由與所述判斷單元520的否定性判斷相關(guān)的通過(guò)單元530執(zhí)行。因?yàn)榈竭_(dá)速率小于等于限制速率,說(shuō)明所述網(wǎng)絡(luò)信息不是短時(shí)間大量涌入的病毒或黑客攻擊,應(yīng)該是正常報(bào)文,因此允許其通過(guò)。
步驟400丟棄所述網(wǎng)絡(luò)消息通過(guò)后進(jìn)入結(jié)束步驟。
此步驟由與所述判斷單元520的肯定性判斷相關(guān)的丟棄單元540執(zhí)行。因?yàn)榈竭_(dá)速率大于限制速率,說(shuō)明所述網(wǎng)絡(luò)信息是短時(shí)間大量涌入的病毒或黑客攻擊,因此將其丟棄,就避免了因設(shè)備的CPU處理該類(lèi)病毒網(wǎng)絡(luò)信息而導(dǎo)致的性能下降進(jìn)而影響網(wǎng)絡(luò)的順暢。
參考圖1,在這個(gè)優(yōu)選實(shí)施例中,所述統(tǒng)計(jì)單元510包括獲取單元511,與該獲取單元511藕接的判斷單元512,與該判斷單元512藕接的確定單元513和設(shè)置單元514。
參考圖3,為本發(fā)明提供的一種防止網(wǎng)絡(luò)消息攻擊的方法的一個(gè)實(shí)施例的部分流程圖。同時(shí)參考圖1和圖2,圖3的流程圖所執(zhí)行的就是圖2中步驟100的細(xì)化步驟,同時(shí)也可以由圖1中統(tǒng)計(jì)單元510的各子單元來(lái)執(zhí)行。如圖所示,包括步驟110取出所述網(wǎng)絡(luò)消息的地址;這一步驟由所述獲取單元511來(lái)執(zhí)行。對(duì)于每個(gè)網(wǎng)絡(luò)消息,可以按精度需要任選下列一種地址作為該網(wǎng)絡(luò)消息的地址源IP地址、目的IP地址、源IP地址+目的IP地址、源IP地址+私網(wǎng)標(biāo)記符、目的IP地址+私網(wǎng)標(biāo)記符、源IP地址+目的IP地址+私網(wǎng)標(biāo)記符。這些處理都是類(lèi)似的,因此,這里僅以一和IP地址為例。假設(shè)所述網(wǎng)絡(luò)消息僅有一個(gè)IP地址。這一步是為計(jì)算具有同一地址信息的網(wǎng)絡(luò)消息的到達(dá)速率做準(zhǔn)備的。
步驟111判斷所述網(wǎng)絡(luò)消息是否是首次到達(dá),如果是,則轉(zhuǎn)步驟112;如果不是,則轉(zhuǎn)步驟113;這一步驟由所述判斷單元512來(lái)執(zhí)行。其目的是判斷某個(gè)IP地址是否是第一次進(jìn)入所述設(shè)備500,以便能為該IP地址建立相應(yīng)的參數(shù)和進(jìn)行監(jiān)視,也就是后續(xù)的流程。
步驟112所述網(wǎng)絡(luò)消息通過(guò)其IP地址信息初始化與該IP地址相對(duì)應(yīng)的歷史時(shí)間戳和累加器,即將該歷史時(shí)間戳記錄為系統(tǒng)當(dāng)前時(shí)間并將累加器置1;這一步驟是初始化某一IP地址相應(yīng)信息的,由所述設(shè)置單元514來(lái)執(zhí)行。為了統(tǒng)計(jì)和某一IP地址相關(guān)的網(wǎng)絡(luò)消息的到達(dá)速率,就必須為該IP地址建立相關(guān)的參數(shù),例如本實(shí)施例中歷史時(shí)間戳和累加器。值得說(shuō)明的是,每個(gè)IP地址都具有自己的歷史時(shí)間戳和累加器,因此,不同IP地址擁有不同的歷史時(shí)間戳和累加器。但系統(tǒng)當(dāng)前時(shí)間在一個(gè)時(shí)間點(diǎn)擁有唯一的值。因此,系統(tǒng)當(dāng)前時(shí)間在某個(gè)確定的時(shí)間點(diǎn)時(shí)是個(gè)常數(shù),因此,這一步驟也就是為某個(gè)首次到達(dá)的IP地址賦予其相關(guān)的歷史時(shí)間戳和累加器的值。
步驟113—步驟117即根據(jù)歷史時(shí)間戳、系統(tǒng)當(dāng)前時(shí)間和累加器的值確定到達(dá)速率的步驟,由所述確定單元來(lái)執(zhí)行。具體地步驟113判斷系統(tǒng)當(dāng)前時(shí)間和歷史時(shí)間戳的差是否在規(guī)定時(shí)間內(nèi),如果是,則轉(zhuǎn)步驟114;否則,轉(zhuǎn)步驟116;這一步驟中的規(guī)定時(shí)間可以通過(guò)所述配置單元550配置,是計(jì)算所述到達(dá)速率的分母,例如可以設(shè)定為1秒,表示要統(tǒng)計(jì)1秒內(nèi)同一地址到達(dá)的網(wǎng)絡(luò)消息的數(shù)目。
步驟114將所述歷史時(shí)間戳和累加器清除,具體地,將歷史時(shí)間戳記錄為系統(tǒng)當(dāng)前時(shí)間,將累加器置0;運(yùn)行到此步驟時(shí),證明這個(gè)IP地址到達(dá)的后一個(gè)網(wǎng)絡(luò)消息和前一個(gè)自該IP地址到達(dá)的網(wǎng)絡(luò)消息的時(shí)間間隔超過(guò)了規(guī)定時(shí)間,表明到達(dá)速率必定小于限制速率。而此時(shí)則需要對(duì)與該IP地址相關(guān)的歷史時(shí)間戳和累加器清除了,以便后續(xù)統(tǒng)計(jì)。
步驟115將到達(dá)速率賦值為比限制速率低的值,用于向下個(gè)步驟中判斷到達(dá)速率是否大于限制速率做準(zhǔn)備;當(dāng)然,這個(gè)步驟是可以省略的,或者直接把到達(dá)速率小于限制速率這一信息傳送到下一步驟??傊?,在實(shí)現(xiàn)中有很多方法可以實(shí)現(xiàn)這一目標(biāo)。
步驟116累加器加1;
運(yùn)行到此步驟時(shí),證明在確定時(shí)間內(nèi)又一個(gè)具有同一IP地址信息的網(wǎng)絡(luò)消息到達(dá)了,自然與該IP地址相對(duì)應(yīng)的累加器要累加,至于是加多少,可以根據(jù)到達(dá)速率和限制速率的規(guī)定靈活設(shè)置,此處給出的僅是一個(gè)優(yōu)選的值。
步驟117利用累加器和規(guī)定時(shí)間計(jì)算到達(dá)速率。
同時(shí)參考上述關(guān)于圖2的方法步驟說(shuō)明可以看出,對(duì)于在規(guī)定時(shí)間內(nèi)(例如1秒鐘)頻繁到來(lái)的具有同一地址信息的網(wǎng)絡(luò)消息,如果規(guī)定了限制速率為每秒8個(gè),那么前8個(gè)網(wǎng)絡(luò)消息由于其到來(lái)時(shí)累加器的值和規(guī)定時(shí)間的值的比值即到達(dá)速率還小于限制速率,這8個(gè)網(wǎng)絡(luò)消息會(huì)執(zhí)行到步驟300,即被允許通過(guò)。而在這1秒內(nèi)第9個(gè)及以后到來(lái)的則會(huì)由于超過(guò)限制速率而被丟棄掉。由于每個(gè)網(wǎng)絡(luò)消息都會(huì)很快通過(guò)設(shè)備500,因此,不會(huì)引起網(wǎng)絡(luò)消息在設(shè)備500中滯留的現(xiàn)象。但同時(shí)也由于這個(gè)原因,導(dǎo)致漏丟的現(xiàn)象,例如前述的那前8個(gè)就允許通過(guò)了。
參考圖4,圖示了本發(fā)明提供的一種防止網(wǎng)絡(luò)消息攻擊的設(shè)備的另一個(gè)實(shí)施例的框圖。同時(shí)參考圖1,設(shè)備600與設(shè)備500的區(qū)別之處在于統(tǒng)計(jì)單元的實(shí)現(xiàn)方式不同,其它之處都相同。具體地,設(shè)備600包括統(tǒng)計(jì)單元610,與該統(tǒng)計(jì)單元610藕接的判斷單元620,與該判斷單元620藕接的通過(guò)單元630和丟棄單元640。各單元的功能同設(shè)備500的功能相同,在此不再贅述。與設(shè)備500不同之處在于統(tǒng)計(jì)單元的實(shí)現(xiàn)方式不同。具體地,所述統(tǒng)計(jì)單元610包括獲取單元611,與該獲取單元611藕接的判斷單元612、啟動(dòng)單元614和累加單元616,與判斷單元藕接的判斷單元613、啟動(dòng)單元614,與判斷單元613藕接的確定單元615和累加單元616。還包括配置單元650。
參考圖5,圖示了本發(fā)明提供的一種防止網(wǎng)絡(luò)消息攻擊的方法的另一個(gè)實(shí)施例的部分流程圖。同時(shí)參考圖2和圖4,圖5的流程圖是圖2中步驟100的另一種實(shí)施方式,可以由所述統(tǒng)計(jì)單元610中的各子單元執(zhí)行。具體地,包括步驟120和步驟121分別與步驟110和步驟111相同,分別由所述獲取單元611和判斷單元612執(zhí)行,可以參考上文中關(guān)于步驟110和111的說(shuō)明,在此不再贅述。
步驟122啟動(dòng)與所述網(wǎng)絡(luò)消息的IP地址信息相關(guān)的定時(shí)器,同時(shí)將與所述網(wǎng)絡(luò)消息的IP地址信息相關(guān)的累加器置1,并且返回到步驟120;這一步驟是初始化某一IP地址相應(yīng)信息的,由所述啟動(dòng)單元614來(lái)執(zhí)行。為了統(tǒng)計(jì)和某一IP地址相關(guān)的網(wǎng)絡(luò)消息的到達(dá)速率,就必須為該IP地址建立相關(guān)的參數(shù),例如本實(shí)施例中定時(shí)器和累加器。值得說(shuō)明的是,每個(gè)IP地址都具有自己的定時(shí)器和累加器,因此,不同IP地址擁有不同的定時(shí)器和累加器。,這一步驟是為某個(gè)首次到達(dá)的IP地址賦啟動(dòng)其定時(shí)器和累加器置1,當(dāng)然具體數(shù)值并不是關(guān)鍵。初始化后立即返回步驟120繼續(xù)取下一條網(wǎng)絡(luò)消息進(jìn)行處理。
步驟123判斷定時(shí)器是否結(jié)束,如果是則轉(zhuǎn)步驟124;否則轉(zhuǎn)步驟125,由所述判斷單元613執(zhí)行;步驟124計(jì)算到達(dá)速率,具體地可以用對(duì)應(yīng)的累加器與對(duì)應(yīng)的定時(shí)器的比值代表到達(dá)速率,由所述確定單元615執(zhí)行。
步驟125將對(duì)應(yīng)的累加器加1后返回步驟120,繼續(xù)取下一條網(wǎng)絡(luò)信息處理,由所述累加單元616執(zhí)行。
可以看出,在這個(gè)具體實(shí)施例中,網(wǎng)絡(luò)消息在設(shè)備600中有滯留。這是因?yàn)閷?duì)于每個(gè)IP地址而言,與這個(gè)IP地址相對(duì)應(yīng)的在設(shè)備600中有個(gè)定時(shí)器,在定時(shí)器的規(guī)定時(shí)間內(nèi),與該IP地址相關(guān)的網(wǎng)絡(luò)消息會(huì)滯留在設(shè)備600中,只有等到該定時(shí)器結(jié)束,計(jì)算出到達(dá)速率后才會(huì)決定是否允許這些網(wǎng)絡(luò)消息通過(guò)還是丟棄。但如此一來(lái),就不會(huì)有漏丟的現(xiàn)象發(fā)生了,對(duì)于某個(gè)IP地址,如果在定時(shí)器時(shí)間內(nèi)有很多網(wǎng)絡(luò)信息到達(dá)設(shè)備600,就會(huì)因?yàn)榈竭_(dá)速率超過(guò)限制速率而遭到全部丟棄,因此不會(huì)有漏丟現(xiàn)象。
值得說(shuō)明的是,本發(fā)明提供的這種設(shè)備和方法可以以軟件、硬件或固件的形式實(shí)施,可以實(shí)施為防火墻設(shè)備/軟件或殺毒設(shè)備/軟件。如果通過(guò)硬件,例如ASIC(專(zhuān)用芯片)實(shí)施,會(huì)具有處理速度快等優(yōu)點(diǎn)。
值得說(shuō)明的是,本發(fā)明所述的“網(wǎng)絡(luò)消息”并非僅包括實(shí)施例中提到的ARP報(bào)文和網(wǎng)段掃描引起的消息,應(yīng)該理解為任何網(wǎng)絡(luò)報(bào)文或消息。
以上所揭露的僅為本發(fā)明的優(yōu)選實(shí)施例而已,當(dāng)然不能以此來(lái)限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明申請(qǐng)專(zhuān)利范圍所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。
權(quán)利要求
1.一種防止網(wǎng)絡(luò)消息攻擊的方法,包括(A)統(tǒng)計(jì)接收到的具有同一地址信息的網(wǎng)絡(luò)消息的到達(dá)速率;(B)判斷所述到達(dá)速率是否大于限制速率,如果是,則(C)丟棄所述網(wǎng)絡(luò)消息;否則(D)允許所述網(wǎng)絡(luò)消息通過(guò)。
2.根據(jù)權(quán)利要求1所述的防止網(wǎng)絡(luò)消息攻擊的方法,其特征在于步驟(A)包括(A1)取出所述網(wǎng)絡(luò)消息的地址信息;(A2)判斷該地址是否為首次到達(dá),如果是,則(A3)將歷史時(shí)間戳記錄為系統(tǒng)當(dāng)前時(shí)間并將累加器置1;否則(A4)利用所述歷史時(shí)間戳、系統(tǒng)當(dāng)前時(shí)間和累加器確定到達(dá)速率。
3.根據(jù)權(quán)利要求1所述的防止網(wǎng)絡(luò)消息攻擊的方法,其特征在于步驟(A)包括(A1)取出所述網(wǎng)絡(luò)消息的地址信息;(A2)判斷該地址是否為首次到達(dá),如果是,則(A3)啟動(dòng)定時(shí)器,并將累加器置1后返回步驟(A1);否則(A4)判斷定時(shí)器是否結(jié)束,如果是,則(A5)根據(jù)定時(shí)器和累加器確定到達(dá)速率;否則(A6)累加器累加1,返回步驟(A1)。
4.根據(jù)權(quán)利要求1-3中任意一項(xiàng)權(quán)利要求所述的防止網(wǎng)絡(luò)消息攻擊的方法,其特征在于所述網(wǎng)絡(luò)消息為地址解析協(xié)議報(bào)文或網(wǎng)段掃描產(chǎn)生的消息。
5.根據(jù)權(quán)利要求1-3中任意一項(xiàng)權(quán)利要求所述的防止網(wǎng)絡(luò)消息攻擊的方法,其特征在于還包括配置限制速率。
6.一種防止網(wǎng)絡(luò)消息攻擊的設(shè)備,包括統(tǒng)計(jì)單元,用于統(tǒng)計(jì)接收到的具有同一地址信息的網(wǎng)絡(luò)消息的到達(dá)速率;與所述統(tǒng)計(jì)單元藕接的判斷單元,用于判斷所述到達(dá)速率是否大于限制速率,產(chǎn)生肯定結(jié)果或否定結(jié)果;與所述判斷單元藕接的與所述肯定結(jié)果相關(guān)的丟棄單元,用于丟棄所述網(wǎng)絡(luò)消息;與所述判斷單元藕接的與所述否定結(jié)果相關(guān)的通過(guò)單元,用于允許所述網(wǎng)絡(luò)消息通過(guò)。
7.根據(jù)權(quán)利要求6所述的防止網(wǎng)絡(luò)消息攻擊的設(shè)備,其特征在于所述統(tǒng)計(jì)單元包括獲取單元,用于取出所述網(wǎng)絡(luò)消息的地址信息;與所述獲取單元藕接的第二判斷單元,用于判斷該地址是否為首次到達(dá),產(chǎn)生第二肯定結(jié)果或第二否定結(jié)果;與所述第二判斷單元藕接的與所述第二肯定結(jié)果相關(guān)的設(shè)置單元,用于將歷史時(shí)間戳記錄為系統(tǒng)當(dāng)前時(shí)間并將累加器置1;與所述第二判斷單元藕接的與所述第二否定結(jié)果相關(guān)的確定單元,用于利用歷史時(shí)間戳、系統(tǒng)當(dāng)前時(shí)間和累加器確定到達(dá)速率。
8.根據(jù)權(quán)利要求6所述的防止網(wǎng)絡(luò)消息攻擊的設(shè)備,其特征在于所述統(tǒng)計(jì)單元包括獲取單元,用于取出所述網(wǎng)絡(luò)消息的地址信息;與所述獲取單元藕接的第二判斷單元,用于判斷該地址是否為首次到達(dá),產(chǎn)生第二肯定結(jié)果或第二否定結(jié)果;與所述第二判斷單元藕接的與所述第二肯定結(jié)果相關(guān)的啟動(dòng)單元,用于啟動(dòng)定時(shí)器,并將累加器置1后返回獲取單元;與所述第二判斷單元藕接的與所述第二否定結(jié)果相關(guān)的第三判斷單元,用于判斷定時(shí)器是否結(jié)束,產(chǎn)生第三肯定結(jié)果或第三否定結(jié)果;與所述第三判斷單元藕接的與所述第三肯定結(jié)果相關(guān)的確定單元,用于根據(jù)定時(shí)器和累加器確定到達(dá)速率;與所述第三判斷單元藕接的與所述第三否定結(jié)果相關(guān)的累加單元,用于使累加器累加1,并返回獲取單元。
9.根據(jù)權(quán)利要求6-8中任意一項(xiàng)權(quán)利要求所述的防止網(wǎng)絡(luò)消息攻擊的設(shè)備,其特征在于所述網(wǎng)絡(luò)消息為地址解析協(xié)議報(bào)文或網(wǎng)段掃描產(chǎn)生的消息。
10.根據(jù)權(quán)利要求6-8中任意一項(xiàng)權(quán)利要求所述的防止網(wǎng)絡(luò)消息攻擊的設(shè)備,其特征在于還包括與所述判斷單元藕接的配置單元,用于配置限制速率。
全文摘要
本發(fā)明公開(kāi)了一種防止網(wǎng)絡(luò)消息攻擊的方法,包括統(tǒng)計(jì)接收到的具有同一地址信息的網(wǎng)絡(luò)消息的到達(dá)速率;判斷到達(dá)速率是否大于限制速率,如果是,則丟棄網(wǎng)絡(luò)消息;否則允許網(wǎng)絡(luò)消息通過(guò)。本方法屬于網(wǎng)絡(luò)安全技術(shù),應(yīng)用于防止以具有同一IP地址信息的網(wǎng)絡(luò)消息短時(shí)間內(nèi)大量涌入為特征的網(wǎng)絡(luò)攻擊。同時(shí),本發(fā)明還公開(kāi)了一種防止網(wǎng)絡(luò)消息攻擊的設(shè)備。
文檔編號(hào)H04L12/24GK1941775SQ20061003658
公開(kāi)日2007年4月4日 申請(qǐng)日期2006年7月19日 優(yōu)先權(quán)日2006年7月19日
發(fā)明者于勇 申請(qǐng)人:華為技術(shù)有限公司