永城職業(yè)學(xué)院電子信息工程系 于 童 張偉民
路由協(xié)議中密鑰管理協(xié)議的研究與實(shí)現(xiàn)
永城職業(yè)學(xué)院電子信息工程系 于 童 張偉民
隨著移動通信網(wǎng)絡(luò)的發(fā)展,基于網(wǎng)際協(xié)議化的應(yīng)用趨勢也更加明顯,從而使路由設(shè)備的地位和作用越來越重要。而早期的網(wǎng)絡(luò)設(shè)計(jì)者偏重于實(shí)現(xiàn)網(wǎng)絡(luò)的基本功能,卻忽略了網(wǎng)絡(luò)的安全要素,在設(shè)計(jì)路由設(shè)備及路由協(xié)議時缺少對安全的考慮,從而導(dǎo)致安全機(jī)制的缺失和不足。
1.路由安全的重要性。針對路由安全問題的重要性及其存在的問題,相關(guān)的國際標(biāo)準(zhǔn)組織將路由安全研究提上了日程,并積極制定和推動相關(guān)標(biāo)準(zhǔn)來實(shí)現(xiàn)路由的安全。IETF互聯(lián)網(wǎng)架構(gòu)組認(rèn)為使用最小的代價達(dá)到最大破壞效果的攻擊是對路由基礎(chǔ)設(shè)施的高效攻擊。由此可見路由安全在網(wǎng)絡(luò)架構(gòu)中的重要性。
2.路由安全的研究目標(biāo)。路由協(xié)議在因特網(wǎng)中的地位十分關(guān)鍵且重要,路由協(xié)議的安全是保證因特網(wǎng)穩(wěn)定的重要基礎(chǔ)。本研究的目標(biāo)是根據(jù)路由協(xié)議的特點(diǎn),設(shè)計(jì)路由協(xié)議中的自動化密鑰管理協(xié)議,為路由協(xié)議的身份認(rèn)證機(jī)制提供加密密鑰。
3.路由安全的具體工作。具體的工作包括:分析路由協(xié)議的脆弱性及目前已有的安全機(jī)制,找出路由協(xié)議目前安全機(jī)制部署的不足;研究IPsec協(xié)議族中使用的密鑰管理協(xié)議IKEv2和GDOI,考慮路由協(xié)議中所需的SA(安全聯(lián)盟)以及路由協(xié)議所處的網(wǎng)絡(luò)架構(gòu)的特點(diǎn),對這2種密鑰管理協(xié)議進(jìn)行擴(kuò)展,設(shè)計(jì)出針對路由協(xié)議的密鑰管理協(xié)議。
1.密鑰管理協(xié)議的設(shè)計(jì)。目前,IKEv2主要用于單播協(xié)議的密鑰管理,GDOI主要用于組播協(xié)議的密鑰管理??梢钥闯?,由于單播協(xié)議和組播協(xié)議的區(qū)別,它們所需要的SA也存在著區(qū)別。因此,針對不同的網(wǎng)絡(luò)架構(gòu)需要設(shè)計(jì)不同的密鑰管理協(xié)議。在路由協(xié)議中,既有發(fā)送單播報(bào)文的BGP協(xié)議,又有發(fā)送組播報(bào)文的RIP協(xié)議,還有既發(fā)送單播報(bào)文又發(fā)送組播報(bào)文的OSPF協(xié)議。考慮并不針對特定的路由協(xié)議來設(shè)計(jì)方案,而是對所有的路由協(xié)議設(shè)計(jì)統(tǒng)一的方案。因此,在設(shè)計(jì)時需要同時考慮到單播和組播的情況,要分別設(shè)計(jì)出適用于單播和組播的密鑰管理協(xié)議。
2.RPKMP。由于重新設(shè)計(jì)一個新的協(xié)議過于復(fù)雜,本文,筆者提出的方案主要是在IKEv2和GDOI協(xié)議的基礎(chǔ)上進(jìn)行改動,設(shè)計(jì)出適用于路由協(xié)議的密鑰管理協(xié)議RPKMP。
1.基于單播的RPKMP的設(shè)計(jì)。設(shè)計(jì)針對IKEv2的擴(kuò)展包括2個部分工作:第一部分工作,在IKEv2的原有SA載荷中增加與路由協(xié)議相關(guān)的字段;第二部分工作,在IKEv2報(bào)頭中的ExchangeType(交換類型)字段中增加交換類型?;趩尾サ腞PKMP的設(shè)計(jì)主要適用于點(diǎn)對點(diǎn)(Point-to-point)、非廣播多點(diǎn)傳送(NonbroadcastMultiaccess,NBMA)和點(diǎn)到多點(diǎn)(Point-to-multipoint)等網(wǎng)絡(luò)類型。
2.基于組播的RPKMP的設(shè)計(jì)。路由協(xié)議中密鑰管理協(xié)議的設(shè)計(jì)不能僅考慮端對端密鑰的協(xié)商,還需要考慮組密鑰的協(xié)商。只有當(dāng)一個組共享一個會話密鑰并在一端發(fā)起加密的組播報(bào)文時,該組的其他成員才能使用該共享密鑰驗(yàn)證加密報(bào)文。組密鑰的協(xié)商是一個十分復(fù)雜的過程,目前現(xiàn)有的組密鑰管理協(xié)議大多是基于IETFmsec工作組提出的組播組安全架構(gòu)來設(shè)計(jì)的,通過一個中心點(diǎn)控制器GC/KS(組控制器/密鑰服務(wù)器)向組員發(fā)送組密鑰加密密鑰和組會話密鑰。由于重新設(shè)計(jì)一個協(xié)議較為復(fù)雜,且需要較長的時間來測試該設(shè)計(jì)的可用性,因此,本文,筆者所提出的基于路由協(xié)議組播報(bào)文發(fā)送的RPKMP的設(shè)計(jì),仍然使用現(xiàn)有的協(xié)議。
3.路由協(xié)議中密鑰管理協(xié)議RPKMP的設(shè)計(jì)。主要包括路由協(xié)議密鑰管理協(xié)議框架的設(shè)計(jì),基于單播的RPKMP的設(shè)計(jì),基于組播的RPKMP的設(shè)計(jì)等。基于組播的RPKMP的設(shè)計(jì)是在現(xiàn)有的組播密鑰管理協(xié)議GDOI的基礎(chǔ)上添加了1個GC/KS選舉協(xié)議,使得GDOI協(xié)議可以在路由協(xié)議所處的廣播網(wǎng)絡(luò)中使用。在本文中,筆者對路由協(xié)議的實(shí)現(xiàn)使用了開源quagga軟件包,quagga軟件包也可以實(shí)現(xiàn)目前常用的路由協(xié)議,由于它的開源性,對其中路由協(xié)議的實(shí)現(xiàn)可做任何的改動。這就方便工作人員在路由協(xié)議中添加新的接口,從而與RPSA數(shù)據(jù)庫和KMP進(jìn)程進(jìn)行交互。
1.測試環(huán)境。由于實(shí)驗(yàn)條件所限,要在1臺物理機(jī)上構(gòu)造多個虛擬機(jī)來完成基本測試。每臺虛擬機(jī)上都運(yùn)行FreeBSD8.0系統(tǒng)。在測試單播RPKMP系統(tǒng)時,同時運(yùn)行2臺虛擬機(jī),一臺虛擬機(jī)的IP地址設(shè)為192.168.64.128,另一臺虛擬機(jī)的IP地址設(shè)為192.168.64.129。在測試GC/KS選舉模塊時,又添加了1臺新虛擬機(jī),IP地址設(shè)為192.168.64.130,可使3臺虛擬機(jī)運(yùn)行在一個廣播網(wǎng)絡(luò)上,實(shí)現(xiàn)一個基本的廣播網(wǎng)絡(luò)環(huán)境。
2.基于單播RPKMP系統(tǒng)的測試。通過配置文件可以看出,此時OSPF協(xié)議運(yùn)行在非廣播網(wǎng)絡(luò)中,并配置鄰居路由器的IP地址為192.168.64.128,在配置中運(yùn)行OSPF協(xié)議的路由器發(fā)送單播報(bào)文。
3.GC/KS選舉模塊的測試。由于wireshake協(xié)議分析軟件不能對新設(shè)計(jì)的協(xié)議報(bào)文進(jìn)行分析,所以需要通過在程序中添加調(diào)試信息來觀察GC/KS的選舉過程,對完成GC/KS選舉模塊的測試。