基于 LSU 的數(shù)字簽名 OSPF 的分析
(作者未知) 2011/6/23
(接上頁(yè))東大學(xué)的科學(xué)家已經(jīng)破解出 MD5 算法。再者,維護(hù)、管理密鑰的成本較高。本文建議在此驗(yàn)證類型的基礎(chǔ)上,結(jié)合數(shù)字簽名保護(hù)機(jī)制來確保 OSPF 路由協(xié)議的安全。這樣的防護(hù)可以有效的防備大部分的威脅。本文在后面將提出一種基于 LSU 的報(bào)文數(shù)字簽名方案,可以實(shí)現(xiàn)上述功能。
三 基于 LSU 的數(shù)字簽名 OSPF
基于 LSU 的數(shù)字簽名方案與 OSPF 路由協(xié)議報(bào)文的加密驗(yàn)證機(jī)制的有機(jī)結(jié)合,有效防止了一系列的威脅、攻擊。具體分析如下:
1.內(nèi)部的惡意路由器篡改 LSA 鏈路狀態(tài)信息。由于內(nèi)部的惡意路由器掌握了加密驗(yàn)證所需的密鑰,因此它可以毫不費(fèi)力的修改 LSA 數(shù)據(jù),然后重新生成一個(gè) MD5 摘要放入驗(yàn)證字段。但是采用上述的數(shù)字簽名方案后,除生成該 LSU 的源路由器外,其它路由器一旦修改 LSU 的內(nèi)容都將在接收方路由器被驗(yàn)證出來,這很好的保證了路由信息不被外來入侵者尤其是內(nèi)部錯(cuò)誤路由器的篡改。這主要得益于數(shù)字簽名的不可否認(rèn)性。這同樣解決了困擾 OSPF 路由協(xié)議安全的序列號(hào)攻擊,包括序列號(hào)加一攻擊和最大序列號(hào)攻擊,原理與防止篡改內(nèi)容是相同的。
2.最大程度的防止了最大年齡攻擊:在標(biāo)準(zhǔn) OSPF 中,MaxAge 字段是 LSA 中最容易受到攻擊的地方,這是由于 MaxAge 的特殊性而造成的。在簽名的 LSU 中添加了 Is MaxAge 字段用于判斷該 LSU 中是否攜帶了最大年齡的 LSA。本文提出的這種方案有效地阻止了入侵者對(duì)年齡字段的修改,一旦年齡字段修改為 MaxAge,則路由器在接收該 LSU 報(bào)文后的驗(yàn)證過程中通過比對(duì)消息摘要時(shí)可發(fā)現(xiàn)篡改,從而拋棄該 LSU。這在一定程度上阻止了針對(duì) LSA 的最大年齡攻擊。但是,有些入侵者將 LSA 的 age 字段修改為一個(gè)很接近MaxAge 的值,這種情況本方案將很難對(duì)此進(jìn)行判別并作出應(yīng)對(duì),目前來看也沒有有效的應(yīng)對(duì)措施。這種攻擊方式從一定程度上加快了路由器更新 LSA 的速度,消耗了一定的資源,卻無(wú)特別大的威脅,應(yīng)該在可以容忍的范圍之內(nèi)。
基于 LSU 的數(shù)字簽名 OSPF 機(jī)制的效率可以從計(jì)算時(shí)間、網(wǎng)絡(luò)帶寬和存儲(chǔ)三方面來分析。
時(shí)間:數(shù)字簽名保護(hù)的 OSPF 協(xié)議其核心內(nèi)容就是對(duì)一定的內(nèi)容進(jìn)行數(shù)字簽名。這一過程包括求不定長(zhǎng)度的數(shù)據(jù)的 Hash 序列、使用不對(duì)稱密鑰加解密數(shù)據(jù)。實(shí)驗(yàn)在一臺(tái)AMD Duron 750MHz 256M memory 配置的 PC 仿真的路由器上進(jìn)行,系統(tǒng)為 Cygwin 仿真的 UNIX 操作系統(tǒng)。采用 RSAREF2 庫(kù)算法得到如下的結(jié)果:對(duì)于一個(gè) 16 比特的數(shù)據(jù),使用 512-bit 的 Key 產(chǎn)生和驗(yàn)證一個(gè)數(shù)字簽名數(shù)據(jù)需要耗時(shí) 0.47 秒和 0.023 秒。事實(shí)上本文采用的 Hash 函數(shù)計(jì)算出的散列值長(zhǎng)度為 128 比特,也就是說系統(tǒng)在產(chǎn)生和驗(yàn)證該數(shù)字簽名時(shí)需要耗費(fèi)的時(shí)間可能還要多。
網(wǎng)絡(luò)帶寬:數(shù)字簽名保護(hù)的 OSPF 協(xié)議相對(duì)于標(biāo)準(zhǔn) OSPF,其多占用的網(wǎng)絡(luò)帶寬主要體現(xiàn)在以下幾個(gè)方面:1、LSU 中數(shù)字簽名保護(hù)數(shù)據(jù)使得 LSU 的長(zhǎng)度增大,直接增大了網(wǎng)絡(luò)中數(shù)據(jù)的傳輸量。2、數(shù)字簽名體制中 Key 的分發(fā)與管理,這包括 PKLSA 的傳播以及相應(yīng)的應(yīng)答等。這些額外的網(wǎng)絡(luò)帶寬負(fù)載與網(wǎng)絡(luò)的容量相比都是極其微小的。
存儲(chǔ):數(shù)字簽名的 OSPF路由器都需要存放自身的私鑰和區(qū)域中其它路由器的公鑰,這一部分存儲(chǔ)空間大小一定程度上決定于 Area 的大小。而對(duì)于數(shù)字簽名的 LSU 或 LSA,在接受 LSU 報(bào)文后通過驗(yàn)證后會(huì)將這些報(bào)文中的 LSA 存入鏈路狀態(tài)數(shù)據(jù)庫(kù)之中,這與普通的 OSPF 路由器無(wú)異,不會(huì)將額外的簽名信息保存下來占用空間。而對(duì)于那些不能通過驗(yàn)證的 LSA 則拋棄不用。
參考文獻(xiàn)
[1]鐘廷龍,李鑫,郭云飛. OSPF 路由協(xié)議安全性分析[J]. 微計(jì)算機(jī)信息, 2005
[2] 楊靜, OSPF 路由協(xié)議的安全分析及其漏洞分析,山東大學(xué)學(xué)報(bào),2003
[3] 謝蒂,楊靜. 一種低代價(jià)、可靠的 OSPF 驗(yàn)證機(jī)制[J] 計(jì)算機(jī)應(yīng)用,2003
|