專利名稱:會(huì)話的控制方法及控制裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及信息安全技術(shù),特別涉及一種會(huì)話的控制方法及控制裝置,屬于通信領(lǐng)域。
背景技術(shù):
因特網(wǎng)密鑰交換協(xié)議(Internet Key Exchange,簡(jiǎn)稱IKE)是認(rèn)證及密鑰協(xié)議族的總稱,該協(xié)議族包括因特網(wǎng)安全關(guān)聯(lián)和密鑰管理協(xié)議(簡(jiǎn)稱ISAKMP)、密鑰確定協(xié)議(簡(jiǎn)稱Oakley)以及通用因特網(wǎng)安全密鑰交換協(xié)議(簡(jiǎn)稱SKEME)。
ISAKMP協(xié)議是IKE的核心組成部分,它定義了包括協(xié)商、建立、修改及刪除安全關(guān)聯(lián)的全過(guò)程和報(bào)文格式,為交換密鑰生成和身份認(rèn)證數(shù)據(jù)定義了載荷格式。這些格式的定義為密鑰傳輸和身份認(rèn)證提供了一個(gè)獨(dú)立于密鑰生成技術(shù)、加密算法和身份認(rèn)證方法的固定框架。
ISAKMP提供了兩個(gè)階段的協(xié)商在第一階段為通信雙方建立一個(gè)安全的通道即IKE安全關(guān)聯(lián)(簡(jiǎn)稱IKE SA),用于保護(hù)第二階段中交互的消息的安全;在第二階段為IPsec建立起具體的IPsec安全關(guān)聯(lián)(簡(jiǎn)稱IPsec SA),用于保證通信雙方的數(shù)據(jù)傳輸安全。
現(xiàn)有技術(shù)中,在IKE連接建立的第一階段協(xié)商過(guò)程中,攻擊者可以冒充合法IKE協(xié)商發(fā)起者向通信設(shè)備發(fā)送IKE請(qǐng)求消息;通信設(shè)備收到攻擊者的請(qǐng)求消息后,向其冒充的合法IKE協(xié)商發(fā)起者的設(shè)備發(fā)送回應(yīng)消息,并保留攻擊者發(fā)送的請(qǐng)求狀態(tài),形成半連接狀態(tài)。合法IKE協(xié)商發(fā)起者的設(shè)備收到該回應(yīng)消息后,由于未發(fā)送請(qǐng)求消息則丟棄該回應(yīng)消息。而此時(shí)若該合法IKE協(xié)商發(fā)起者的設(shè)備也向所述通信設(shè)備發(fā)送IKE請(qǐng)求消息,則該通信設(shè)備由于先前已收到攻擊者冒充該合法IKE協(xié)商發(fā)起者發(fā)送的請(qǐng)求消息并正在處理中,則會(huì)丟棄此次收到的請(qǐng)求消息,從而造成合法IKE協(xié)商發(fā)起者的設(shè)備與該通信設(shè)備的正常IKE協(xié)商無(wú)法進(jìn)行。
例如,如圖1所示,網(wǎng)關(guān)A和網(wǎng)關(guān)B是相互信任的IPsec隧道的兩個(gè)端點(diǎn),在正常情況下網(wǎng)關(guān)A可以和網(wǎng)關(guān)B通過(guò)IKE協(xié)商建立IPsec隧道?,F(xiàn)在如果網(wǎng)關(guān)A作為IPsec隧道發(fā)起者欲向網(wǎng)關(guān)B發(fā)起IKE協(xié)商,但是在網(wǎng)關(guān)A發(fā)送IKE協(xié)商的第一個(gè)報(bào)文之前,攻擊者的設(shè)備偽裝成網(wǎng)關(guān)A向網(wǎng)關(guān)B發(fā)送了一個(gè)IKE請(qǐng)求,則網(wǎng)關(guān)B收到該IKE請(qǐng)求后,回應(yīng)給網(wǎng)關(guān)A第二個(gè)IKE報(bào)文即IKE響應(yīng)消息,并且保留攻擊者發(fā)送的請(qǐng)求狀態(tài),形成“半連接”的IKE會(huì)話。而由于網(wǎng)關(guān)A并沒(méi)有發(fā)送第一個(gè)IKE請(qǐng)求,因此網(wǎng)關(guān)A會(huì)丟棄網(wǎng)關(guān)B發(fā)送給網(wǎng)關(guān)A的IKE響應(yīng)消息。此時(shí)如果網(wǎng)關(guān)A向網(wǎng)關(guān)B發(fā)送正常的IKE請(qǐng)求報(bào)文,則網(wǎng)關(guān)B收到這個(gè)請(qǐng)求后無(wú)法辨別是否是真正的網(wǎng)關(guān)A發(fā)送的請(qǐng)求,由于先前已經(jīng)收到了攻擊者冒充網(wǎng)關(guān)A的地址所發(fā)送的請(qǐng)求,并且正在處理該請(qǐng)求,因此會(huì)把真正的網(wǎng)關(guān)A發(fā)送的請(qǐng)求丟棄,從而造成網(wǎng)關(guān)A與網(wǎng)關(guān)B無(wú)法進(jìn)行IKE協(xié)商。以上過(guò)程也就是攻擊者通過(guò)中間設(shè)備實(shí)現(xiàn)的對(duì)IKE協(xié)商的拒絕服務(wù)(簡(jiǎn)稱DoS)攻擊,造成了正常IKE協(xié)商不能進(jìn)行。
在現(xiàn)有的技術(shù)方案中,為了緩解這種DoS攻擊,IKE協(xié)議采用了“甜餅”(Cookie)機(jī)制。Cookie是對(duì)一些必要信息的哈希(簡(jiǎn)稱Hash)值,一般包括通信雙方的IP地址、端口號(hào)、秘密隨機(jī)數(shù)以及日期和時(shí)間等。Cookie機(jī)制是使用IKE報(bào)文中包括的Cookie來(lái)識(shí)別一個(gè)IKE會(huì)話,并設(shè)定IKE會(huì)話的連接總數(shù)。當(dāng)攻擊者通過(guò)IP地址欺騙來(lái)發(fā)起大量交換請(qǐng)求時(shí),系統(tǒng)對(duì)每個(gè)請(qǐng)求生成一個(gè)Cookie回應(yīng)消息,只有在收到請(qǐng)求方返回的消息且該消息中包括先前發(fā)送的請(qǐng)求消息中的Cookie,并且驗(yàn)證該Cookie值無(wú)誤后,才進(jìn)行下一步的交換,否則拒絕交換。對(duì)上文的例子來(lái)說(shuō),當(dāng)攻擊者發(fā)送了固定Cookie值的IKE拒絕服務(wù)攻擊后,只要網(wǎng)關(guān)A發(fā)送的正常請(qǐng)求的IKE報(bào)文中包括的Cookie值與攻擊者發(fā)送的IKE報(bào)文中包括的Cookie值不同,網(wǎng)關(guān)A就可以與網(wǎng)關(guān)B進(jìn)行正常的IKE協(xié)商,建立安全關(guān)聯(lián)。
上述Cookie機(jī)制在有效避免攻擊者采用相同的Cookie進(jìn)行攻擊的同時(shí),引入了更嚴(yán)重的拒絕服務(wù)攻擊問(wèn)題。一方面,根據(jù)Cookie機(jī)制,在系統(tǒng)收到攻擊者發(fā)送的IKE請(qǐng)求報(bào)文后,對(duì)該請(qǐng)求生成一個(gè)Cookie回應(yīng)消息,并且該請(qǐng)求占用了Cookie機(jī)制所限定的總連接數(shù)中的一個(gè)連接數(shù),然后系統(tǒng)一直等待攻擊者返回包括系統(tǒng)發(fā)送的回應(yīng)消息中的Cookie的消息,直到達(dá)到IKE協(xié)議規(guī)定的超時(shí)老化時(shí)間,才釋放該請(qǐng)求所占用的連接數(shù)和其它資源。而另一方面,在正常情況下,IKE協(xié)議規(guī)定的超時(shí)老化時(shí)間比較長(zhǎng),與重傳次數(shù)以及每次的超時(shí)時(shí)間相關(guān),并且每次重傳后的超時(shí)時(shí)間是以指數(shù)形式增長(zhǎng)的。因此,當(dāng)攻擊者在短時(shí)間內(nèi)頻繁發(fā)送包括不同Cookie的IKE請(qǐng)求時(shí),很快就可以在IKE協(xié)議規(guī)定的超時(shí)老化時(shí)間內(nèi)完全占用IKE機(jī)制所限定的最大連接數(shù),導(dǎo)致其它IKE協(xié)商發(fā)起者無(wú)法與系統(tǒng)建立IKE連接,從而導(dǎo)致了拒絕服務(wù)攻擊的后果加重。尤其是,如果攻擊者冒充一個(gè)合法IKE協(xié)商發(fā)起者的身份在短時(shí)間內(nèi)頻繁發(fā)送包括不同Cookie的IKE請(qǐng)求時(shí),將很快占滿IKE的最大連接數(shù)而導(dǎo)致其它IKE協(xié)商發(fā)起者均無(wú)法與系統(tǒng)建立IKE連接。
以上文的應(yīng)用場(chǎng)景為例,當(dāng)攻擊者以變化的Cookie頻繁發(fā)送攻擊報(bào)文的時(shí)候,很快就可以在短時(shí)間內(nèi)把Cookie機(jī)制所限定的IKE會(huì)話總數(shù)占滿,從而導(dǎo)致其他非網(wǎng)關(guān)A地址的網(wǎng)關(guān)無(wú)法與網(wǎng)關(guān)B進(jìn)行正常的IKE協(xié)商。
此外,除了DoS攻擊,還存在其它的一些攻擊也可能耗盡系統(tǒng)資源,導(dǎo)致其他IKE協(xié)商發(fā)起者無(wú)法與系統(tǒng)進(jìn)行正常的IKE協(xié)商。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種會(huì)話的控制方法及控制裝置,能夠有效地克服上述現(xiàn)有技術(shù)的缺陷,大大減少攻擊對(duì)系統(tǒng)資源的占用,保證對(duì)正常的因特網(wǎng)密鑰交換協(xié)議協(xié)商的處理。
為實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明提供了一種會(huì)話的控制方法,包括預(yù)先將系統(tǒng)的合法IKE協(xié)商發(fā)起者劃分為多個(gè)組,每個(gè)組對(duì)應(yīng)一個(gè)可信任對(duì)等體,并為每個(gè)可信任對(duì)等體預(yù)留系統(tǒng)資源;在收到IKE協(xié)商發(fā)起者發(fā)送的IKE協(xié)商過(guò)程的第一個(gè)請(qǐng)求消息后,當(dāng)該IKE協(xié)商發(fā)起者所屬的組對(duì)應(yīng)的可信任對(duì)等體所對(duì)應(yīng)的預(yù)留系統(tǒng)資源未被全部占用時(shí),從該可信任對(duì)等體所對(duì)應(yīng)的預(yù)留系統(tǒng)資源中為該IKE協(xié)商過(guò)程分配對(duì)應(yīng)的系統(tǒng)資源,并向該IKE協(xié)商發(fā)起者返回回應(yīng)消息。
在上述技術(shù)方案中,通過(guò)引入可信任對(duì)等體并為每個(gè)可信任對(duì)等體預(yù)留系統(tǒng)資源,同時(shí)將合法IKE協(xié)商發(fā)起者劃分為多個(gè)組,每個(gè)組與一個(gè)可信任對(duì)等體對(duì)應(yīng),從而使得每個(gè)組中的IKE協(xié)商發(fā)起者不能占用其它組所對(duì)應(yīng)的可信任對(duì)等體的預(yù)留系統(tǒng)資源。在收到IKE協(xié)商發(fā)起者發(fā)送的IKE協(xié)商過(guò)程中的第一個(gè)請(qǐng)求消息后,只有當(dāng)該IKE協(xié)商發(fā)起者所屬的組對(duì)應(yīng)的可信任對(duì)等體所對(duì)應(yīng)的預(yù)留系統(tǒng)資源未被全部占用時(shí),才從該可信任對(duì)等體所對(duì)應(yīng)的預(yù)留系統(tǒng)資源中,為該IKE協(xié)商過(guò)程分配對(duì)應(yīng)的系統(tǒng)資源,并向該IKE協(xié)商發(fā)起者返回回應(yīng)消息。因此,上述技術(shù)方案通過(guò)引入為可信任對(duì)等體預(yù)留系統(tǒng)資源的機(jī)制,將合法IKE協(xié)商發(fā)起者虛擬地劃分為多個(gè)可信任對(duì)等體,不同的可信任對(duì)等體之間不能占用對(duì)方的預(yù)留系統(tǒng)資源,從而有效地避免了攻擊者冒充一個(gè)合法IKE協(xié)商發(fā)起者發(fā)送大量IKE請(qǐng)求從而迅速耗盡系統(tǒng)資源并使得其它合法IKE協(xié)商發(fā)起者無(wú)法進(jìn)行正常的IKE協(xié)商的情況,因此能夠大大減少攻擊對(duì)系統(tǒng)資源的占用,保證對(duì)正常的因特網(wǎng)密鑰交換協(xié)議協(xié)商的處理。并且上述技術(shù)方案適用于對(duì)抗通過(guò)冒充合法IKE協(xié)商發(fā)起者來(lái)占用系統(tǒng)資源的攻擊,而并不僅僅限于對(duì)抗DoS攻擊。
上述技術(shù)方案中,所述預(yù)先將系統(tǒng)的合法IKE協(xié)商發(fā)起者劃分為多個(gè)組,每個(gè)組對(duì)應(yīng)一個(gè)可信任對(duì)等體可具體包括預(yù)先將系統(tǒng)的合法IKE協(xié)商發(fā)起者的IP地址或IP地址所屬的網(wǎng)段劃分為多個(gè)組,每個(gè)組對(duì)應(yīng)一個(gè)可信任對(duì)等體。所述為每個(gè)可信任對(duì)等體預(yù)留系統(tǒng)資源可具體包括為每一個(gè)可信任對(duì)等體設(shè)置預(yù)留的IKE連接數(shù)。其中,一個(gè)組中可以包含一個(gè)或者多個(gè)IKE協(xié)商發(fā)起者的IP地址,也可以使用一個(gè)或多個(gè)IP地址網(wǎng)段來(lái)包括一個(gè)或多個(gè)連續(xù)地址的IKE協(xié)商發(fā)起者。
為了進(jìn)一步地對(duì)同一個(gè)可信任對(duì)等體所對(duì)應(yīng)的合法IKE協(xié)商發(fā)起者對(duì)系統(tǒng)資源的占用進(jìn)行限制以進(jìn)一步對(duì)抗拒絕服務(wù)攻擊,上述技術(shù)方案中還可包括預(yù)先根據(jù)因特網(wǎng)密鑰交換協(xié)議的協(xié)商模式,為每個(gè)可信任對(duì)等體設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間;按照預(yù)設(shè)的檢測(cè)時(shí)間對(duì)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的、已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間進(jìn)行檢測(cè),如果有持續(xù)時(shí)間超過(guò)所述超時(shí)時(shí)間的半連接,則釋放該半連接所占用的資源和連接數(shù)。
在上述技術(shù)方案中,針對(duì)現(xiàn)有技術(shù)中按照IKE協(xié)議規(guī)定的超時(shí)老化時(shí)間無(wú)法及時(shí)地檢測(cè)到攻擊者頻繁發(fā)送的包括不同Cookie的IKE請(qǐng)求報(bào)文的缺陷,通過(guò)根據(jù)IKE的協(xié)商模式(包括主模式和野蠻模式)來(lái)預(yù)先設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間,也就是說(shuō)根據(jù)不同的協(xié)商模式中半連接狀態(tài)的正常持續(xù)時(shí)間來(lái)預(yù)先設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間,并且按照預(yù)設(shè)的檢測(cè)時(shí)間對(duì)已建立的半連接進(jìn)行檢測(cè),對(duì)持續(xù)時(shí)間超出所述預(yù)先設(shè)置的超時(shí)時(shí)間的半連接,釋放其占用的資源和連接數(shù),從而能夠有效地克服現(xiàn)有技術(shù)的缺陷,通過(guò)預(yù)設(shè)的超時(shí)時(shí)間對(duì)半連接的持續(xù)時(shí)間進(jìn)行有效地控制,在攻擊者通過(guò)發(fā)送包括不同的Cookie的請(qǐng)求報(bào)文來(lái)建立半連接從而占用資源和IKE連接數(shù)時(shí),能夠及時(shí)地釋放超出超時(shí)時(shí)間的半連接所占用的資源和連接數(shù),從而能夠保證其它IKE協(xié)商發(fā)起者的正常IKE協(xié)商的順利進(jìn)行。
優(yōu)選地,所述預(yù)先根據(jù)因特網(wǎng)密鑰交換協(xié)議的協(xié)商模式為每個(gè)可信任對(duì)等體設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間可包括當(dāng)可信任對(duì)等體對(duì)應(yīng)的IKE協(xié)商發(fā)起者使用因特網(wǎng)密鑰交換協(xié)議的主模式進(jìn)行協(xié)商時(shí),根據(jù)報(bào)文在網(wǎng)絡(luò)傳輸?shù)臅r(shí)間以及對(duì)端生成D-H公共值的計(jì)算時(shí)間,來(lái)設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間;當(dāng)可信任對(duì)等體對(duì)應(yīng)的IKE協(xié)商發(fā)起者使用因特網(wǎng)密鑰交換協(xié)議的野蠻模式進(jìn)行協(xié)商時(shí),根據(jù)報(bào)文在網(wǎng)絡(luò)傳輸?shù)臅r(shí)間、本端生成D-H公共值的計(jì)算時(shí)間以及對(duì)端對(duì)IKE協(xié)商過(guò)程的第三個(gè)消息進(jìn)行加密的時(shí)間,來(lái)設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間。
為實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明還提供了一種會(huì)話的控制裝置,包括資源預(yù)留模塊,用于預(yù)先將系統(tǒng)的合法IKE協(xié)商發(fā)起者劃分為多個(gè)組,每個(gè)組對(duì)應(yīng)一個(gè)可信任對(duì)等體,并為每個(gè)可信任對(duì)等體預(yù)留系統(tǒng)資源;控制模塊,與所述資源預(yù)留模塊連接,用于在收到IKE協(xié)商發(fā)起者發(fā)送的IKE協(xié)商過(guò)程的第一個(gè)請(qǐng)求消息后,當(dāng)所述資源預(yù)留模塊為該IKE協(xié)商發(fā)起者所屬的組對(duì)應(yīng)的可信任對(duì)等體所預(yù)留的系統(tǒng)資源未被全部占用時(shí),從該可信任對(duì)等體所對(duì)應(yīng)的預(yù)留系統(tǒng)資源中為該IKE協(xié)商過(guò)程分配對(duì)應(yīng)的系統(tǒng)資源,并向該IKE協(xié)商發(fā)起者返回回應(yīng)消息。
在上述技術(shù)方案中,通過(guò)資源預(yù)留模塊預(yù)先為每個(gè)可信任對(duì)等體預(yù)留系統(tǒng)資源,通過(guò)控制模塊在收到IKE協(xié)商發(fā)起者發(fā)送的IKE協(xié)商過(guò)程的第一個(gè)請(qǐng)求消息后,根據(jù)該IKE協(xié)商發(fā)起者所屬的組對(duì)應(yīng)的可信任對(duì)等體的預(yù)留系統(tǒng)資源的占用狀況,來(lái)控制是否對(duì)該請(qǐng)求消息進(jìn)行回應(yīng)及分配資源,從而使得屬于不同的組的IKE協(xié)商發(fā)起者不能互相占用對(duì)方的預(yù)留系統(tǒng)資源,有效地限制了冒充合法IKE協(xié)商發(fā)起者的攻擊對(duì)系統(tǒng)資源的占用,有效地避免了攻擊者冒充一個(gè)合法IKE協(xié)商發(fā)起者發(fā)送大量IKE請(qǐng)求從而迅速耗盡系統(tǒng)資源并使得其它合法IKE協(xié)商發(fā)起者無(wú)法進(jìn)行正常的IKE協(xié)商的情況,因此能夠大大減少攻擊對(duì)系統(tǒng)資源的占用,保證對(duì)正常的因特網(wǎng)密鑰交換協(xié)議協(xié)商的處理。并且上述技術(shù)方案適用于對(duì)抗通過(guò)冒充合法IKE協(xié)商發(fā)起者來(lái)占用系統(tǒng)資源的攻擊,而并不僅僅限于對(duì)抗DoS攻擊。
在上述技術(shù)方案中,所述資源預(yù)留模塊可包括IKE協(xié)商發(fā)起者劃分模塊,用于預(yù)先將系統(tǒng)的合法IKE協(xié)商發(fā)起者的IP地址或IP地址所屬的網(wǎng)段劃分為多個(gè)組,每個(gè)組對(duì)應(yīng)一個(gè)可信任對(duì)等體。其中,一個(gè)組中可以包含一個(gè)或者多個(gè)I KE協(xié)商發(fā)起者的IP地址,也可以使用一個(gè)或多個(gè)IP地址網(wǎng)段來(lái)包括一個(gè)或多個(gè)連續(xù)地址的IKE協(xié)商發(fā)起者。所述資源預(yù)留模塊還可包括IKE連接預(yù)留模塊,用于為每一個(gè)可信任對(duì)等體設(shè)置預(yù)留的IKE連接數(shù)。
為了進(jìn)一步地對(duì)同一個(gè)可信任對(duì)等體所對(duì)應(yīng)的合法IKE協(xié)商發(fā)起者對(duì)系統(tǒng)資源的占用進(jìn)行限制以進(jìn)一步對(duì)抗拒絕服務(wù)攻擊,上述技術(shù)方案中所述控制模塊可包括設(shè)置模塊,用于預(yù)先根據(jù)因特網(wǎng)密鑰交換協(xié)議的協(xié)商模式,為每個(gè)可信任對(duì)等體設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間;檢測(cè)模塊,與設(shè)置模塊連接,用于按照設(shè)置模塊所預(yù)設(shè)的檢測(cè)時(shí)間,對(duì)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的、已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間進(jìn)行檢測(cè),如果有持續(xù)時(shí)間超過(guò)所述超時(shí)時(shí)間的半連接,則釋放該半連接所占用的資源和連接數(shù)。
在上述技術(shù)方案中,通過(guò)針對(duì)現(xiàn)有技術(shù)中按照IKE協(xié)議規(guī)定的超時(shí)老化時(shí)間無(wú)法及時(shí)地檢測(cè)到攻擊者頻繁發(fā)送的包括不同Cookie的IKE請(qǐng)求報(bào)文的缺陷,通過(guò)設(shè)置模塊根據(jù)IKE的協(xié)商模式(包括主模式和野蠻模式)來(lái)預(yù)先設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間,也就是說(shuō)通過(guò)設(shè)置模塊根據(jù)不同的IKE協(xié)商模式中半連接狀態(tài)的正常持續(xù)時(shí)間來(lái)預(yù)先設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間,并且通過(guò)檢測(cè)模塊按照預(yù)設(shè)的檢測(cè)時(shí)間對(duì)已建立的半連接的持續(xù)時(shí)間進(jìn)行檢測(cè),對(duì)持續(xù)時(shí)間超出所述預(yù)先設(shè)置的超時(shí)時(shí)間的半連接,釋放其占用的資源和連接數(shù),從而能夠有效地克服現(xiàn)有技術(shù)的缺陷,通過(guò)預(yù)設(shè)的超時(shí)時(shí)間對(duì)半連接的持續(xù)時(shí)間進(jìn)行有效地控制,在攻擊者通過(guò)發(fā)送包括不同的Cookie的請(qǐng)求報(bào)文來(lái)建立半連接從而占用資源和IKE連接數(shù)時(shí),能夠及時(shí)地釋放超出超時(shí)時(shí)間的半連接所占用的資源和連接數(shù),從而能夠保證其它IKE協(xié)商發(fā)起者的正常IKE協(xié)商的順利進(jìn)行。
優(yōu)選地,所述設(shè)置模塊可包括主模式設(shè)置模塊,用于當(dāng)可信任對(duì)等體對(duì)應(yīng)的IKE協(xié)商發(fā)起者使用因特網(wǎng)密鑰交換協(xié)議的主模式進(jìn)行協(xié)商時(shí),根據(jù)報(bào)文在網(wǎng)絡(luò)傳輸?shù)臅r(shí)間以及對(duì)端生成D-H公共值的計(jì)算時(shí)間,來(lái)設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間;和/或野蠻模式設(shè)置模塊,用于當(dāng)可信任對(duì)等體對(duì)應(yīng)的IKE協(xié)商發(fā)起者使用因特網(wǎng)密鑰交換協(xié)議的野蠻模式進(jìn)行協(xié)商時(shí),根據(jù)報(bào)文在網(wǎng)絡(luò)傳輸?shù)臅r(shí)間、本端生成D-H公共值的計(jì)算時(shí)間以及對(duì)端對(duì)IKE協(xié)商過(guò)程的第三個(gè)消息進(jìn)行加密的時(shí)間,來(lái)設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間。
綜上所述,本發(fā)明通過(guò)將合法IKE協(xié)商發(fā)起者劃分為多個(gè)組,每個(gè)組與一個(gè)可信任對(duì)等體對(duì)應(yīng),并為每個(gè)可信任對(duì)等體預(yù)留系統(tǒng)資源,不屬于同一組的IKE協(xié)商發(fā)起者不能占用對(duì)方所屬的組對(duì)應(yīng)的可信任對(duì)等體的預(yù)留系統(tǒng)資源,有效地限制了冒充合法IKE協(xié)商發(fā)起者的攻擊對(duì)系統(tǒng)資源的占用;通過(guò)在收到IKE協(xié)商發(fā)起者發(fā)送的IKE協(xié)商過(guò)程中的第一個(gè)請(qǐng)求消息后,只有當(dāng)該IKE協(xié)商發(fā)起者所屬的組對(duì)應(yīng)的可信任對(duì)等體所對(duì)應(yīng)的預(yù)留系統(tǒng)資源未被全部占用時(shí),才從該可信任對(duì)等體所對(duì)應(yīng)的預(yù)留系統(tǒng)資源中,為該IKE協(xié)商過(guò)程分配對(duì)應(yīng)的系統(tǒng)資源,并向該IKE協(xié)商發(fā)起者返回回應(yīng)消息,從而有效地避免了攻擊者冒充一個(gè)合法IKE協(xié)商發(fā)起者發(fā)送大量IKE請(qǐng)求從而迅速耗盡系統(tǒng)資源并使得其它合法IKE協(xié)商發(fā)起者無(wú)法進(jìn)行正常的IKE協(xié)商的情況,能夠大大減少攻擊對(duì)系統(tǒng)資源的占用,保證對(duì)正常的因特網(wǎng)密鑰交換協(xié)議協(xié)商的處理。
圖1為現(xiàn)有的拒絕服務(wù)攻擊模式的示意圖;圖2為本發(fā)明會(huì)話的控制方法的實(shí)施例一的流程示意圖;圖3為本發(fā)明會(huì)話的控制方法的實(shí)施例一的另一示意圖;圖4為本發(fā)明會(huì)話的控制裝置的實(shí)施例一的結(jié)構(gòu)示意圖;圖5為本發(fā)明會(huì)話的控制裝置的實(shí)施例二的結(jié)構(gòu)示意圖;圖6為本發(fā)明會(huì)話的控制裝置的實(shí)施例三的結(jié)構(gòu)示意圖。
具體實(shí)施例方式
下面結(jié)合附圖和實(shí)施例,對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。
現(xiàn)有技術(shù)中,因特網(wǎng)密鑰交換協(xié)議(簡(jiǎn)稱IKE)采用Cookie機(jī)制,使用IKE報(bào)文中包括的Cookie來(lái)識(shí)別一個(gè)IKE會(huì)話,并設(shè)定IKE會(huì)話的連接總數(shù)。雖然這種Cookie機(jī)制能夠有效地對(duì)抗攻擊者通過(guò)發(fā)送大量包括固定的Cookie值的IKE請(qǐng)求報(bào)文來(lái)試圖耗盡系統(tǒng)資源的拒絕服務(wù)攻擊,但卻無(wú)法有效地對(duì)抗攻擊者通過(guò)發(fā)送大量包括變化的Cookie值的IKE請(qǐng)求報(bào)文來(lái)耗盡系統(tǒng)資源的拒絕服務(wù)攻擊。此外,除了DoS攻擊,還存在其它的一些攻擊也可能耗盡系統(tǒng)資源,導(dǎo)致其他IKE協(xié)商發(fā)起者無(wú)法與系統(tǒng)進(jìn)行正常的IKE協(xié)商。
針對(duì)上述現(xiàn)有技術(shù)的不足之處,通過(guò)引入可信任對(duì)等體的機(jī)制,為每個(gè)可信任對(duì)等體預(yù)留系統(tǒng)資源,同時(shí)將合法IKE協(xié)商發(fā)起者劃分為多個(gè)組,每個(gè)組與一個(gè)可信任對(duì)等體對(duì)應(yīng),從而使得每個(gè)組中的IKE協(xié)商發(fā)起者不能占用其它組所對(duì)應(yīng)的可信任對(duì)等體的預(yù)留系統(tǒng)資源。因此有效地避免了攻擊者冒充一個(gè)合法IKE協(xié)商發(fā)起者發(fā)送大量IKE請(qǐng)求從而迅速耗盡系統(tǒng)資源并使得其它合法IKE協(xié)商發(fā)起者無(wú)法進(jìn)行正常的IKE協(xié)商的情況,大大減少了攻擊對(duì)系統(tǒng)資源的占用,保證對(duì)正常的因特網(wǎng)密鑰交換協(xié)議協(xié)商的處理,適用于對(duì)抗通過(guò)冒充合法IKE協(xié)商發(fā)起者來(lái)占用系統(tǒng)資源的攻擊,而并不僅僅限于對(duì)抗DoS攻擊。
圖2為本發(fā)明會(huì)話控制方法的實(shí)施例一的流程示意圖,本實(shí)施例一包括以下步驟首先在步驟1中,預(yù)先將系統(tǒng)的合法IKE協(xié)商發(fā)起者劃分為多個(gè)組,每個(gè)組對(duì)應(yīng)一個(gè)可信任對(duì)等體,并為每個(gè)可信任對(duì)等體預(yù)留系統(tǒng)資源;然后在步驟2中,在收到IKE協(xié)商發(fā)起者發(fā)送的IKE協(xié)商過(guò)程的第一個(gè)請(qǐng)求消息后,當(dāng)該IKE協(xié)商發(fā)起者所屬的組對(duì)應(yīng)的可信任對(duì)等體所對(duì)應(yīng)的預(yù)留系統(tǒng)資源未被全部占用時(shí),從該可信任對(duì)等體所對(duì)應(yīng)的預(yù)留系統(tǒng)資源中為該IKE協(xié)商過(guò)程分配對(duì)應(yīng)的系統(tǒng)資源,并向該IKE協(xié)商發(fā)起者返回回應(yīng)消息。
本實(shí)施例一針對(duì)攻擊者冒充合法IKE協(xié)商發(fā)起者通過(guò)大量發(fā)送IKE請(qǐng)求消息而耗盡系統(tǒng)資源的情況,通過(guò)預(yù)先將合法IKE協(xié)商發(fā)起者劃分為多個(gè)組,并將每個(gè)組與一個(gè)可信任對(duì)等體對(duì)應(yīng),從而使得每個(gè)組中的IKE協(xié)商發(fā)起者不能占用其它組所對(duì)應(yīng)的可信任對(duì)等體的預(yù)留系統(tǒng)資源。在收到IKE協(xié)商發(fā)起者發(fā)送的IKE協(xié)商過(guò)程中的第一個(gè)請(qǐng)求消息后,只有當(dāng)該IKE協(xié)商發(fā)起者所屬的組對(duì)應(yīng)的可信任對(duì)等體所對(duì)應(yīng)的預(yù)留系統(tǒng)資源未被全部占用時(shí),才從該可信任對(duì)等體所對(duì)應(yīng)的預(yù)留系統(tǒng)資源中,為該IKE協(xié)商過(guò)程分配對(duì)應(yīng)的系統(tǒng)資源,并向該IKE協(xié)商發(fā)起者返回回應(yīng)消息。因此,上述技術(shù)方案通過(guò)引入為可信任對(duì)等體預(yù)留系統(tǒng)資源的機(jī)制,將合法IKE協(xié)商發(fā)起者虛擬地劃分為多個(gè)可信任對(duì)等體,不同的可信任對(duì)等體之間不能占用對(duì)方的預(yù)留系統(tǒng)資源,從而有效地避免了攻擊者冒充一個(gè)合法IKE協(xié)商發(fā)起者發(fā)送大量IKE請(qǐng)求從而迅速耗盡系統(tǒng)資源并使得其它合法IKE協(xié)商發(fā)起者無(wú)法進(jìn)行正常的IKE協(xié)商的情況,因此能夠大大減少攻擊對(duì)系統(tǒng)資源的占用,保證對(duì)正常的因特網(wǎng)密鑰交換協(xié)議協(xié)商的處理。并且本實(shí)施例一適用于對(duì)抗通過(guò)冒充合法IKE協(xié)商發(fā)起者來(lái)占用系統(tǒng)資源的攻擊,而并不僅僅限于對(duì)抗DoS攻擊。
優(yōu)選地,本實(shí)施例一中,所述預(yù)先將系統(tǒng)的合法IKE協(xié)商發(fā)起者劃分為多個(gè)組,每個(gè)組對(duì)應(yīng)一個(gè)可信任對(duì)等體可具體包括預(yù)先將系統(tǒng)的合法IKE協(xié)商發(fā)起者的IP地址或IP地址所屬的網(wǎng)段劃分為多個(gè)組,每個(gè)組對(duì)應(yīng)一個(gè)可信任對(duì)等體。其中,一個(gè)組中可以包含一個(gè)或者多個(gè)IKE協(xié)商發(fā)起者的IP地址,也可以使用一個(gè)或多個(gè)IP地址網(wǎng)段來(lái)包括一個(gè)或多個(gè)連續(xù)地址的IKE協(xié)商發(fā)起者。
在應(yīng)用于對(duì)抗拒絕服務(wù)攻擊的應(yīng)用場(chǎng)景時(shí),所述為每個(gè)可信任對(duì)等體預(yù)留系統(tǒng)資源可具體包括為每一個(gè)可信任對(duì)等體設(shè)置預(yù)留的IKE連接數(shù)。
圖3為本實(shí)施例一的另一示意圖,網(wǎng)關(guān)C預(yù)先將合法IKE協(xié)商發(fā)起者劃分為兩個(gè)組,分別對(duì)應(yīng)于可信任對(duì)等體M和可信任對(duì)等體N,并為可信任對(duì)等體M預(yù)留資源C1,為可信任對(duì)等體N預(yù)留資源C2,這樣可信任對(duì)等體M所對(duì)應(yīng)的組中的IKE協(xié)商發(fā)起者只能占用預(yù)留資源C1,而不能占用預(yù)留資源C2,同樣,可信任對(duì)等體N所對(duì)應(yīng)的組中的IKE協(xié)商發(fā)起者只能占用預(yù)留資源C2,而不能占用預(yù)留資源C1。這樣攻擊者在冒充可信任對(duì)等體M所對(duì)應(yīng)的組中的IKE協(xié)商發(fā)起者并發(fā)起大量的IKE請(qǐng)求消息以占用系統(tǒng)資源時(shí),最多只能全部占用預(yù)留資源C1,而不能占用其它可信任對(duì)等體對(duì)應(yīng)的預(yù)留資源。由此可見(jiàn),本實(shí)施例一大大減少了攻擊對(duì)系統(tǒng)資源的占用,有效地避免了因攻擊耗盡系統(tǒng)資源而導(dǎo)致其他合法IKE協(xié)商發(fā)起者無(wú)法進(jìn)行正常的IKE協(xié)商的情況。
下面在本發(fā)明會(huì)話的控制方法的實(shí)施例二中,在實(shí)施例一的技術(shù)方案基礎(chǔ)上進(jìn)一步提供了對(duì)所屬組對(duì)應(yīng)于同一個(gè)可信任對(duì)等體的IKE協(xié)商發(fā)起者的IKE協(xié)商所占用的資源進(jìn)行控制的實(shí)施方式,從而能夠進(jìn)一步地避免攻擊者所占用的資源對(duì)與攻擊者對(duì)應(yīng)于同一個(gè)可信任對(duì)等體的IKE協(xié)商發(fā)起者的正常IKE協(xié)商的影響。本實(shí)施例二與上述實(shí)施例一的區(qū)別在于還包括預(yù)先根據(jù)因特網(wǎng)密鑰交換協(xié)議的協(xié)商模式,為每個(gè)可信任對(duì)等體設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間;按照預(yù)設(shè)的檢測(cè)時(shí)間對(duì)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的、已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間進(jìn)行檢測(cè),如果有持續(xù)時(shí)間超過(guò)所述超時(shí)時(shí)間的半連接,則釋放該半連接所占用的資源和連接數(shù)。
本實(shí)施例二除了解決上述實(shí)施例一所解決的技術(shù)問(wèn)題外,還解決了現(xiàn)有技術(shù)中的如下技術(shù)問(wèn)題由于IKE協(xié)議本身規(guī)定的超時(shí)老化時(shí)間過(guò)長(zhǎng),無(wú)法及時(shí)地對(duì)攻擊者發(fā)送的請(qǐng)求報(bào)文所建立的半連接進(jìn)行釋放資源,從而使得攻擊者能夠很快耗盡系統(tǒng)資源而無(wú)法及時(shí)進(jìn)行緩解。針對(duì)上述技術(shù)問(wèn)題,本實(shí)施例二通過(guò)預(yù)先根據(jù)IKE的不同協(xié)商模式(包括主模式和野蠻模式)來(lái)設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間,從而使得該超時(shí)時(shí)間能夠最優(yōu)地體現(xiàn)IKE的不同協(xié)商模式中正常IKE會(huì)話的半連接持續(xù)時(shí)間,而根據(jù)該超時(shí)時(shí)間對(duì)所建立的半連接的持續(xù)時(shí)間進(jìn)行控制,克服了現(xiàn)有技術(shù)中IKE的超時(shí)老化時(shí)間過(guò)長(zhǎng)的缺陷,能夠有效地甄別和檢測(cè)出攻擊者所發(fā)送的IKE請(qǐng)求報(bào)文所建立的半連接,并釋放所檢測(cè)到的半連接所占用的資源和連接數(shù)。因此,通過(guò)采用本實(shí)施例二提供的方法,在攻擊者通過(guò)發(fā)送包括不同的Cookie的請(qǐng)求報(bào)文來(lái)建立半連接從而占用資源和IKE連接數(shù)時(shí),不僅能夠有效地避免攻擊者冒充合法IKE協(xié)商發(fā)起者發(fā)起的攻擊對(duì)其它可信任對(duì)等體對(duì)應(yīng)的合法IKE協(xié)商發(fā)起者的資源的占用,而且能夠保證與攻擊者對(duì)應(yīng)于同一個(gè)可信任對(duì)等體的其它合法IKE協(xié)商發(fā)起者的正常IKE協(xié)商的順利進(jìn)行。
IKE會(huì)話的第一階段可以選擇主模式或野蠻模式。主模式由發(fā)起方和響應(yīng)者之間交換的6條消息組成。其中前兩條消息協(xié)商策略;接下來(lái)兩條消息交換Diffie-Hellman公開(kāi)值(簡(jiǎn)稱D-H公開(kāi)值)及交換所必須的隨機(jī)數(shù);最后兩條消息交換標(biāo)識(shí)數(shù)據(jù)并認(rèn)證Diffie-Hellman交換。野蠻模式由發(fā)起方和響應(yīng)者之間的三次握手組成。前兩條消息協(xié)商策略、交換Diffie-Hellman公開(kāi)值、隨機(jī)數(shù)以及身份信息。另外第二條消息還對(duì)響應(yīng)者進(jìn)行認(rèn)證。第三條消息對(duì)發(fā)起者進(jìn)行認(rèn)證并提供交換參與方的身份證明。
對(duì)于主模式,IKE協(xié)議只要接收到IEK主模式協(xié)商的第三個(gè)報(bào)文就認(rèn)為該過(guò)程是一個(gè)合法交互過(guò)程,在這個(gè)過(guò)程中所占用的時(shí)間有a)報(bào)文在網(wǎng)絡(luò)傳輸?shù)臅r(shí)間,這個(gè)時(shí)間包括兩個(gè)時(shí)間,一個(gè)是發(fā)出去達(dá)到對(duì)端的時(shí)間,另一個(gè)是對(duì)端相應(yīng)報(bào)文到達(dá)本端的時(shí)間;b)對(duì)端生成D-H公共值的計(jì)算時(shí)間。這個(gè)時(shí)間取決于對(duì)端設(shè)備性能。
因此,上述實(shí)施例二中,當(dāng)可信任對(duì)等體對(duì)應(yīng)的IKE協(xié)商發(fā)起者使用因特網(wǎng)密鑰交換協(xié)議的主模式進(jìn)行協(xié)商時(shí),所述預(yù)先根據(jù)因特網(wǎng)密鑰交換協(xié)議的協(xié)商模式為每個(gè)可信任對(duì)等體設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間可包括根據(jù)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的報(bào)文在網(wǎng)絡(luò)傳輸?shù)臅r(shí)間以及對(duì)端生成D-H公共值(IKE會(huì)話過(guò)程中需要計(jì)算的數(shù)值)的計(jì)算時(shí)間,來(lái)設(shè)置每個(gè)可信任對(duì)等體所對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間。
對(duì)于野蠻模式,IKE協(xié)議只要接收到IEK野蠻模式協(xié)商的第三個(gè)報(bào)文就認(rèn)為該過(guò)程是一個(gè)合法交互過(guò)程,在這個(gè)過(guò)程中所占用的時(shí)間有a)報(bào)文在網(wǎng)絡(luò)傳輸?shù)臅r(shí)間,這個(gè)時(shí)間包括兩個(gè)時(shí)間,一個(gè)是發(fā)送的報(bào)文到達(dá)對(duì)端所經(jīng)過(guò)的時(shí)間,另一個(gè)是對(duì)端相應(yīng)報(bào)文到達(dá)本端所經(jīng)過(guò)的時(shí)間;b)本端成D-H公共值的計(jì)算時(shí)間。這個(gè)時(shí)間取決于本端設(shè)備性能;c)對(duì)端加密第三個(gè)消息所需要的時(shí)間,這個(gè)時(shí)間取決于對(duì)端的性能。
因此,上述實(shí)施例二中,當(dāng)可信任對(duì)等體對(duì)應(yīng)的IKE協(xié)商發(fā)起者使用因特網(wǎng)密鑰交換協(xié)議的野蠻模式進(jìn)行協(xié)商時(shí),所述預(yù)先根據(jù)因特網(wǎng)密鑰交換協(xié)議的協(xié)商模式為每個(gè)可信任對(duì)等體設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間可包括根據(jù)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的報(bào)文在網(wǎng)絡(luò)傳輸?shù)臅r(shí)間、本端生成D-H公共值的計(jì)算時(shí)間以及對(duì)端對(duì)IKE協(xié)商過(guò)程的第三個(gè)消息進(jìn)行加密的時(shí)間,來(lái)設(shè)置每個(gè)可信任對(duì)等體所對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間。
本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以根據(jù)實(shí)際應(yīng)用場(chǎng)景的需求來(lái)靈活設(shè)置上述實(shí)施例二中所述的預(yù)設(shè)的檢測(cè)時(shí)間來(lái)進(jìn)行所述檢測(cè),例如可按照預(yù)設(shè)的周期對(duì)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的、已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間進(jìn)行檢測(cè),也可通過(guò)使用時(shí)間戳來(lái)進(jìn)行所述檢測(cè)等等,其均應(yīng)在本發(fā)明技術(shù)方案所要求保護(hù)的范圍之內(nèi)。
下面在實(shí)施例三中給出了使用時(shí)間戳來(lái)進(jìn)行所述檢測(cè)的具體實(shí)施方式
。
本實(shí)施例三與上述實(shí)施例二的區(qū)別在于,所述按照預(yù)設(shè)的檢測(cè)時(shí)間對(duì)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的、已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間進(jìn)行檢測(cè)包括在建立每個(gè)可信任對(duì)等體所對(duì)應(yīng)的每個(gè)因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接時(shí),記錄該半連接建立時(shí)的時(shí)間戳;在每個(gè)可信任對(duì)等體所對(duì)應(yīng)的因特網(wǎng)密鑰交換協(xié)議會(huì)話的總連接數(shù)被耗盡時(shí),根據(jù)所記錄的時(shí)間戳以及系統(tǒng)當(dāng)前的時(shí)間,來(lái)計(jì)算已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間。
本實(shí)施例三在實(shí)施例二的基礎(chǔ)上,通過(guò)為每個(gè)可信任對(duì)等體所對(duì)應(yīng)的每個(gè)半連接記錄建立時(shí)的時(shí)間戳,并在每個(gè)可信任對(duì)等體所對(duì)應(yīng)的IKE會(huì)話的總連接數(shù)被耗盡時(shí)才根據(jù)所記錄的時(shí)間戳對(duì)已建立的半連接進(jìn)行檢測(cè),而非上述的按照預(yù)設(shè)的周期對(duì)已建立的半連接進(jìn)行檢測(cè)。本實(shí)施例三實(shí)質(zhì)上是在每個(gè)可信任對(duì)等體所對(duì)應(yīng)的IKE的總連接數(shù)被耗盡即有可能出現(xiàn)了拒絕服務(wù)攻擊時(shí),啟動(dòng)加速老化的機(jī)制,根據(jù)所記錄的時(shí)間戳對(duì)已建立的半連接進(jìn)行檢測(cè),促進(jìn)攻擊報(bào)文的老化,釋放攻擊報(bào)文所占用的資源和連接數(shù);如果每個(gè)可信任對(duì)等體所對(duì)應(yīng)的IKE的總連接數(shù)沒(méi)有被耗盡也即沒(méi)有出現(xiàn)攻擊現(xiàn)象,在這種半連接資源可用的情況下則不啟用加速老化,仍使用現(xiàn)有IKE協(xié)議的超時(shí)老化時(shí)間來(lái)進(jìn)行半連接的老化即釋放資源處理。因此,本實(shí)施例三在達(dá)到上述實(shí)施例二所達(dá)到的技術(shù)效果的同時(shí),相對(duì)于按照預(yù)設(shè)的周期進(jìn)行檢測(cè)的方式來(lái)說(shuō),能夠更及時(shí)地對(duì)拒絕服務(wù)攻擊做出檢測(cè)處理,而在沒(méi)有受到拒絕服務(wù)攻擊時(shí)不進(jìn)行檢測(cè)則能夠減少對(duì)系統(tǒng)性能的影響。
優(yōu)選地,為避免誤釋放正常IKE會(huì)話的半連接資源,在檢測(cè)到持續(xù)時(shí)間超出預(yù)設(shè)的超時(shí)時(shí)間的半連接后,可只釋放其中一部分半連接,以滿足其他IKE協(xié)商發(fā)起者進(jìn)行IKE協(xié)商的需要。換言之,在上述實(shí)施例二和實(shí)施例三中,所述如果有持續(xù)時(shí)間超過(guò)所述超時(shí)時(shí)間的半連接,則釋放該半連接所占用的資源和連接數(shù)可包括如果檢測(cè)到持續(xù)時(shí)間超過(guò)所述超時(shí)時(shí)間的半連接,則釋放所檢測(cè)到的半連接中預(yù)設(shè)數(shù)量的半連接所占用的資源和連接數(shù)。
下面在本發(fā)明會(huì)話的控制方法的實(shí)施例四中,進(jìn)一步提供了實(shí)施例三中所述記錄時(shí)間戳的具體方式。本實(shí)施例四與上述實(shí)施例三的區(qū)別在于所述在建立每個(gè)可信任對(duì)等體所對(duì)應(yīng)的每個(gè)因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接時(shí),記錄該半連接建立時(shí)的時(shí)間戳具體包括在建立每個(gè)可信任對(duì)等體所對(duì)應(yīng)的每個(gè)因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接時(shí),在半連接狀態(tài)表中建立對(duì)應(yīng)的表項(xiàng),并在該表項(xiàng)中記錄請(qǐng)求報(bào)文中包括的Cookie值及建立時(shí)的時(shí)間戳,并在收到該半連接的包括所記錄的Cookie的第三個(gè)報(bào)文時(shí)刪除該表項(xiàng);所述在每個(gè)可信任對(duì)等體所對(duì)應(yīng)的因特網(wǎng)密鑰交換協(xié)議會(huì)話的總連接數(shù)被耗盡時(shí),根據(jù)所記錄的時(shí)間戳以及系統(tǒng)當(dāng)前的時(shí)間,來(lái)計(jì)算已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間具體包括在每個(gè)可信任對(duì)等體所對(duì)應(yīng)的因特網(wǎng)密鑰交換協(xié)議會(huì)話的總連接數(shù)被耗盡時(shí),根據(jù)半連接狀態(tài)表中每一個(gè)表項(xiàng)的時(shí)間戳以及系統(tǒng)當(dāng)前的時(shí)間,來(lái)計(jì)算該表項(xiàng)所對(duì)應(yīng)的半連接的持續(xù)時(shí)間;所述如果有持續(xù)時(shí)間超過(guò)所述超時(shí)時(shí)間的半連接,則釋放該半連接所占用的資源和連接數(shù)具體包括如果檢測(cè)到持續(xù)時(shí)間超過(guò)所述超時(shí)時(shí)間的半連接,則刪除所檢測(cè)到的半連接中預(yù)設(shè)數(shù)量的半連接所對(duì)應(yīng)的表項(xiàng),并釋放所述預(yù)設(shè)數(shù)量的半連接所占用的資源和連接數(shù)。
本實(shí)施例四中進(jìn)一步提供了記錄時(shí)間戳并根據(jù)時(shí)間戳來(lái)進(jìn)行檢測(cè)的具體實(shí)施方式
,即將半連接包括的Cookie及對(duì)應(yīng)的時(shí)間戳記錄在半連接狀態(tài)表對(duì)應(yīng)的表項(xiàng)中;當(dāng)收到該半連接的IKE會(huì)話的第三個(gè)報(bào)文(也就是發(fā)起IKE會(huì)話的請(qǐng)求端發(fā)送的第二個(gè)報(bào)文)時(shí),刪除對(duì)應(yīng)的表項(xiàng);當(dāng)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的IKE總連接數(shù)耗盡時(shí)檢測(cè)半連接狀態(tài)表中各表項(xiàng)的時(shí)間戳與系統(tǒng)當(dāng)前時(shí)間的差值是否超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,并釋放預(yù)設(shè)數(shù)量的檢測(cè)到的表項(xiàng)所占用的資源和連接數(shù)。本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可根據(jù)具體應(yīng)用場(chǎng)景的需求,靈活選擇所述記錄時(shí)間戳并根據(jù)時(shí)間戳來(lái)進(jìn)行檢測(cè)的實(shí)施方式,其均應(yīng)在本發(fā)明技術(shù)方案所要求保護(hù)的范圍之內(nèi)。
下面在表1中給出了本實(shí)施例四中所述的半連接狀態(tài)表的示例表,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可根據(jù)具體應(yīng)用場(chǎng)景的需求靈活設(shè)置所述半連接狀態(tài)表的格式。
表1半連接狀態(tài)表示例表
基于上述構(gòu)思,本發(fā)明還提供了一種會(huì)話的控制裝置,圖4為本發(fā)明會(huì)話的控制裝置的實(shí)施例一的結(jié)構(gòu)示意圖,本實(shí)施例一包括資源預(yù)留模塊41,用于預(yù)先將系統(tǒng)的合法IKE協(xié)商發(fā)起者劃分為多個(gè)組,每個(gè)組對(duì)應(yīng)一個(gè)可信任對(duì)等體,并為每個(gè)可信任對(duì)等體預(yù)留系統(tǒng)資源;控制模塊42,與所述資源預(yù)留模塊41連接,用于在收到IKE協(xié)商發(fā)起者發(fā)送的IKE協(xié)商過(guò)程的第一個(gè)請(qǐng)求消息后,當(dāng)所述資源預(yù)留模塊41為該IKE協(xié)商發(fā)起者所屬的組對(duì)應(yīng)的可信任對(duì)等體所預(yù)留的系統(tǒng)資源未被全部占用時(shí),從該可信任對(duì)等體所對(duì)應(yīng)的預(yù)留系統(tǒng)資源中為該IKE協(xié)商過(guò)程分配對(duì)應(yīng)的系統(tǒng)資源,并向該IKE協(xié)商發(fā)起者返回回應(yīng)消息。
在上述本發(fā)明會(huì)話的控制裝置的實(shí)施例一中,通過(guò)資源預(yù)留模塊預(yù)先為每個(gè)可信任對(duì)等體預(yù)留系統(tǒng)資源,通過(guò)控制模塊在收到IKE協(xié)商發(fā)起者發(fā)送的IKE協(xié)商過(guò)程的第一個(gè)請(qǐng)求消息后,根據(jù)該IKE協(xié)商發(fā)起者所屬的組對(duì)應(yīng)的可信任對(duì)等體的預(yù)留系統(tǒng)資源的占用狀況,來(lái)控制是否對(duì)該請(qǐng)求消息進(jìn)行回應(yīng)及分配資源,從而使得屬于不同的組的IKE協(xié)商發(fā)起者不能互相占用對(duì)方的預(yù)留系統(tǒng)資源,有效地限制了冒充合法IKE協(xié)商發(fā)起者的攻擊對(duì)系統(tǒng)資源的占用,有效地避免了攻擊者冒充一個(gè)合法IKE協(xié)商發(fā)起者發(fā)送大量IKE請(qǐng)求從而迅速耗盡系統(tǒng)資源并使得其它合法IKE協(xié)商發(fā)起者無(wú)法進(jìn)行正常的IKE協(xié)商的情況,因此能夠大大減少攻擊對(duì)系統(tǒng)資源的占用,保證對(duì)正常的因特網(wǎng)密鑰交換協(xié)議協(xié)商的處理。并且上述技術(shù)方案適用于對(duì)抗通過(guò)冒充合法IKE協(xié)商發(fā)起者來(lái)占用系統(tǒng)資源的攻擊,而并不僅僅限于對(duì)抗DoS攻擊。
優(yōu)選地,上述本發(fā)明會(huì)話的控制裝置的實(shí)施例一中,所述資源預(yù)留模塊可包括IKE協(xié)商發(fā)起者劃分模塊,用于預(yù)先將系統(tǒng)的合法IKE協(xié)商發(fā)起者的IP地址或IP地址所屬的網(wǎng)段劃分為多個(gè)組,每個(gè)組對(duì)應(yīng)一個(gè)可信任對(duì)等體。其中,一個(gè)組中可以包含一個(gè)或者多個(gè)IKE協(xié)商發(fā)起者的IP地址,也可以使用一個(gè)或多個(gè)IP地址網(wǎng)段來(lái)包括一個(gè)或多個(gè)連續(xù)地址的IKE協(xié)商發(fā)起者。
在應(yīng)用于對(duì)抗拒絕服務(wù)攻擊的應(yīng)用場(chǎng)景時(shí),所述資源預(yù)留模塊還可包括IKE連接預(yù)留模塊,用于為每一個(gè)可信任對(duì)等體設(shè)置預(yù)留的IKE連接數(shù)。
下面在本發(fā)明會(huì)話的控制裝置的實(shí)施例二中,在本發(fā)明會(huì)話的控制裝置的實(shí)施例一的技術(shù)方案基礎(chǔ)上進(jìn)一步提供了對(duì)所屬組對(duì)應(yīng)于同一個(gè)可信任對(duì)等體的IKE協(xié)商發(fā)起者的IKE協(xié)商所占用的資源進(jìn)行控制的實(shí)施方式,從而能夠進(jìn)一步地避免攻擊者所占用的資源對(duì)與攻擊者對(duì)應(yīng)于同一個(gè)可信任對(duì)等體的IKE協(xié)商發(fā)起者的正常IKE協(xié)商的影響。
圖5為本發(fā)明會(huì)話的控制裝置的實(shí)施例二的結(jié)構(gòu)示意圖,本實(shí)施例二與上述本發(fā)明會(huì)話的控制裝置的實(shí)施例一的區(qū)別在于,控制模塊42包括設(shè)置模塊51,用于預(yù)先根據(jù)因特網(wǎng)密鑰交換協(xié)議的協(xié)商模式,為每個(gè)可信任對(duì)等體設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間;檢測(cè)模塊52,與設(shè)置模塊51連接,用于按照設(shè)置模塊51所預(yù)設(shè)的檢測(cè)時(shí)間,對(duì)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的、已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間進(jìn)行檢測(cè),如果有持續(xù)時(shí)間超過(guò)所述超時(shí)時(shí)間的半連接,則釋放該半連接所占用的資源和連接數(shù)。
上述本發(fā)明會(huì)話的控制裝置的實(shí)施例二中,除了解決上述本發(fā)明會(huì)話的控制裝置的實(shí)施例一所解決的技術(shù)問(wèn)題外,還解決了現(xiàn)有技術(shù)中的如下技術(shù)問(wèn)題由于IKE協(xié)議本身規(guī)定的超時(shí)老化時(shí)間過(guò)長(zhǎng),無(wú)法及時(shí)地對(duì)攻擊者發(fā)送的這種攻擊的請(qǐng)求報(bào)文所建立的半連接進(jìn)行釋放資源,從而使得攻擊者利用這種攻擊能夠很快耗盡系統(tǒng)資源,而無(wú)法及時(shí)進(jìn)行緩解。針對(duì)上述技術(shù)問(wèn)題,本發(fā)明會(huì)話的控制裝置的實(shí)施例二通過(guò)設(shè)置模塊51根據(jù)IKE的協(xié)商模式(包括主模式和野蠻模式)來(lái)預(yù)先設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間,也就是說(shuō)通過(guò)設(shè)置模塊51根據(jù)不同的IKE協(xié)商模式中半連接狀態(tài)的正常持續(xù)時(shí)間來(lái)預(yù)先設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間,并且通過(guò)檢測(cè)模塊52按照預(yù)設(shè)的檢測(cè)時(shí)間對(duì)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的已建立的半連接的持續(xù)時(shí)間進(jìn)行檢測(cè),對(duì)持續(xù)時(shí)間超出設(shè)置模塊51所預(yù)先設(shè)置的超時(shí)時(shí)間的半連接,釋放其占用的資源和連接數(shù),從而能夠有效地克服現(xiàn)有技術(shù)的缺陷,通過(guò)預(yù)設(shè)的超時(shí)時(shí)間對(duì)半連接的持續(xù)時(shí)間進(jìn)行有效地控制,在攻擊者通過(guò)發(fā)送包括不同的Cookie的請(qǐng)求報(bào)文來(lái)建立半連接從而占用資源和IKE連接數(shù)時(shí),能夠及時(shí)地釋放超出超時(shí)時(shí)間的半連接所占用的資源和連接數(shù),從而保證其它IKE協(xié)商發(fā)起者的正常IKE協(xié)商的順利進(jìn)行。因此,上述本發(fā)明會(huì)話的控制裝置的實(shí)施例二不僅能夠有效地避免攻擊者冒充合法IKE協(xié)商發(fā)起者發(fā)起的攻擊對(duì)其它可信任對(duì)等體對(duì)應(yīng)的合法IKE協(xié)商發(fā)起者的資源的占用,而且能夠及時(shí)地釋放每個(gè)可信任對(duì)等體所對(duì)應(yīng)的超出超時(shí)時(shí)間的半連接所占用的資源和連接數(shù),保證與攻擊者對(duì)應(yīng)于同一個(gè)可信任對(duì)等體的其它合法IKE協(xié)商發(fā)起者的正常IKE協(xié)商的順利進(jìn)行。
同樣地,上述本發(fā)明會(huì)話的控制裝置的實(shí)施例二中,針對(duì)IKE會(huì)話的第一階段可選擇的不同協(xié)商模式,當(dāng)可信任對(duì)等體對(duì)應(yīng)的IKE協(xié)商發(fā)起者使用因特網(wǎng)密鑰交換協(xié)議的主模式進(jìn)行協(xié)商時(shí),所述設(shè)置模塊51可包括主模式設(shè)置模塊,用于根據(jù)報(bào)文在網(wǎng)絡(luò)傳輸?shù)臅r(shí)間以及對(duì)端生成D-H公共值的計(jì)算時(shí)間,來(lái)設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間;當(dāng)可信任對(duì)等體對(duì)應(yīng)的IKE協(xié)商發(fā)起者使用因特網(wǎng)密鑰交換協(xié)議的野蠻模式進(jìn)行協(xié)商時(shí),所述設(shè)置模塊51可包括野蠻模式設(shè)置模塊,用于根據(jù)報(bào)文在網(wǎng)絡(luò)傳輸?shù)臅r(shí)間、本端生成D-H公共值的計(jì)算時(shí)間以及對(duì)端對(duì)IKE協(xié)商過(guò)程的第三個(gè)消息進(jìn)行加密的時(shí)間,來(lái)設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間。
本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以根據(jù)實(shí)際應(yīng)用場(chǎng)景的需求來(lái)靈活設(shè)置上述本發(fā)明會(huì)話的控制裝置的實(shí)施例一中所述的檢測(cè)模塊52的檢測(cè)方式,例如檢測(cè)模塊52可按照預(yù)設(shè)的周期對(duì)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的、已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間進(jìn)行檢測(cè),也可通過(guò)使用時(shí)間戳來(lái)進(jìn)行所述檢測(cè)等等,其均應(yīng)在本發(fā)明技術(shù)方案所要求保護(hù)的范圍之內(nèi)。因此上述本發(fā)明會(huì)話的控制裝置的實(shí)施例二中,檢測(cè)模塊51可包括周期檢測(cè)模塊,與設(shè)置模塊連接,用于按照設(shè)置模塊所預(yù)設(shè)的周期對(duì)已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間進(jìn)行檢測(cè)。下面在本發(fā)明會(huì)話的控制裝置的實(shí)施例三中給出了檢測(cè)模塊51使用時(shí)間戳來(lái)進(jìn)行所述檢測(cè)的具體實(shí)施方式
。
圖6為本發(fā)明會(huì)話的控制裝置的實(shí)施例三的結(jié)構(gòu)示意圖,本實(shí)施例三與上述本發(fā)明會(huì)話的控制裝置的實(shí)施例二的區(qū)別在于檢測(cè)模塊52具體包括時(shí)間戳記錄模塊61,用于在建立每個(gè)可信任對(duì)等體所對(duì)應(yīng)的每個(gè)因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接時(shí),記錄該半連接建立時(shí)的時(shí)間戳;時(shí)間戳檢測(cè)模塊62,與時(shí)間戳記錄模塊61及設(shè)置模塊51連接,用于在每個(gè)可信任對(duì)等體所對(duì)應(yīng)的因特網(wǎng)密鑰交換協(xié)議會(huì)話的總連接數(shù)被耗盡時(shí),根據(jù)時(shí)間戳記錄模塊61所記錄的時(shí)間戳以及系統(tǒng)當(dāng)前的時(shí)間,來(lái)計(jì)算每個(gè)可信任對(duì)等體所對(duì)應(yīng)的已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間,如果有持續(xù)時(shí)間超過(guò)設(shè)置模塊51所設(shè)置的超時(shí)時(shí)間的半連接,則釋放該半連接所占用的資源和連接數(shù)。
本實(shí)施例三在實(shí)施例二的基礎(chǔ)上,通過(guò)時(shí)間戳記錄模塊61為每個(gè)可信任對(duì)等體所對(duì)應(yīng)的每個(gè)半連接記錄建立時(shí)的時(shí)間戳,并通過(guò)時(shí)間戳檢測(cè)模塊62在IKE會(huì)話的總連接數(shù)被耗盡時(shí)才根據(jù)所記錄的時(shí)間戳對(duì)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的已建立的半連接進(jìn)行檢測(cè),而非上述的按照預(yù)設(shè)的周期對(duì)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的已建立的半連接進(jìn)行檢測(cè)。本實(shí)施例三實(shí)質(zhì)上是在每個(gè)可信任對(duì)等體所對(duì)應(yīng)的IKE的總連接數(shù)被耗盡即有可能出現(xiàn)了拒絕服務(wù)攻擊時(shí),啟動(dòng)加速老化的機(jī)制,根據(jù)所記錄的時(shí)間戳對(duì)已建立的半連接進(jìn)行檢測(cè),促進(jìn)攻擊報(bào)文的老化,釋放攻擊報(bào)文所占用的資源和連接數(shù);如果每個(gè)可信任對(duì)等體所對(duì)應(yīng)的IKE的總連接數(shù)沒(méi)有被耗盡也即沒(méi)有出現(xiàn)攻擊現(xiàn)象,在這種半連接資源可用的情況下則不啟用加速老化,仍使用現(xiàn)有IKE協(xié)議的超時(shí)老化時(shí)間來(lái)進(jìn)行半連接的老化即釋放資源處理。因此,本實(shí)施例三在達(dá)到上述實(shí)施例二所達(dá)到的技術(shù)效果的同時(shí),相對(duì)于按照預(yù)設(shè)的周期進(jìn)行檢測(cè)的方式來(lái)說(shuō),能夠更及時(shí)地對(duì)拒絕服務(wù)攻擊做出檢測(cè)處理,而在沒(méi)有受到拒絕服務(wù)攻擊時(shí)不進(jìn)行檢測(cè)則能夠減少對(duì)系統(tǒng)性能的影響。
優(yōu)選地,為避免誤釋放正常IKE會(huì)話的半連接資源,在檢測(cè)到持續(xù)時(shí)間超出預(yù)設(shè)的超時(shí)時(shí)間的半連接后,可只釋放其中一部分半連接,以滿足其他IKE協(xié)商發(fā)起者進(jìn)行IKE協(xié)商的需要。換言之,上述本發(fā)明會(huì)話的控制裝置的實(shí)施例二和實(shí)施例三中,檢測(cè)模塊62還可包括半連接釋放數(shù)量設(shè)置模塊,用于預(yù)先設(shè)置對(duì)所檢測(cè)到的半連接進(jìn)行釋放的數(shù)量,該數(shù)量用于檢測(cè)模塊在檢測(cè)到持續(xù)時(shí)間超過(guò)所述超時(shí)時(shí)間的半連接時(shí),釋放所檢測(cè)到的半連接中該數(shù)量的半連接所占用的資源和連接數(shù)。
下面在本發(fā)明會(huì)話的控制裝置的實(shí)施例四中進(jìn)一步提供了實(shí)施例三中所述時(shí)間戳記錄模塊61記錄時(shí)間戳以及時(shí)間戳檢測(cè)模塊62根據(jù)時(shí)間戳進(jìn)行檢測(cè)的具體方式。
本發(fā)明會(huì)話的控制裝置的實(shí)施例四與上述本發(fā)明會(huì)話的控制裝置的實(shí)施例三的區(qū)別在于時(shí)間戳記錄模塊61包括半連接狀態(tài)表項(xiàng)建立模塊以及半連接狀態(tài)表項(xiàng)刪除模塊;所述半連接狀態(tài)表項(xiàng)建立模塊用于在建立每個(gè)可信任對(duì)等體所對(duì)應(yīng)的每個(gè)因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接時(shí),在半連接狀態(tài)表中建立對(duì)應(yīng)的表項(xiàng),并在該表項(xiàng)中記錄請(qǐng)求報(bào)文中包括的Cookie值及建立時(shí)的時(shí)間戳;所述半連接狀態(tài)表項(xiàng)刪除模塊用于在收到該半連接的包括所記錄的Cookie的第三個(gè)報(bào)文時(shí)刪除該表項(xiàng)。時(shí)間戳檢測(cè)模塊62包括半連接狀態(tài)表項(xiàng)檢測(cè)模塊以及半連接釋放模塊;所述半連接狀態(tài)表項(xiàng)檢測(cè)模塊用于在每個(gè)可信任對(duì)等體所對(duì)應(yīng)的因特網(wǎng)密鑰交換協(xié)議會(huì)話的總連接數(shù)被耗盡時(shí),根據(jù)半連接狀態(tài)表中每一個(gè)表項(xiàng)的時(shí)間戳以及系統(tǒng)當(dāng)前的時(shí)間,來(lái)計(jì)算該表項(xiàng)所對(duì)應(yīng)的半連接的持續(xù)時(shí)間;所述半連接釋放模塊與所述半連接狀態(tài)表項(xiàng)檢測(cè)模塊及設(shè)置模塊連接,用于如果所述半連接狀態(tài)表項(xiàng)檢測(cè)模塊檢測(cè)到持續(xù)時(shí)間超過(guò)設(shè)置模塊所設(shè)置的超時(shí)時(shí)間的半連接,則刪除所檢測(cè)到的半連接中預(yù)設(shè)數(shù)量的半連接所對(duì)應(yīng)的表項(xiàng),并釋放所述預(yù)設(shè)數(shù)量的半連接所占用的資源和連接數(shù)。
本實(shí)施例四中進(jìn)一步提供了記錄時(shí)間戳并根據(jù)時(shí)間戳來(lái)進(jìn)行檢測(cè)的具體實(shí)施方式
,即通過(guò)半連接狀態(tài)表項(xiàng)建立模塊將半連接包括的Cookie及對(duì)應(yīng)的時(shí)間戳記錄在半連接狀態(tài)表對(duì)應(yīng)的表項(xiàng)中;當(dāng)收到該半連接的IKE會(huì)話的第三個(gè)報(bào)文(也就是發(fā)起IKE會(huì)話的請(qǐng)求端發(fā)送的第二個(gè)報(bào)文)時(shí),通過(guò)半連接狀態(tài)表項(xiàng)刪除模塊刪除對(duì)應(yīng)的表項(xiàng);當(dāng)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的IKE總連接數(shù)耗盡時(shí),通過(guò)半連接狀態(tài)表項(xiàng)檢測(cè)模塊檢測(cè)半連接狀態(tài)表中各表項(xiàng)的時(shí)間戳與系統(tǒng)當(dāng)前時(shí)間的差值是否超過(guò)預(yù)設(shè)的超時(shí)時(shí)間,并通過(guò)半連接釋放模塊釋放預(yù)設(shè)數(shù)量的檢測(cè)到的表項(xiàng)所占用的資源和連接數(shù)。本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可根據(jù)具體應(yīng)用場(chǎng)景的需求,靈活選擇所述記錄時(shí)間戳并根據(jù)時(shí)間戳來(lái)進(jìn)行檢測(cè)的實(shí)施方式,其均應(yīng)在本發(fā)明技術(shù)方案所要求保護(hù)的范圍之內(nèi)。
以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)本發(fā)明作限制性理解。盡管參照上述較佳實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解其依然可以對(duì)本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,而這種修改或者等同替換并不脫離本發(fā)明技術(shù)方案的精神和范圍。
權(quán)利要求
1.一種會(huì)話的控制方法,其特征在于,包括預(yù)先將系統(tǒng)的合法IKE協(xié)商發(fā)起者劃分為多個(gè)組,每個(gè)組對(duì)應(yīng)一個(gè)可信任對(duì)等體,并為每個(gè)可信任對(duì)等體預(yù)留系統(tǒng)資源;在收到IKE協(xié)商發(fā)起者發(fā)送的IKE協(xié)商過(guò)程的第一個(gè)請(qǐng)求消息后,當(dāng)該IKE協(xié)商發(fā)起者所屬的組對(duì)應(yīng)的可信任對(duì)等體所對(duì)應(yīng)的預(yù)留系統(tǒng)資源未被全部占用時(shí),從該可信任對(duì)等體所對(duì)應(yīng)的預(yù)留系統(tǒng)資源中為該IKE協(xié)商過(guò)程分配對(duì)應(yīng)的系統(tǒng)資源,并向該IKE協(xié)商發(fā)起者返回回應(yīng)消息。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述預(yù)先將系統(tǒng)的合法IKE協(xié)商發(fā)起者劃分為多個(gè)組,每個(gè)組對(duì)應(yīng)一個(gè)可信任對(duì)等體具體包括預(yù)先將系統(tǒng)的合法IKE協(xié)商發(fā)起者的IP地址或IP地址所屬的網(wǎng)段劃分為多個(gè)組,每個(gè)組對(duì)應(yīng)一個(gè)可信任對(duì)等體。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述為每個(gè)可信任對(duì)等體預(yù)留系統(tǒng)資源具體包括為每一個(gè)可信任對(duì)等體設(shè)置預(yù)留的IKE連接數(shù)。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,還包括預(yù)先根據(jù)因特網(wǎng)密鑰交換協(xié)議的協(xié)商模式,為每個(gè)可信任對(duì)等體設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間;按照預(yù)設(shè)的檢測(cè)時(shí)間對(duì)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的、已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間進(jìn)行檢測(cè),如果有持續(xù)時(shí)間超過(guò)所述超時(shí)時(shí)間的半連接,則釋放該半連接所占用的資源和連接數(shù)。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述預(yù)先根據(jù)因特網(wǎng)密鑰交換協(xié)議的協(xié)商模式為每個(gè)可信任對(duì)等體設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間包括當(dāng)可信任對(duì)等體對(duì)應(yīng)的IKE協(xié)商發(fā)起者使用因特網(wǎng)密鑰交換協(xié)議的主模式進(jìn)行協(xié)商時(shí),根據(jù)報(bào)文在網(wǎng)絡(luò)傳輸?shù)臅r(shí)間以及對(duì)端生成D-H公共值的計(jì)算時(shí)間,來(lái)設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間;當(dāng)可信任對(duì)等體對(duì)應(yīng)的IKE協(xié)商發(fā)起者使用因特網(wǎng)密鑰交換協(xié)議的野蠻模式進(jìn)行協(xié)商時(shí),根據(jù)報(bào)文在網(wǎng)絡(luò)傳輸?shù)臅r(shí)間、本端生成D-H公共值的計(jì)算時(shí)間以及對(duì)端對(duì)IKE協(xié)商過(guò)程的第三個(gè)消息進(jìn)行加密的時(shí)間,來(lái)設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間。
6.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述按照預(yù)設(shè)的檢測(cè)時(shí)間對(duì)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的、已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間進(jìn)行檢測(cè)包括按照預(yù)設(shè)的周期對(duì)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的、已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間進(jìn)行檢測(cè);和/或在建立每個(gè)可信任對(duì)等體所對(duì)應(yīng)的每個(gè)因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接時(shí),記錄該半連接建立時(shí)的時(shí)間戳;在每個(gè)可信任對(duì)等體所對(duì)應(yīng)的因特網(wǎng)密鑰交換協(xié)議會(huì)話的總連接數(shù)被耗盡時(shí),根據(jù)所記錄的時(shí)間戳以及系統(tǒng)當(dāng)前的時(shí)間,來(lái)計(jì)算已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于所述在建立每個(gè)可信任對(duì)等體所對(duì)應(yīng)的每個(gè)因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接時(shí),記錄該半連接建立時(shí)的時(shí)間戳具體包括在建立每個(gè)可信任對(duì)等體所對(duì)應(yīng)的每個(gè)因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接時(shí),在半連接狀態(tài)表中建立對(duì)應(yīng)的表項(xiàng),并在該表項(xiàng)中記錄請(qǐng)求報(bào)文中包括的Cookie值及建立時(shí)的時(shí)間戳,并在收到該半連接的包括所記錄的Cookie的第三個(gè)報(bào)文時(shí)刪除該表項(xiàng);所述在每個(gè)可信任對(duì)等體所對(duì)應(yīng)的因特網(wǎng)密鑰交換協(xié)議會(huì)話的總連接數(shù)被耗盡時(shí),根據(jù)所記錄的時(shí)間戳以及系統(tǒng)當(dāng)前的時(shí)間,來(lái)計(jì)算已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間具體包括在每個(gè)可信任對(duì)等體所對(duì)應(yīng)的因特網(wǎng)密鑰交換協(xié)議會(huì)話的總連接數(shù)被耗盡時(shí),根據(jù)半連接狀態(tài)表中每一個(gè)表項(xiàng)的時(shí)間戳以及系統(tǒng)當(dāng)前的時(shí)間,來(lái)計(jì)算該表項(xiàng)所對(duì)應(yīng)的半連接的持續(xù)時(shí)間;所述如果有持續(xù)時(shí)間超過(guò)所述超時(shí)時(shí)間的半連接,則釋放該半連接所占用的資源和連接數(shù)具體包括如果檢測(cè)到持續(xù)時(shí)間超過(guò)所述超時(shí)時(shí)間的半連接,則刪除所檢測(cè)到的半連接中預(yù)設(shè)數(shù)量的半連接所對(duì)應(yīng)的表項(xiàng),并釋放所述預(yù)設(shè)數(shù)量的半連接所占用的資源和連接數(shù)。
8.一種會(huì)話的控制裝置,其特征在于,包括資源預(yù)留模塊,用于預(yù)先將系統(tǒng)的合法IKE協(xié)商發(fā)起者劃分為多個(gè)組,每個(gè)組對(duì)應(yīng)一個(gè)可信任對(duì)等體,并為每個(gè)可信任對(duì)等體預(yù)留系統(tǒng)資源;控制模塊,與所述資源預(yù)留模塊連接,用于在收到IKE協(xié)商發(fā)起者發(fā)送的IKE協(xié)商過(guò)程的第一個(gè)請(qǐng)求消息后,當(dāng)所述資源預(yù)留模塊為該IKE協(xié)商發(fā)起者所屬的組對(duì)應(yīng)的可信任對(duì)等體所預(yù)留的系統(tǒng)資源未被全部占用時(shí),從該可信任對(duì)等體所對(duì)應(yīng)的預(yù)留系統(tǒng)資源中為該IKE協(xié)商過(guò)程分配對(duì)應(yīng)的系統(tǒng)資源,并向該IKE協(xié)商發(fā)起者返回回應(yīng)消息。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述資源預(yù)留模塊包括IKE協(xié)商發(fā)起者劃分模塊,用于預(yù)先將系統(tǒng)的合法IKE協(xié)商發(fā)起者的IP地址或IP地址所屬的網(wǎng)段劃分為多個(gè)組,每個(gè)組對(duì)應(yīng)一個(gè)可信任對(duì)等體。
10.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述資源預(yù)留模塊包括IKE連接預(yù)留模塊,用于為每一個(gè)可信任對(duì)等體設(shè)置預(yù)留的IKE連接數(shù)。
11.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述控制模塊包括設(shè)置模塊,用于預(yù)先根據(jù)因特網(wǎng)密鑰交換協(xié)議的協(xié)商模式,為每個(gè)可信任對(duì)等體設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間;檢測(cè)模塊,與設(shè)置模塊連接,用于按照設(shè)置模塊所預(yù)設(shè)的檢測(cè)時(shí)間,對(duì)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的、已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間進(jìn)行檢測(cè),如果有持續(xù)時(shí)間超過(guò)所述超時(shí)時(shí)間的半連接,則釋放該半連接所占用的資源和連接數(shù)。
12.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述設(shè)置模塊包括主模式設(shè)置模塊,用于當(dāng)可信任對(duì)等體對(duì)應(yīng)的IKE協(xié)商發(fā)起者使用因特網(wǎng)密鑰交換協(xié)議的主模式進(jìn)行協(xié)商時(shí),根據(jù)報(bào)文在網(wǎng)絡(luò)傳輸?shù)臅r(shí)間以及對(duì)端生成D-H公共值的計(jì)算時(shí)間,來(lái)設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間;和/或野蠻模式設(shè)置模塊,用于當(dāng)可信任對(duì)等體對(duì)應(yīng)的IKE協(xié)商發(fā)起者使用因特網(wǎng)密鑰交換協(xié)議的野蠻模式進(jìn)行協(xié)商時(shí),根據(jù)報(bào)文在網(wǎng)絡(luò)傳輸?shù)臅r(shí)間、本端生成D-H公共值的計(jì)算時(shí)間以及對(duì)端對(duì)IKE協(xié)商過(guò)程的第三個(gè)消息進(jìn)行加密的時(shí)間,來(lái)設(shè)置對(duì)應(yīng)的IKE半連接的超時(shí)時(shí)間。
13.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述檢測(cè)模塊包括周期檢測(cè)模塊,與設(shè)置模塊連接,用于按照設(shè)置模塊所預(yù)設(shè)的周期對(duì)每個(gè)可信任對(duì)等體所對(duì)應(yīng)的、已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間進(jìn)行檢測(cè);和/或時(shí)間戳記錄模塊,用于在建立每個(gè)可信任對(duì)等體所對(duì)應(yīng)的每個(gè)因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接時(shí),記錄該半連接建立時(shí)的時(shí)間戳;時(shí)間戳檢測(cè)模塊,與時(shí)間戳記錄模塊及設(shè)置模塊連接,用于在每個(gè)可信任對(duì)等體所對(duì)應(yīng)的、因特網(wǎng)密鑰交換協(xié)議會(huì)話的總連接數(shù)被耗盡時(shí),根據(jù)所記錄的時(shí)間戳以及系統(tǒng)當(dāng)前的時(shí)間,來(lái)計(jì)算已建立的因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接的持續(xù)時(shí)間,如果有持續(xù)時(shí)間超過(guò)設(shè)置模塊所設(shè)置的超時(shí)時(shí)間的半連接,則釋放該半連接所占用的資源和連接數(shù)。
14.根據(jù)權(quán)利要求13所述的裝置,其特征在于所述時(shí)間戳記錄模塊包括半連接狀態(tài)表項(xiàng)建立模塊以及半連接狀態(tài)表項(xiàng)刪除模塊;所述半連接狀態(tài)表項(xiàng)建立模塊用于在建立每個(gè)可信任對(duì)等體所對(duì)應(yīng)的每個(gè)因特網(wǎng)密鑰交換協(xié)議會(huì)話的半連接時(shí),在半連接狀態(tài)表中建立對(duì)應(yīng)的表項(xiàng),并在該表項(xiàng)中記錄請(qǐng)求報(bào)文中包括的Cookie值及建立時(shí)的時(shí)間戳;所述半連接狀態(tài)表項(xiàng)刪除模塊用于在收到該半連接的包括所記錄的Cookie的第三個(gè)報(bào)文時(shí)刪除該表項(xiàng);所述時(shí)間戳檢測(cè)模塊包括半連接狀態(tài)表項(xiàng)檢測(cè)模塊以及半連接釋放模塊;所述半連接狀態(tài)表項(xiàng)檢測(cè)模塊用于在每個(gè)可信任對(duì)等體所對(duì)應(yīng)的、因特網(wǎng)密鑰交換協(xié)議會(huì)話的總連接數(shù)被耗盡時(shí),根據(jù)半連接狀態(tài)表中每一個(gè)表項(xiàng)的時(shí)間戳以及系統(tǒng)當(dāng)前的時(shí)間,來(lái)計(jì)算該表項(xiàng)所對(duì)應(yīng)的半連接的持續(xù)時(shí)間;所述半連接釋放模塊與所述半連接狀態(tài)表項(xiàng)檢測(cè)模塊及設(shè)置模塊連接,用于如果所述半連接狀態(tài)表項(xiàng)檢測(cè)模塊檢測(cè)到持續(xù)時(shí)間超過(guò)設(shè)置模塊所設(shè)置的超時(shí)時(shí)間的半連接,則刪除所檢測(cè)到的半連接中預(yù)設(shè)數(shù)量的半連接所對(duì)應(yīng)的表項(xiàng),并釋放所述預(yù)設(shè)數(shù)量的半連接所占用的資源和連接數(shù)。
全文摘要
本發(fā)明公開(kāi)了一種會(huì)話的控制方法,包括預(yù)先將系統(tǒng)的合法IKE協(xié)商發(fā)起者劃分為多個(gè)組,每個(gè)組對(duì)應(yīng)一個(gè)可信任對(duì)等體,并為每個(gè)可信任對(duì)等體預(yù)留系統(tǒng)資源;在收到IKE協(xié)商發(fā)起者發(fā)送的IKE協(xié)商過(guò)程的第一個(gè)請(qǐng)求消息后,當(dāng)該IKE協(xié)商發(fā)起者所屬的組對(duì)應(yīng)的可信任對(duì)等體所對(duì)應(yīng)的預(yù)留系統(tǒng)資源未被全部占用時(shí),從該可信任對(duì)等體所對(duì)應(yīng)的預(yù)留系統(tǒng)資源中為該IKE協(xié)商過(guò)程分配對(duì)應(yīng)的系統(tǒng)資源,并向該IKE協(xié)商發(fā)起者返回回應(yīng)消息。本發(fā)明還公開(kāi)了一種會(huì)話的控制裝置。本發(fā)明能夠有效地克服現(xiàn)有技術(shù)的缺陷,大大減少攻擊對(duì)系統(tǒng)資源的占用,保證對(duì)正常的因特網(wǎng)密鑰交換協(xié)議協(xié)商的處理。
文檔編號(hào)H04L9/00GK101022458SQ200710064719
公開(kāi)日2007年8月22日 申請(qǐng)日期2007年3月23日 優(yōu)先權(quán)日2007年3月23日
發(fā)明者徐慶偉 申請(qǐng)人:杭州華為三康技術(shù)有限公司