摘要 移動IPv6協(xié)議作為下一代互聯(lián)網(wǎng)解決移動通信的基本理論,為解決“三角路由”問題和更好的支持節(jié)點移動,定義了一些控制信令和新的移動擴展頭,但同時也帶來了新的安全威脅,為此提出了一些安全策略來保護控制信令。本文探討了移動IPv6協(xié)議主要面臨的安全威脅,分析了通過IPSec安全聯(lián)盟來保護移動節(jié)點和家鄉(xiāng)代理之間的控制信令以及RR協(xié)議來保護移動節(jié)點和通信節(jié)點之間的控制信令的安全策略。
關鍵詞 移動IPv6 移動節(jié)點 家鄉(xiāng)代理 通信節(jié)點
1、引言
隨著因特網(wǎng)和移動通信的逐步融合,人們也期待能夠突破時間和空間的限制隨時隨地接入因特網(wǎng)。但是按照基本IP協(xié)議進行報文路由,一旦通信節(jié)點在改變了其網(wǎng)絡接入點以后,如果不重新配置其IP地址,那么它就不能繼續(xù)與網(wǎng)上的其它節(jié)點進行通信,因此需要引入一種路由機制使移動節(jié)點可以以一個永久的IP地址連接到任何鏈路上。移動IPv6協(xié)議的提出則可以解決上述問題。移動IPv6協(xié)議作為下一代互聯(lián)網(wǎng)IPv6協(xié)議的基本組成部分,它建立在IPv6的體系結構上,利用了IPv6的一些特性來支持節(jié)點的移動,并且引入了一些控制報文來實現(xiàn)路由優(yōu)化。本文著重研究移動IPv6協(xié)議中的控制信令報文,分析此類報文對移動節(jié)點、通信節(jié)點以及家鄉(xiāng)代理所造成的安全威脅,以及移動IPv6協(xié)議所采取的一些安全機制。
2、移動IPv6協(xié)議介紹
移動IPv6協(xié)議中定義了三種操作實體:移動節(jié)點(Mobile Node,MN)、通信節(jié)點(Correspondence Node,CN)和家鄉(xiāng)代理(Home Agent,HA)。在移動IPv6協(xié)議中并沒有定義外地代理。因為節(jié)點移動到外地鏈路可以通過IPv6基本協(xié)議的鄰居發(fā)現(xiàn)(Neighbor Discovery)協(xié)議判定自己網(wǎng)絡鏈路的變化情況,同時通過有狀態(tài)或者無狀態(tài)的自動地址分配機制得到外地鏈路上的轉交地址。
如圖1所示。移動IPv6提供兩種基本的通信模式,即雙向隧道機制和路由優(yōu)化。雙向隧道機制是指在移動節(jié)點和家鄉(xiāng)代理之間建立隧道。通信節(jié)點發(fā)給移動節(jié)點的報文,首先路由到家鄉(xiāng)代理,家鄉(xiāng)代理通過代理鄰居發(fā)現(xiàn)機制截獲該報文,并且采用IPv6封裝格式通過隧道轉發(fā)到移動節(jié)點;移動節(jié)點發(fā)往通信節(jié)點的報文則采用反向隧道先路由到家鄉(xiāng)代理,然后按照正常的路由機制轉發(fā)到通信節(jié)點。另一種通信模式是路由優(yōu)化,移動節(jié)點和通信節(jié)點直接通過轉交地址進行報文交互。
圖1 移動IPv6的兩種通信場景
與移動IPv4協(xié)議相比,移動IPv6協(xié)議引入下述增強特性來更好地支持節(jié)點的移動:
(1)在協(xié)議設計中沒有引入外地代理,而是通過IPv6基本協(xié)議的鄰居發(fā)現(xiàn)和地址自動分配(有狀態(tài)或無狀態(tài))機制來實現(xiàn)外地代理的功能。
(2)路由優(yōu)化成為協(xié)議的基本組成部分。移動IPv6協(xié)議定義四種消息(Home Test Init,Care-of-Address,Home Test和Care-of Test)和RR(Return Routability)協(xié)議,來確保通信節(jié)點只接收通過授權認證的移動節(jié)點發(fā)送的地址綁定更新報文,并且建立移動節(jié)點家鄉(xiāng)地址和轉交地址對應表項,用于直接與移動節(jié)點通信。
(3)具有更高的安全性。移動IPv6協(xié)議繼承了IPv6基本協(xié)議的IPSec部分,它能夠通過認證頭(Authentication Header,AH)提供數(shù)據(jù)源身份認證,通過安全載荷封裝(Encapsulation Security Payload,ESP)提供數(shù)據(jù)的保密性和完整性,增強對協(xié)議控制報文和數(shù)據(jù)流的保護。
(4)支持路由優(yōu)化和“入口過濾”相融合。在移動IPv6協(xié)議中定義了兩類新的移動擴展頭,家鄉(xiāng)地址選項頭(Home Address Option)和類型2的路由頭(Type 2 Routing Header),因而可以將轉交地址作為報文的源地址進行通信,而不用擔心正常的通信報文會被配置了“入口過濾”(Ingress filter)的路由器丟棄。在通信中,由MN發(fā)送到HA的報文,源地址使用MN的轉交地址,在家鄉(xiāng)地址選項擴展頭域填寫MN的家鄉(xiāng)地址;由CN直接發(fā)送到MN的報文,目的地址使用MN的轉交地址,在類型2路由擴展頭域填寫MN的家鄉(xiāng)地址。
(5)在移動節(jié)點和當前拜訪地網(wǎng)絡網(wǎng)關之間提供了對稱的可達性檢測機制,能夠使得網(wǎng)關感知到移動節(jié)點的移動。
(6)定義動態(tài)家鄉(xiāng)代理發(fā)現(xiàn)和移動網(wǎng)絡前綴信息自動獲得機制。移動節(jié)點發(fā)送MPS(Mobile Prefix Solicitation)消息,由家鄉(xiāng)代理響應MPA(Mobile Prefix Advertisement)消息,來獲得家鄉(xiāng)鏈路的網(wǎng)絡前綴。通過上述機制,能夠確保移動節(jié)點在發(fā)生下述情況時繼續(xù)與網(wǎng)上的其它節(jié)點通信:
●原有的家鄉(xiāng)代理發(fā)生故障,能夠備選出一個家鄉(xiāng)鏈路上的路由器作為替代的家鄉(xiāng)代理;
●家鄉(xiāng)鏈路的網(wǎng)絡前綴發(fā)生變化,可以實現(xiàn)移動節(jié)點家鄉(xiāng)地址的自動更改。
3、移動IPv6面臨的主要安全問題
移動IPv6協(xié)議通過定義移動節(jié)點、家鄉(xiāng)代理和通信節(jié)點之間的控制信令,實現(xiàn)“三角路由”的優(yōu)化,同時也引入了新的安全威脅。如果攻擊者在移動節(jié)點、通訊節(jié)點的鏈路上或者是在發(fā)送數(shù)據(jù)包路徑的鏈路上截獲相關的控制報文,那么它就能夠輕易的進行攻擊。目前。移動IPv6可能遭受的攻擊主要包括拒絕服務攻擊、重放攻擊以及信息竊取攻擊三大類。
3.1 拒絕服務攻擊(DoS)
拒絕服務攻擊是指一個攻擊者為阻止合法用戶的正常工作而采取的攻擊。這種攻擊主要包括兩種方式:一種是通過向服務器或主機發(fā)送大量數(shù)據(jù)包,使得主機忙于處理這些無用的數(shù)據(jù)包而無法響應有用的數(shù)據(jù)包;另一種是直接干擾正常通信。在移動IPv6中攻擊者可以通過如下的攻擊方式達到上述目的:
(1)發(fā)送大量的地址綁定更新消息來消耗家鄉(xiāng)代理和通信節(jié)點的資源,如CPU、內存資源。從而導致綁定Cache表溢出或者是無法及時處理真正的綁定更新報文。
(2)冒充移動節(jié)點的身份向家鄉(xiāng)代理或是通信節(jié)點發(fā)送含有偽造轉交地址的綁定更新報文,從而截獲后續(xù)的數(shù)據(jù)包,或者是將通信流量重定向到第三方節(jié)點,導致分布式的DoS攻擊。
(3)在移動節(jié)點和家鄉(xiāng)代理通信路徑上的攻擊者可以通過篡改Home Address Option域值,將通信節(jié)點的流量重定向到其它第三方節(jié)點(包括攻擊者自己)。
(4)在移動節(jié)點和通信節(jié)點通信路徑上的攻擊者可以通過篡改Routing Header域值,將通信節(jié)點的流量重定向到其它第三方節(jié)點(包括攻擊者自己)。
(5)在移動節(jié)點和家鄉(xiāng)代理通信路徑上的攻擊者可以通過篡改MPA(Mobile Prefix Advertisement)消息的前綴信息來阻止移動節(jié)點與家鄉(xiāng)代理和通信節(jié)點之間的正常通信。
3.2 重放攻擊
重放攻擊是指攻擊者將一個有效的注冊請求消息保存起來,等待一段時間后再重新發(fā)送這個消息來注冊一個偽造的轉交地址,從而達到攻擊的目的。在移動節(jié)點和通信節(jié)點通信路徑上的攻擊者可以通過這種方式將數(shù)據(jù)流重定向到第三方實體。
3.3 信息竊取攻擊
信息竊取可以分為被動監(jiān)聽和主動會話截取。
(1)被動的監(jiān)聽
移動IPv6可以使用包括無線鏈路在內的多種傳輸媒介。由于無線鏈路的信道特性,攻擊者可以不需要物理地連接到網(wǎng)絡上就可以進行偵聽,而對于有線鏈路,未經(jīng)授權的用戶也可能通過某些手段設法接入網(wǎng)絡進行偵聽。對于此類的攻擊最好的解決辦法就是在通信雙方實現(xiàn)端到端的加密。
(2)會話竊取
會話竊取攻擊是指一個攻擊者等待合法的用戶認證完成并且開始進行會話后,通過假扮合法節(jié)點來竊取會話的攻擊。在移動IPv6中,當移動節(jié)點向它的家鄉(xiāng)代理注冊后,攻擊者先偵聽移動節(jié)點和家鄉(xiāng)代理之間的會話,當發(fā)現(xiàn)某些感興趣的信息后,攻擊者一方面向移動節(jié)點發(fā)送大量無用的數(shù)據(jù)包,另一方面假冒移動節(jié)點發(fā)送數(shù)據(jù)包。并截獲發(fā)往移動節(jié)點的數(shù)據(jù)包。
除了上述主要的安全威脅之外,移動IPv6還可能遭受其它的安全威脅,例如:
●攻擊者可以冒充通信節(jié)點給移動節(jié)點發(fā)送綁定錯誤消息。從而導致移動節(jié)點通過隧道經(jīng)由家鄉(xiāng)代理向通信節(jié)點發(fā)送報文,造成路由迂回,導致網(wǎng)絡帶寬浪費及時延增加;
●攻擊者可以通過向移動節(jié)點發(fā)送大量的綁定刷新請求消息來實現(xiàn)資源耗盡類別的DoS攻擊。
4、移動IPv6協(xié)議解決上述安全問題的機制
互聯(lián)網(wǎng)協(xié)議設計的一個基本安全要求就是新協(xié)議的設計不能夠引入新的安全威脅,如果存在安全威脅,那么協(xié)議本身必須要規(guī)定相應的安全機制來克服。同樣,移動IPv6協(xié)議也不例外。對于上節(jié)描述的各種安全威脅,協(xié)議都定義了相應的安全機制。
4.1 防御重放攻擊的策略
為防止重放攻擊,移動IPv6協(xié)議在注冊消息中定義了序列號,并且在RR協(xié)議報文中引入隨機數(shù)(Nonce)。家鄉(xiāng)代理和通信節(jié)點可以通過比較前后兩個注冊消息序列號(通信節(jié)點還可以依據(jù)Nonce散列值),判定出被攻擊者保存下來的已經(jīng)過時的注冊消息而不予處理。
4.2 對家鄉(xiāng)代理的地址綁定消息的保護
在移動IPv6協(xié)議中建議通過建立IPSec安全聯(lián)盟來保護發(fā)送到家鄉(xiāng)代理的地址綁定消息和數(shù)據(jù)流量。由于移動節(jié)點家鄉(xiāng)地址和家鄉(xiāng)代理都是已知的,所以可以預先為移動節(jié)點和家鄉(xiāng)代理配置安全聯(lián)盟,然后使用IPSec AH和ESP機制建立安全隧道,提供數(shù)據(jù)源認證,完整性檢查,數(shù)據(jù)加密和防重放攻擊保護。
4.3 對通信節(jié)點的地址綁定消息的保護
由于移動節(jié)點的轉交地址是隨著移動節(jié)點網(wǎng)絡接入點的變化而變化的,并且與其通信的節(jié)點也是在不斷變化的,所以不能通過預先靜態(tài)配置的方式在移動節(jié)點和通信節(jié)點之間建立安全聯(lián)盟,而且在全球互聯(lián)網(wǎng)范圍內很難實現(xiàn)PKI(Public Key Infrastructure)架構,不同的認證管理域也很難建立信任關系,所以無法通過公共密鑰加密機制保護移動節(jié)點與通信節(jié)點之間的控制信令。移動IPv6協(xié)議定義了RR協(xié)議,通過產(chǎn)生綁定管理密鑰來實現(xiàn)對移動節(jié)點和通信節(jié)點之間控制信令的保護,其基本原理如下:
當移動節(jié)點采用路由優(yōu)化方式時,它發(fā)送HoTI(Home Test Init)消息經(jīng)由家鄉(xiāng)代理向通信節(jié)點通告其家鄉(xiāng)地址,直接發(fā)送CoTI(Care-of Test Init)消息向通信節(jié)點通告其轉交地址;當通信節(jié)點收到上述消息后,將源地址、密鑰和隨機數(shù)作為哈希散列函數(shù)的輸入,分別產(chǎn)生Home Cookie和Care-of Cookie,(Home Cookie=hash{Key,HoA|Nonce};Care-of Cookie=hash{Key,CoA|Nonce})并且向移動節(jié)點分別響應HoT(Home Test)消息和CoT(Care-ofTest)消息;移動節(jié)點將收到的Home Cookie和Care-ofCookie作為哈希函數(shù)的輸入產(chǎn)生會話密鑰,并用此密鑰來加密綁定消息,其中:
BU={MAC,Seq#,Nonce indices,CoA},其中MACBU=hash(kBU,CoA|CN|HoA|Seq#|LT)
BA={MAC,Seq#,status}其中MACBA=hash(kBU,CN|CoA|HoA|Seq#|LT)。
(注:HoA—Home Address;CoA—Care-of Address;BU—Binding Update;BA—Binding Acknowledgement;MAC—Message Authentication Code;CN—Correspondent Node;LT—Lifetime;)
4.4 對MPS/MPA消息的保護
考慮到移動網(wǎng)絡前綴發(fā)現(xiàn)機制可能會造成網(wǎng)絡拓撲信息的泄露,移動IPv6協(xié)議建議采用IPSec安全聯(lián)盟來保護MPS/MPA數(shù)據(jù)的完整性以及對數(shù)據(jù)源身份進行認證,例如可以使用ESP傳輸模式非空載荷認證算法。
4.5 對通信流量的保護
在移動IPv6協(xié)議中建議使用IPSec體系中AH和ESP機制提供數(shù)據(jù)流的數(shù)據(jù)源認證、完整性和機密性保護。
5、結束語
移動IPv6的發(fā)展還處在初級階段,目前提出來的還只是移動解決方案的基礎理論。移動IPv6的最終目標是實現(xiàn)全球范圍真正的移動網(wǎng)絡。它會滿足移動計算和個人通信的所有要求。而要真正實現(xiàn)全球范圍內的移動網(wǎng)絡,還需要進一步完善Mobile IPv6,IPSec,Diameter等協(xié)議,解決服務質量及安全性問題。
作者:馬軍鋒 侯樂青 來源:泰爾網(wǎng)