王文溥
(長治學院 計算機系,山西 長治 046011)
OSPF路由協(xié)議的安全性分析
王文溥
(長治學院 計算機系,山西 長治 046011)
分析OSPF的內(nèi)部安全運行機制以及面臨可能遇到的攻擊存在的問題,在此基礎上,提出解決OSPF安全問題的相應措施。
安全性;OSPF安全機制
IP路由技術作為IP網(wǎng)絡技術的核心技術,為解決IP網(wǎng)絡動態(tài)問題提供了可能性。20世紀80年代中期網(wǎng)絡技術處于起始階段,RIP技術還不能夠滿足大型、異構網(wǎng)絡的需求,存在著明顯的技術缺陷。IETF公司建專門解決這一問題的IGP工作組,設計出了IGP內(nèi)部網(wǎng)關協(xié)議,即我們熟悉的IGP,這是基于最短路徑優(yōu)先(SPF)算法而形成的網(wǎng)關協(xié)議。OSPF很好的解決了網(wǎng)絡可擴展性及快速收斂等關鍵技術,是SPF類路由協(xié)議中的開放式版本,因此OSPF協(xié)議成為目前因特網(wǎng)廣域網(wǎng)中運用最多也最廣泛的動態(tài)路由技術,在各類的企業(yè)網(wǎng)中也得到了極大推廣。
作為一種路由協(xié)議,OSPF是分層次設計的,AS(自治系統(tǒng))是其中最大的實體系統(tǒng),這一系統(tǒng)遵循共同路由策略管理,并在此基礎上形成了一部分網(wǎng)絡實體。每一個AS自治系統(tǒng)都將網(wǎng)絡劃分各個區(qū)域,而每個區(qū)域都不相同。每個區(qū)域都設有自己特定的標識號。主干(backbone)區(qū)域的主要功能是在在不同區(qū)域之間分發(fā)信息,這些信息是鏈路狀態(tài)的。依照OSPF的具體狀況設計出這種分層次的網(wǎng)絡結構。在因特網(wǎng)自治系統(tǒng)變得非常大的時候,拓撲數(shù)據(jù)庫中的內(nèi)容會變得越來越多,因此需要將自治系統(tǒng)分成不同的層次。否則可能造成數(shù)據(jù)庫溢出變得容易,同時網(wǎng)絡中某一鏈路狀態(tài)發(fā)生的變化極有可能會引發(fā)整個網(wǎng)絡系統(tǒng)中每個節(jié)點都重新把自己的路由表計算一次,這樣造成了了資源和時間的浪費,也會造成路由協(xié)議的性能,諸如聚合速度、網(wǎng)絡的穩(wěn)定性以及靈活性等收到重要影響。
OSPF路由協(xié)議具有一定的復雜性,自身有其獨特的內(nèi)建的安全機制,想要攻擊它并不是一件容易的事情。雖然OSPF有較強的安全性,但并不意味著OSPF沒有問題,它仍有很多薄弱環(huán)節(jié)可能受到外來的攻擊,甚至被人所利用。美國人開發(fā)的nemesis—ospf工具軟件,就是一個這樣的軟件,它曾多次成功采取某些方式攻擊和利用了OSPF。因此不得不說,OSPF路由協(xié)議的安全性仍需進一步完善。
2.1 內(nèi)建安全機制存在的問題。
OSPF的內(nèi)建安全機制是由三個內(nèi)建安全機制組成的。第一個內(nèi)建安全機制是層次路由機制,它的最主要的功能是最大程度地減小攻擊的影響范圍域,但它存在的主要缺陷是不能杜絕攻擊,攻擊者進入到了一個ABR、自治系統(tǒng)邊界路由器(AS Boundary Router,ASBR,它就發(fā)揮不了應有的安全防御功能,并且如果攻擊實體假扮成一個ABR,或者ASBR,層次路由機制更是無能為力了。第二個內(nèi)建安全機制是程序性檢驗機制,這是一般路由協(xié)議都要進行的一個過程,其主要作用是進一步增加了復雜度,從而給攻擊者制造麻煩。第三個內(nèi)建安全機制是OSPF自反擊安全機制,它在三個內(nèi)建安全機制中應該是最為復雜的,因此,給攻擊造成的麻煩更加多,即使是這樣仍然有使這一機制失去效能的攻擊實體。
2.1.1 更高速度性注入
RFC2328設定的LSA的更新速度不能超過最?。∕inLSInterva1),這一參數(shù)的默認值是5秒鐘,當攻擊者的速度超過了LSA生成間隔速度的默認值,并以這一速度注人序號更大的虛假LSA,就會導致虛假LSA被其它路由器使用,而原本真正的LSA就會被淹沒掉。
2.1.2 分塊網(wǎng)絡存在的安全隱患
當虛假的LSA泛洪給了該LSA本身的合法生成者,那么,該ISA的合法生成者會啟動其自反擊機制來糾正該LSA,相反,如果虛假的LSA不被泛洪給了該LSA本身的合法生成者,那么,該ISA的合法生成者不可能啟動自反擊機制來糾正該LSA。這樣,如果有一個被人侵的路由器所處的位置能夠?qū)^(qū)域分為兩個不同的子區(qū)域,就會使得當攻擊者只向其中的一個子區(qū)域以另一個子區(qū)域中的某路由器的身份注人虛假LSA,而不向另一個子區(qū)域注入,從而達到欺騙的預期結果。
2.1.3 幻影路由器的入侵
幻影路由器虛構一個路由域中本不存在的路由器,并造成路由域中的其它路由器無法識別,它們認為這一個虛構的路由器是合法存在的,從而達到欺騙的目的?;糜奥酚善髟诼酚捎蛑凶⑷舜笈刻摷贁?shù)據(jù)信息,還不會觸發(fā)自反擊機制,這與它的以虛構的身份得到了認可有關,也是它能發(fā)揮作用的關鍵。幻影路由器本身也存在問題,因為并不是所有注人的LSA都能夠參與路由計算,只有該幻影路由器能夠和某個路由器存在鄰接關系,它才能發(fā)揮作用。
2.1.4 AS外部路由的注入
攻擊者成功的人侵了一臺ASBR,或者是另外一種情況即攻擊者成功地偽裝成了一個ASBR,這個時候,攻擊者就能夠通過注人LSA的方式,從而順利地引人虛假AS外部路由,并且這種情況下,其它路由器并不能驗證這一信息,因此,也就不可能及時地糾正這一錯誤信息。
2.2 OSPF的驗證方式安全性
驗證對于OSPF信息交換是必需的過程。OSPF信息交換的驗證可分為簡單密碼驗證和MD5加密認證兩類。當然,OSPF信息交換也可以設置為不驗證。簡單密碼驗證的安全性幾乎為零,所以可以說是不值得一提的。而MD5加密認證機制則有一定的安全性。為了驗證其安全性,我們先假定它的算法是完全可以信任的,正在使用的密鑰也不會遭到泄露。如果選擇適當,它的運行平臺也是安全的。由信息論表明:英語字符中,每8比特字符的平均信息嫡只有很低的1-3,如果安全管理者把英語字母設置為密鑰來使用,那么128比特密鑰的信息嫡是非常低的,攻擊者需要很短的時間,大約需要幾分鐘到數(shù)就可以破解這一密鑰。眾所周知,OSPF密鑰的使用非常不好,這幾乎可以說是一個普遍存在的問題。同時存在的問題是,密鑰經(jīng)常是3個月甚至是半年時間才變更一次,有的使用者更是從來不變更密鑰。在上述這些情況下,一個攻擊者如果得到了一條Hello報文,他就有極大的機會迅速地破解這一密鑰,緊接著很快侵人全部路由域。正如新聞傳播中所說的,我國的計算機網(wǎng)絡科學家已經(jīng)在2004年成功的破解了MD5算法,所以說,OSPF的驗證方式并沒有足夠的安全性可言。
2.3 OSPF遭到的常規(guī)性攻擊
OSPF整體運行機制具有一定的復雜性,其運行過程中很多環(huán)節(jié)都存在問題,極有可能成為被攻擊的對象。
2.3.1 采用Hello報文進行攻擊
為了發(fā)現(xiàn)鄰居以及維護鄰接節(jié)點之間的關系,OSPF路由器定期向外發(fā)送Hello報文。如果Hello報文中的區(qū)域ID以及Hello間隔等參數(shù)發(fā)生故障或錯誤,就可能導致Hello報文被鄰居路由器丟棄,從而導致鄰居Down。采取直接在鏈路上阻絕Hello報文的方式,也會產(chǎn)生這種相似的危害。當OSPF沒有采取加密措施,或者攻擊者突破了OSPF的驗證體系,這時,整個體系就失去了安全性,攻擊者為了達到攻擊的目的就會修改報文中的某些參數(shù)。
2.3.2 采用Update報文進行攻擊
為了使OSPF轉(zhuǎn)變到有利于攻擊者的方向,采取修改LSA參數(shù)的方式,攻擊者需要首先成功的注人虛假LSA。要到達目的,攻擊者需要侵人路由器,或者采取假扮成一個OSPF路由器進而和其它的路由器達到Exchange或者更高的狀態(tài)的方式,這樣就可以在兩者間傳送USA,同時攻擊者需要至少占有一條鏈路的密鑰或者該鏈路根本就不需要驗證。完成這些后,攻擊者注人虛假LSA,這樣就可以展開進一步攻擊從而完成攻擊的目的。例如,可以不斷地發(fā)送含有大批Maxage的LSA來展開Maxage攻擊,當然還可以發(fā)送最大序號LSA進行最大序號攻擊,如此等等。
2.3.3 進行資源消耗攻擊
進行不間斷地傳送大批量、多形式的OSPF報文,從而導致被攻擊實體的資源消耗以至于枯竭,從而喪失正常工作的能力。通??梢圆捎孟騉SPF的鄰居發(fā)送包含過長鄰居列表這樣含有大批量數(shù)據(jù)信息的Hello報文,鄰居路由器就需要為鄰居列表產(chǎn)生的每個鄰居創(chuàng)建相應的鄰居結構,這樣就會消耗大量的資源,達到一定程度就會自我崩潰。
OSPF路由協(xié)議存在著諸多的安全問題,而它在網(wǎng)絡中又扮演著至關重要的角色,這就要求我們采取一定措施來保證其安全性。筆者建議采取積極的主動防護和檢測機制來克服問題保證安全。驗證是OSPF保護的第一個環(huán)節(jié),在采取保護措施前,要對OSPF路由域內(nèi)的所有OSPF路由器都使用有效的加密認證,雖然這一加密措施并不能解決最終問題,但我們?nèi)砸扇∵@一措施,并且我們會進一步開發(fā)更安全有效的加密認證機制。另一方面,對人侵檢測系統(tǒng)進行適當?shù)脑O計,也有利于加強安全性。因為,這一措施能夠幫助發(fā)現(xiàn)很多針對OSPF的攻擊,雖然對OSPF的攻擊往往會因為OSPF的自反擊機制產(chǎn)生和多互相沖突的信息存儲在路由域中。總之,保護OSPF的安全需要建立一個系統(tǒng)的安全觀,一個整體的安全觀,應該從多個層面來保障OSPF的安全。在路南器層面上,要保證操作系統(tǒng)以及路由器上其它所有協(xié)議還包括路由器的物理等方面的安全;在路由域?qū)用嫔希枰紤]所有邊緣接入實體和所有鏈路等方面的安全;當然,我們還要特別重視人的層面造成的安全問題,加強對網(wǎng)絡進行監(jiān)控和取證,主動建立相應法律,嚴厲打擊各種造成網(wǎng)絡安全問題的人和事。
路由協(xié)議安全性的最終目的是防范外部和內(nèi)部等各個方面對網(wǎng)絡設施的攻擊。這些問題,相關專家以及總結了不少經(jīng)驗教訓??梢怨┪覀儏⒖嫉闹饕袃煞N手段:密碼體制和入侵檢測。當前,怎樣使用密碼體制來解決路由安全問題是研究最多的。已經(jīng)提出維護OsPF鏈路狀態(tài)更新分組完整性、正確性一系列措施和方法,以S.L.Murphy和M.R.Badger提出的保護鏈路狀態(tài)通告完整性的公鑰簽名方案在這方面影響最廣泛,當然OSPF協(xié)議在數(shù)字簽名方案也有廣泛運用。公鑰體制存在的主要問題是價格昂貴,并且要以軟件的方式運行。和對稱驗證機制比較,不難看出,由于要采用低指數(shù)的RSA,速度非常慢,得不到實際推廣。采用檢測攻擊手段,檢查進出OsPF的流量來發(fā)現(xiàn)攻擊存在的可能性具有相當?shù)撵`活性和兼容性,它的問題是只能檢測那些已知的或定義好的攻擊,加上性能有較高的誤報率以及漏報率,并且攻擊和檢測之間往往存在時間延遲的問題。S.Felix Wu曾創(chuàng)造了在單一網(wǎng)絡結構中把使安全控制同入侵檢測有效結合起來的方法。該方法給后來的研發(fā)者以極大的啟發(fā),把利用密碼和入侵檢測綜合起來,使其兼具兩者的優(yōu)點從而加固了OsPF協(xié)議的安全程度。
OSPF路由協(xié)議本身具有的復雜性和內(nèi)建的安全機制,能夠攻擊者造成一定的麻煩,但OSPF的安全問題仍然在很大程度上存在,一旦被攻擊就會造成較大損失。我們要采用積極的主動防護和檢測機制來確保OSPF的安全,建立一個系統(tǒng)的整體觀念來解決這一問題,從路由器和路由域等多個層面維護它的安全。
[1]李健.OSPF協(xié)議安全性分析[J].信息與電腦(理論版),2013,(02):69-70.
[2]郭方平.OSPF路由協(xié)議安全性探討[J].中國新通信,2014,(15):45-46.
[3]陳欣.OSPF路由協(xié)議的安全性評測研究[J].民營科技,2015,(04):60.
(責任編輯 張劍妹)
TP393.08
A
1673-2014(2017)01-0045-03
2017—02—20
王文溥(1981— ),男,山西長治人,講師,主要從事計算機教學與研究。