本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,尤其涉及一種安全表項(xiàng)建立方法及裝置。
背景技術(shù):
ND(Neighbor Discovery Protocol,鄰居發(fā)現(xiàn)協(xié)議)是IPv6的基礎(chǔ)性協(xié)議。由于ND報(bào)文容易偽造,因此,針對(duì)ND的攻擊越來(lái)越多,嚴(yán)重影響IPv6網(wǎng)絡(luò)的安全性。
目前,防御ND攻擊的主要方法是通過(guò)交換設(shè)備偵聽(tīng)ND報(bào)文或數(shù)據(jù)報(bào)文,為不存在IP地址沖突的用戶(hù)創(chuàng)建安全表項(xiàng),以達(dá)到對(duì)假冒已存在用戶(hù)(存在IP地址沖突的用戶(hù))發(fā)送的報(bào)文進(jìn)行丟棄的目的。
但是,如果攻擊者假冒不存在用戶(hù)發(fā)送大量源IP地址不同的ND報(bào)文或者數(shù)據(jù)報(bào)文,將產(chǎn)生大量非法用戶(hù)的安全表項(xiàng),影響合法用戶(hù)安全表項(xiàng)的建立,導(dǎo)致合法用戶(hù)無(wú)法正常通信。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種安全表項(xiàng)建立方法及裝置,用以避免非法用戶(hù)主機(jī)占用交換設(shè)備的表項(xiàng)資源。
為實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明提供了如下技術(shù)方案:
本發(fā)明提供一種安全表項(xiàng)建立方法,應(yīng)用于交換設(shè)備,所述方法包括:
接收用戶(hù)主機(jī)發(fā)送的報(bào)文;
判斷是否存在與所述報(bào)文攜帶的所述用戶(hù)主機(jī)的IP地址匹配的臨時(shí)安全表項(xiàng);
當(dāng)存在與所述用戶(hù)主機(jī)的IP地址匹配的臨時(shí)安全表項(xiàng)時(shí),發(fā)送第一探測(cè)請(qǐng)求報(bào)文,所述第一探測(cè)請(qǐng)求報(bào)文中攜帶所述用戶(hù)主機(jī)的IP地址;
當(dāng)接收到針對(duì)所述第一探測(cè)請(qǐng)求報(bào)文回應(yīng)的第一探測(cè)響應(yīng)報(bào)文時(shí),生效所述匹配的臨時(shí)安全表項(xiàng)為有效安全表項(xiàng)。
本發(fā)明還提供一種安全表項(xiàng)建立裝置,應(yīng)用于交換設(shè)備,所述裝置包括:
接收單元,用于接收用戶(hù)主機(jī)發(fā)送的報(bào)文;
判斷單元,用于判斷是否存在與所述報(bào)文攜帶的所述用戶(hù)主機(jī)的IP地址匹配的臨時(shí)安全表項(xiàng);
發(fā)送單元,用于當(dāng)存在與所述用戶(hù)主機(jī)的IP地址匹配的臨時(shí)安全表項(xiàng)時(shí),發(fā)送第一探測(cè)請(qǐng)求報(bào)文,所述第一探測(cè)請(qǐng)求報(bào)文中攜帶所述用戶(hù)主機(jī)的IP地址;
生效單元,用于當(dāng)接收到針對(duì)所述第一探測(cè)請(qǐng)求報(bào)文回應(yīng)的第一探測(cè)響應(yīng)報(bào)文時(shí),生效所述匹配的臨時(shí)安全表項(xiàng)為有效安全表項(xiàng)。
由以上描述可以看出,本發(fā)明中交換設(shè)備在與用戶(hù)主機(jī)IP地址匹配的臨時(shí)安全表項(xiàng)生效之前,對(duì)用戶(hù)主機(jī)進(jìn)行身份確認(rèn),對(duì)通過(guò)身份確認(rèn)的用戶(hù)主機(jī)生效臨時(shí)安全表項(xiàng),從而避免非法用戶(hù)主機(jī)占用交換設(shè)備的表項(xiàng)資源。
附圖說(shuō)明
圖1是本發(fā)明實(shí)施例示出的一種安全表項(xiàng)建立方法流程圖;
圖2是本發(fā)明實(shí)施例示出的一種組網(wǎng)示意圖;
圖3是本發(fā)明實(shí)施例示出的交換設(shè)備的結(jié)構(gòu)示意圖;
圖4是本發(fā)明實(shí)施例示出的一種安全表項(xiàng)建立裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
這里將詳細(xì)地對(duì)示例性實(shí)施例進(jìn)行說(shuō)明,其示例表示在附圖中。下面的描述涉及附圖時(shí),除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實(shí)施例中所描述的實(shí)施方式并不代表與本發(fā)明相一致的所有實(shí)施方式。相反,它們僅是與如所附權(quán)利要求書(shū)中所詳述的、本發(fā)明的一些方面相一致的裝置和方法的例子。
在本發(fā)明使用的術(shù)語(yǔ)是僅僅出于描述特定實(shí)施例的目的,而非旨在限制本發(fā)明。在本發(fā)明和所附權(quán)利要求書(shū)中所使用的單數(shù)形式的“一種”、“所述”和“該”也旨在包括多數(shù)形式,除非上下文清楚地表示其他含義。還應(yīng)當(dāng)理解,本文中使用的術(shù)語(yǔ)“和/或”是指并包含一個(gè)或多個(gè)相關(guān)聯(lián)的列出項(xiàng)目的任何或所有可能組合。
應(yīng)當(dāng)理解,盡管在本發(fā)明可能采用術(shù)語(yǔ)第一、第二、第三等來(lái)描述各種信息,但這些信息不應(yīng)限于這些術(shù)語(yǔ)。這些術(shù)語(yǔ)僅用來(lái)將同一類(lèi)型的信息彼此區(qū)分開(kāi)。例如,在不脫離本發(fā)明范圍的情況下,第一信息也可以被稱(chēng)為第二信息,類(lèi)似地,第二信息也可以被稱(chēng)為第一信息。取決于語(yǔ)境,如在此所使用的詞語(yǔ)“如果”可以被解釋成為“在……時(shí)”或“當(dāng)……時(shí)”或“響應(yīng)于確定”。
本發(fā)明實(shí)施例提出一種安全表項(xiàng)建立方法,該方法在與用戶(hù)主機(jī)IP地址匹配的臨時(shí)安全表項(xiàng)生效之前,由交換設(shè)備發(fā)送攜帶用戶(hù)主機(jī)IP地址的探測(cè)請(qǐng)求報(bào)文,并在接收到針對(duì)該探測(cè)請(qǐng)求報(bào)文回應(yīng)的探測(cè)響應(yīng)報(bào)文后,生效與該用戶(hù)主機(jī)IP地址匹配的臨時(shí)安全表項(xiàng),從而避免非法用戶(hù)主機(jī)占用交換設(shè)備的表項(xiàng)資源。
參見(jiàn)圖1,為本發(fā)明安全表項(xiàng)建立方法的一個(gè)實(shí)施例流程圖,該實(shí)施例對(duì)安全表項(xiàng)建立過(guò)程進(jìn)行描述。
步驟101,接收用戶(hù)主機(jī)發(fā)送的報(bào)文。
步驟102,判斷是否存在與所述報(bào)文攜帶的所述用戶(hù)主機(jī)的IP地址匹配的臨時(shí)安全表項(xiàng)。
交換設(shè)備在接收到用戶(hù)主機(jī)發(fā)送的報(bào)文后,根據(jù)報(bào)文中攜帶的該用戶(hù)主機(jī)(發(fā)送報(bào)文的用戶(hù)主機(jī),亦可稱(chēng)為源用戶(hù)主機(jī))的IP地址判斷本地是否存在與該用戶(hù)主機(jī)的IP地址匹配的臨時(shí)安全表項(xiàng),其中,該臨時(shí)安全表項(xiàng)為未生效的安全表項(xiàng),即未下發(fā)到交換設(shè)備的硬件轉(zhuǎn)發(fā)芯片中的安全表項(xiàng),因此,該臨時(shí)安全表項(xiàng)不占用交換設(shè)備的表項(xiàng)資源。
當(dāng)判斷出不存在與用戶(hù)主機(jī)的IP地址匹配的臨時(shí)安全表項(xiàng)時(shí),進(jìn)一步判斷是否存在與用戶(hù)主機(jī)的IP地址匹配的有效安全表項(xiàng),即已生效并下發(fā)到硬件轉(zhuǎn)發(fā)芯片中的安全表項(xiàng)。當(dāng)存在與用戶(hù)主機(jī)的IP地址匹配的有效安全表項(xiàng)時(shí),說(shuō)明該用戶(hù)主機(jī)為已確認(rèn)的合法用戶(hù)主機(jī),可以正常通信;當(dāng)不存在與用戶(hù)主機(jī)的IP地址匹配的有效安全表項(xiàng)時(shí),說(shuō)明當(dāng)前為新的用戶(hù)主機(jī)發(fā)起的訪(fǎng)問(wèn),建立與用戶(hù)主機(jī)的IP地址匹配的臨時(shí)安全表項(xiàng),等待確認(rèn)當(dāng)前用戶(hù)主機(jī)的合法性。
步驟103,當(dāng)存在與所述用戶(hù)主機(jī)的IP地址匹配的臨時(shí)安全表項(xiàng)時(shí),發(fā)送第一探測(cè)請(qǐng)求報(bào)文,所述第一探測(cè)請(qǐng)求報(bào)文中攜帶所述用戶(hù)主機(jī)的IP地址。
步驟104,當(dāng)接收到針對(duì)所述第一探測(cè)請(qǐng)求報(bào)文回應(yīng)的第一探測(cè)響應(yīng)報(bào)文時(shí),生效所述匹配的臨時(shí)安全表項(xiàng)為有效安全表項(xiàng)。
本發(fā)明通過(guò)步驟103和步驟104對(duì)已存在匹配的臨時(shí)安全表項(xiàng)的用戶(hù)主機(jī)進(jìn)行合法性確認(rèn)。
具體為,交換設(shè)備通過(guò)發(fā)送攜帶用戶(hù)主機(jī)的IP地址的第一探測(cè)請(qǐng)求報(bào)文,探測(cè)是否存在使用該IP地址的用戶(hù)主機(jī),當(dāng)交換設(shè)備接收到針對(duì)第一探測(cè)請(qǐng)求報(bào)文回應(yīng)的第一探測(cè)響應(yīng)報(bào)文時(shí),確認(rèn)使用該IP地址的用戶(hù)主機(jī)真實(shí)存在,即確認(rèn)該用戶(hù)主機(jī)合法,并將該合法的用戶(hù)主機(jī)對(duì)應(yīng)的臨時(shí)安全表項(xiàng)生效為有效安全表項(xiàng)。
當(dāng)交換設(shè)備未接收到第一探測(cè)響應(yīng)報(bào)文時(shí),說(shuō)明不存在使用該IP地址的用戶(hù)主機(jī),已接收的報(bào)文很有可能為攻擊者偽造的攻擊報(bào)文,因此,可刪除對(duì)應(yīng)的臨時(shí)安全表項(xiàng)。
當(dāng)然,本發(fā)明還可設(shè)置臨時(shí)安全表項(xiàng)的老化時(shí)間,當(dāng)達(dá)到老化時(shí)間時(shí),刪除臨時(shí)安全表項(xiàng),以節(jié)約交換設(shè)備的系統(tǒng)資源。
由以上描述可知,本發(fā)明通過(guò)對(duì)已建立臨時(shí)安全表項(xiàng)的用戶(hù)主機(jī)作進(jìn)一步合法性探測(cè),以避免交換設(shè)備為大量不存在的用戶(hù)主機(jī)生成有效安全表項(xiàng),即保證下發(fā)到硬件轉(zhuǎn)發(fā)芯片中的安全表項(xiàng)的真實(shí)性,從而節(jié)約交換設(shè)備的表項(xiàng)資源。
此外,需要補(bǔ)充說(shuō)明的是,在步驟103中,交換設(shè)備要掌握發(fā)送第一探測(cè)請(qǐng)求報(bào)文的時(shí)機(jī)。具體為,交換設(shè)備判斷從用戶(hù)主機(jī)(記為用戶(hù)主機(jī)A)接收的報(bào)文是否為用戶(hù)主機(jī)A發(fā)送的探測(cè)請(qǐng)求報(bào)文(記為第二探測(cè)請(qǐng)求報(bào)文),該第二探測(cè)請(qǐng)求報(bào)文通常為用戶(hù)主機(jī)A在獲取新的IP地址后對(duì)該IP地址進(jìn)行沖突檢查時(shí)發(fā)送。當(dāng)交換設(shè)備接收的報(bào)文為用戶(hù)主機(jī)A發(fā)送的第二探測(cè)請(qǐng)求報(bào)文時(shí),轉(zhuǎn)發(fā)該第二探測(cè)請(qǐng)求報(bào)文,以使與用戶(hù)主機(jī)A的IP地址沖突的用戶(hù)主機(jī)(記為用戶(hù)主機(jī)B)回應(yīng)探測(cè)響應(yīng)報(bào)文(記為第二探測(cè)響應(yīng)報(bào)文),若用戶(hù)主機(jī)A未接收到第二探測(cè)響應(yīng)報(bào)文,則確認(rèn)不存在IP地址沖突,生效當(dāng)前IP地址;當(dāng)交換設(shè)備接收的報(bào)文不為用戶(hù)主機(jī)A發(fā)送的第二探測(cè)請(qǐng)求報(bào)文時(shí),發(fā)送第一探測(cè)請(qǐng)求報(bào)文,這是由于,如果用戶(hù)主機(jī)A在發(fā)送第二探測(cè)請(qǐng)求報(bào)文后,又接收到交換設(shè)備發(fā)送的第一探測(cè)請(qǐng)求報(bào)文(兩個(gè)探測(cè)請(qǐng)求報(bào)文攜帶的IP地址均為用戶(hù)主機(jī)A的IP地址)同樣會(huì)認(rèn)為存在IP地址沖突,則無(wú)法生效當(dāng)前IP地址,影響用戶(hù)主機(jī)A的正常通信。
現(xiàn)以IPv6網(wǎng)絡(luò)為例,詳細(xì)介紹安全表項(xiàng)建立過(guò)程。
參見(jiàn)圖2,為本發(fā)明實(shí)施例示出的一種組網(wǎng)示意圖。在該組網(wǎng)中,PC1為合法用戶(hù)使用的用戶(hù)主機(jī),PC2為攻擊者使用的用戶(hù)主機(jī);SW為交換設(shè)備;GW為連接外網(wǎng)的網(wǎng)關(guān)設(shè)備。
假設(shè),PC1上線(xiàn)時(shí),獲取臨時(shí)IP地址IP1,在正式生效該IP地址之前,PC1發(fā)送DAD(Duplicate Address Detection,重復(fù)地址檢測(cè))NS(Neighbor Solicitation Message,鄰居請(qǐng)求報(bào)文)報(bào)文(記為NS2,相當(dāng)于第二探測(cè)請(qǐng)求報(bào)文),在該NS2報(bào)文中攜帶要探測(cè)的IP地址IP1。
SW1接收到PC1發(fā)送的NS2報(bào)文后,向與接收NS2報(bào)文的接口屬于同一VLAN(Virtual Local Area Network,虛擬局域網(wǎng))的其它接口轉(zhuǎn)發(fā)NS2報(bào)文。如果在預(yù)設(shè)的時(shí)間內(nèi)PC1未接收到其它用戶(hù)主機(jī)針對(duì)自己發(fā)送的NS2報(bào)文返回的NA(Neighbor Advertisement Message,鄰居通告報(bào)文)報(bào)文(記為NA2,相當(dāng)于第二探測(cè)響應(yīng)報(bào)文),即,不存在IP地址沖突,則PC1生效IP1。
同時(shí),SW1獲取NS2報(bào)文中攜帶的要探測(cè)的IP地址IP1,判斷本地是否存在與IP1匹配的臨時(shí)安全表項(xiàng),如果不存在匹配的臨時(shí)安全表項(xiàng),則繼續(xù)判斷是否存在匹配的有效安全表項(xiàng),如果仍然不存在,則建立與IP1匹配的臨時(shí)安全表項(xiàng)。
在IP1生效(即完成DAD檢測(cè))后,PC1會(huì)主動(dòng)發(fā)送NA報(bào)文通告自身IP地址或發(fā)送數(shù)據(jù)報(bào)文開(kāi)始通信。當(dāng)SW1接收到PC1發(fā)送的NA報(bào)文或數(shù)據(jù)報(bào)文時(shí),發(fā)送DAD NS報(bào)文(記為NS1,相當(dāng)于第一探測(cè)請(qǐng)求報(bào)文),該NS1報(bào)文中攜帶PC1的IP地址IP1,PC1接收到NS1報(bào)文后,發(fā)現(xiàn)NS1報(bào)文中攜帶的要探測(cè)的IP地址與自身IP地址相同,因此,回應(yīng)NA報(bào)文(記為NA1,相當(dāng)于第一探測(cè)響應(yīng)報(bào)文),SW1接收到NA1報(bào)文后,確認(rèn)使用IP1的用戶(hù)主機(jī)真實(shí)存在,因此,將IP1對(duì)應(yīng)的臨時(shí)安全表項(xiàng)生效為有效安全表項(xiàng),并下發(fā)到硬件轉(zhuǎn)發(fā)芯片中。后續(xù)PC1發(fā)送的源IP地址為IP1的數(shù)據(jù)報(bào)文可通過(guò)匹配硬件轉(zhuǎn)發(fā)芯片中的安全表項(xiàng)正常通信。
需要注意的是,SW1不能在接收到PC1發(fā)送的NS2報(bào)文后,就發(fā)送NS1報(bào)文對(duì)PC1進(jìn)行身份確認(rèn),即不能再PC1進(jìn)行DAD檢測(cè)過(guò)程中發(fā)送NS1報(bào)文,否則,PC1同樣會(huì)認(rèn)為存在IP地址沖突,無(wú)法生效IP1。
假設(shè),PC2上線(xiàn)時(shí),采用與PC1相同的處理過(guò)程獲取到合法的IP地址IP2。當(dāng)攻擊者使用PC2發(fā)送攻擊報(bào)文時(shí),為了對(duì)交換設(shè)備造成表項(xiàng)資源消耗,攻擊者偽造不同源IP地址(例如,網(wǎng)絡(luò)中不存在的IP地址IP3~I(xiàn)Pn)的攻擊報(bào)文。以源IP地址為IP3的攻擊報(bào)文為例,SW1接收到該攻擊報(bào)文后,獲取該攻擊報(bào)文的源IP地址IP3,若SW1中不存在與IP3匹配的臨時(shí)安全表項(xiàng)和有效安全表項(xiàng),則建立IP3的臨時(shí)安全表項(xiàng),并發(fā)送攜帶IP3的DAD NS報(bào)文,由于使用IP3的用戶(hù)主機(jī)并不真實(shí)存在,SW1不可能接收到應(yīng)答的NA報(bào)文,因此,不會(huì)生效IP3的臨時(shí)安全表項(xiàng),即不占用交換設(shè)備中硬件轉(zhuǎn)發(fā)芯片的表項(xiàng)資源。
與前述安全表項(xiàng)建立方法的實(shí)施例相對(duì)應(yīng),本發(fā)明還提供了安全表項(xiàng)建立裝置的實(shí)施例。
本發(fā)明安全表項(xiàng)建立裝置的實(shí)施例可以應(yīng)用在交換設(shè)備上。裝置實(shí)施例可以通過(guò)軟件實(shí)現(xiàn),也可以通過(guò)硬件或者軟硬件結(jié)合的方式實(shí)現(xiàn)。以軟件實(shí)現(xiàn)為例,作為一個(gè)邏輯意義上的裝置,是通過(guò)其所在設(shè)備的處理器運(yùn)行存儲(chǔ)器中對(duì)應(yīng)的計(jì)算機(jī)程序指令形成的。從硬件層面而言,如圖3所示,為本發(fā)明安全表項(xiàng)建立裝置所在設(shè)備的一種硬件結(jié)構(gòu)圖,除了圖3所示的處理器以及非易失性存儲(chǔ)器之外,實(shí)施例中裝置所在的設(shè)備通常根據(jù)該設(shè)備的實(shí)際功能,還可以包括其他硬件,對(duì)此不再贅述。
請(qǐng)參考圖4,為本發(fā)明一個(gè)實(shí)施例中的安全表項(xiàng)建立裝置的結(jié)構(gòu)示意圖。該安全表項(xiàng)建立裝置包括接收單元401、判斷單元402、發(fā)送單元403以及生效單元404,其中:
接收單元401,用于接收用戶(hù)主機(jī)發(fā)送的報(bào)文;
判斷單元402,用于判斷是否存在與所述報(bào)文攜帶的所述用戶(hù)主機(jī)的IP地址匹配的臨時(shí)安全表項(xiàng);
發(fā)送單元403,用于當(dāng)存在與所述用戶(hù)主機(jī)的IP地址匹配的臨時(shí)安全表項(xiàng)時(shí),發(fā)送第一探測(cè)請(qǐng)求報(bào)文,所述第一探測(cè)請(qǐng)求報(bào)文中攜帶所述用戶(hù)主機(jī)的IP地址;
生效單元404,用于當(dāng)接收到針對(duì)所述第一探測(cè)請(qǐng)求報(bào)文回應(yīng)的第一探測(cè)響應(yīng)報(bào)文時(shí),生效所述匹配的臨時(shí)安全表項(xiàng)為有效安全表項(xiàng)。
進(jìn)一步地,所述裝置還包括:
建立單元,用于當(dāng)不存在與所述用戶(hù)主機(jī)的IP地址匹配的有效安全表項(xiàng)時(shí),建立與所述用戶(hù)主機(jī)的IP地址匹配的臨時(shí)安全表項(xiàng)。
進(jìn)一步地,
所述發(fā)送單元403,具體用于當(dāng)交換設(shè)備接收的報(bào)文不為用戶(hù)主機(jī)發(fā)送的第二探測(cè)請(qǐng)求報(bào)文時(shí),發(fā)送所述第一探測(cè)請(qǐng)求報(bào)文。
進(jìn)一步地,所述裝置還包括:
刪除單元,用于當(dāng)未接收到針對(duì)所述第一探測(cè)請(qǐng)求報(bào)文回應(yīng)的第一探測(cè)響應(yīng)報(bào)文時(shí),刪除所述匹配的臨時(shí)安全表項(xiàng)。
進(jìn)一步地,所述裝置還包括:
老化單元,用于設(shè)置臨時(shí)安全表項(xiàng)的老化時(shí)間;當(dāng)達(dá)到老化時(shí)間時(shí),刪除臨時(shí)安全表項(xiàng)。
上述裝置中各個(gè)單元的功能和作用的實(shí)現(xiàn)過(guò)程具體詳見(jiàn)上述方法中對(duì)應(yīng)步驟的實(shí)現(xiàn)過(guò)程,在此不再贅述。
對(duì)于裝置實(shí)施例而言,由于其基本對(duì)應(yīng)于方法實(shí)施例,所以相關(guān)之處參見(jiàn)方法實(shí)施例的部分說(shuō)明即可。以上所描述的裝置實(shí)施例僅僅是示意性的,其中所述作為分離部件說(shuō)明的單元可以是或者也可以不是物理上分開(kāi)的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上。可以根據(jù)實(shí)際的需要選擇其中的部分或者全部模塊來(lái)實(shí)現(xiàn)本發(fā)明方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明保護(hù)的范圍之內(nèi)。