摘要:IP多媒體子系統(tǒng)(IMS)作為3G網(wǎng)絡(luò)的核心控制平臺,其安全問題正面臨著嚴(yán)峻的挑戰(zhàn)。IMS的接入認(rèn)證機(jī)制的實(shí)現(xiàn)作為整個IMS安全方案實(shí)施的第一步,是保證IMS系統(tǒng)安全的關(guān)鍵;谡J(rèn)證和密鑰協(xié)商(AKA)的IMS接入認(rèn)證機(jī)制是由因特網(wǎng)工程任務(wù)組(IETF)制定,并被3GPP采用,廣泛應(yīng)用于3G無線網(wǎng)絡(luò)的鑒權(quán)機(jī)制。此機(jī)制基于“提問/回答”模式實(shí)現(xiàn)對用戶的認(rèn)證和會話密鑰的分發(fā),由攜帶AKA參數(shù)的SIP消息在用戶設(shè)備(UE)和IMS網(wǎng)絡(luò)認(rèn)證實(shí)體之間進(jìn)行交互,按照AKA機(jī)制進(jìn)行傳輸和協(xié)商,從而實(shí)現(xiàn)用戶和網(wǎng)絡(luò)之間的雙向認(rèn)證,并協(xié)商出后續(xù)通信所需的安全性密鑰對。
移動通信的安全問題正越來越多地受到關(guān)注。2G網(wǎng)絡(luò)主要傳輸語音業(yè)務(wù),采用的是單向的用戶認(rèn)證方案,即網(wǎng)絡(luò)能夠驗(yàn)證用戶身份是否合法,而用戶無法確認(rèn)其所連接的網(wǎng)絡(luò)服務(wù)是否可靠。然而,3G網(wǎng)絡(luò)將會演變成一個覆蓋全球的集有線、蜂窩和衛(wèi)星通信于一體的全網(wǎng),不僅支持傳統(tǒng)的語音和數(shù)據(jù)業(yè)務(wù),還支持交互式和分布式的業(yè)務(wù),如多媒體業(yè)務(wù)、電子商務(wù)、網(wǎng)上銀行等。隨著各種信息服務(wù)的蓬勃開展,各種機(jī)密性、敏感性、隱私性的數(shù)據(jù)的傳輸會大大增加,這對網(wǎng)絡(luò)的安全性提出了更高的要求。
IP多媒體子系統(tǒng)(IMS)是3G網(wǎng)絡(luò)的核心控制平臺,具有基于會話初始協(xié)議(SIP)的全I(xiàn)P架構(gòu),IP協(xié)議固有的缺陷和安全漏洞使IMS很容易遭受攻擊。另外,IMS對開放性接入的支持也對其網(wǎng)絡(luò)安全提出挑戰(zhàn)。如何保證用戶安全地接入網(wǎng)絡(luò),保證IMS網(wǎng)絡(luò)的可靠部署進(jìn)而走向商用,成為了重中之重的問題。因此,研究IMS網(wǎng)絡(luò)的安全接入認(rèn)證機(jī)制有著十分重要的現(xiàn)實(shí)意義。
3GPP已經(jīng)成立了專門的工作組SA WG3負(fù)責(zé)3G網(wǎng)絡(luò)安全方面的標(biāo)準(zhǔn)化工作,已經(jīng)發(fā)布的IMS安全標(biāo)準(zhǔn)主要有:3GPP TS33.102: 3G網(wǎng)絡(luò)安全架構(gòu)[1]、3GPP TS33.203: IMS接入網(wǎng)絡(luò)的安全機(jī)制[2]、3GPP TS33.210: IMS核心網(wǎng)絡(luò)的安全機(jī)制[3]。
1 IMS的安全體系結(jié)構(gòu)
作為相對獨(dú)立的安全體系,IMS要求所有的用戶在使用IMS服務(wù)之前都必須進(jìn)行鑒權(quán)(認(rèn)證和授權(quán)),協(xié)商建立安全的接入通道。用戶和網(wǎng)絡(luò)實(shí)體之間以及網(wǎng)絡(luò)實(shí)體之間的通信必須時刻處于安全保護(hù)之中。IMS安全體系的整體思想是使用因特網(wǎng)協(xié)議安全(IPSec)的安全特性為IMS系統(tǒng)提供安全保護(hù)。IMS安全體系架構(gòu)[2] 如圖1所示,分為5個安全層面。
IMS安全架構(gòu)的5個安全層面應(yīng)用于IMS安全保護(hù)中不同的需求:
安全層面1提供用戶和網(wǎng)絡(luò)之間的雙向身份認(rèn)證。歸屬用戶服務(wù)器(HSS)負(fù)責(zé)產(chǎn)生認(rèn)證數(shù)據(jù),并且委托服務(wù)呼叫會話控制功能(S-CSCF)執(zhí)行用戶認(rèn)證的操作。認(rèn)證基于由IP多媒體服務(wù)身份模塊(ISIM)和HSS共享的密鑰和算法。
安全層面2為用戶設(shè)備(UE)和代理呼叫會話控制功能(P-CSCF)之間的通信提供安全關(guān)聯(lián),包括加密和完整性保護(hù),并通過IPSec提供接入安全保護(hù)。
安全層面3提供網(wǎng)絡(luò)域內(nèi)呼叫會話控制功能(CSCF)和HSS之間的安全關(guān)聯(lián)。
安全層面4為不同網(wǎng)絡(luò)間的CSCF提供安全保護(hù),適合于P-CSCF位于訪問網(wǎng)絡(luò)的情況。
安全層面5在網(wǎng)絡(luò)內(nèi)部的不同CSCF間提供安全保護(hù),適合于P-CSCF位于歸屬網(wǎng)絡(luò)的情況。
圖1中的安全層面1和安全層面2屬于IMS接入安全機(jī)制。IMS的接入安全機(jī)制承擔(dān)著兩大任務(wù):一是對接入用戶的鑒權(quán);二是在鑒權(quán)結(jié)束之后,在UE和P-CSCF之間建立IPSec安全關(guān)聯(lián)(IPSec SA),為后續(xù)SIP信令的交互提供安全保護(hù)。本文主要對基于認(rèn)證和密鑰協(xié)商(AKA)機(jī)制的IMS安全接入認(rèn)證機(jī)制進(jìn)行研究。
2 IMS的接入安全機(jī)制
2.1 IMS AKA機(jī)制概述
AKA機(jī)制是由因特網(wǎng)工程任務(wù)組(IETF)制定、并被3GPP采用,廣泛應(yīng)用于3G無線網(wǎng)絡(luò)的鑒權(quán)機(jī)制。IMS的鑒權(quán)機(jī)制沿用了這種機(jī)制的原理和核心算法,故稱之為IMS AKA機(jī)制[4]。
IMS AKA機(jī)制是對HTTP摘要認(rèn)證機(jī)制[5]的擴(kuò)展,主要用于用戶的認(rèn)證和會話密鑰的分發(fā),它的實(shí)現(xiàn)基于一個長期共享密鑰(Key)和一個序列號(SQN),它們僅在HSS的認(rèn)證中心模塊(AuC)和UE的ISIM中可見。由于HSS不與UE直接通信,而是由S-CSCF執(zhí)行認(rèn)證過程,因此它們不會將真實(shí)的Key暴露給外界。
IMS AKA機(jī)制使用“提問/回答”的模式實(shí)現(xiàn)用戶和網(wǎng)絡(luò)之間的雙向認(rèn)證,并通過協(xié)商產(chǎn)生的密碼對(CK, IK)作為IPSec SA所需的密鑰,為后續(xù)的通信提供安全保護(hù)。IMS AKA機(jī)制是基于SIP協(xié)議來實(shí)現(xiàn)的。AKA與SIP的結(jié)合在IETF RFC3310中定義。在IMS的注冊過程中,攜帶AKA參數(shù)的SIP信令在UE和IMS網(wǎng)絡(luò)認(rèn)證實(shí)體之間進(jìn)行交互,按照AKA機(jī)制來傳輸和協(xié)商AKA參數(shù),從而實(shí)現(xiàn)接入認(rèn)證和密鑰協(xié)商的過程。
2.2 IMS接入認(rèn)證的實(shí)現(xiàn)
通過IMS注冊過程實(shí)現(xiàn)基于AKA機(jī)制的IMS接入認(rèn)證的具體流程[6] 如圖2所示。
(1) 用戶發(fā)起注冊請求
用戶在使用IMS服務(wù)之前必須向IMS網(wǎng)絡(luò)進(jìn)行注冊,注冊的目的是將用戶的私有身份(IMPI)與用戶想要注冊的公開身份(IMPU)綁定。每個用戶只有一個IMPI,而可擁有多個IMPU,每個IMPU對應(yīng)相應(yīng)的服務(wù)配置。
UE在初始的注冊請求SIP REGISTER消息中發(fā)送它的IMPI,該IMPI保存在ISIM應(yīng)用中,只用于認(rèn)證和注冊過程。這個初始的REGISTER消息的主要頭域和參數(shù)如圖3所示。
由于3GPP AKA被映射到HTTP摘要機(jī)制,因此認(rèn)證方案的值被設(shè)置為“Digest”,而“response”和“nonce”域的值在初始注冊請求消息中都設(shè)置為空。P-CSCF將這個REGISTER消息轉(zhuǎn)發(fā)給I-CSCF,I-CSCF聯(lián)系HSS,以選擇為用戶提供服務(wù)的S-CSCF,然后將REGISTER請求消息轉(zhuǎn)發(fā)給選定的S-CSCF。當(dāng)S-CSCF收到REGISTER消息后,如果發(fā)現(xiàn)該用戶還沒有被認(rèn)證,則S-CSCF向HSS發(fā)送多媒體認(rèn)證請求(MAR)消息[7]以請求認(rèn)證數(shù)據(jù)。
(2) 計算認(rèn)證向量
HSS收到MAR消息之后,運(yùn)行AKA算法,為該用戶計算認(rèn)證向量(AV),計算過程如下:HSS中的AuC運(yùn)行AKA機(jī)制,首先產(chǎn)生最新的序列號SQN和一個不可預(yù)測的隨機(jī)提問數(shù)(RAND)。然后HSS將根據(jù)它與該UE之間的共享密鑰Key,以及剛剛產(chǎn)生的SQN和RAND來計算其他的參數(shù),其原理如圖4所示,AKA參數(shù)核心算法由3GPP TS35.206[8]提供。
其中,各個參數(shù)的計算公式如下( ?茌表示按位異或,|| 表示串接):
計算消息認(rèn)證碼(MAC):MAC = F1K(SQN || RAND || AMF) ;
計算期望的認(rèn)證應(yīng)答(XRES):XRES = F2K (RAND);
計算保密性密鑰(CK):CK = F3K (RAND);
計算完整性密鑰(IK):IK = F4K (RAND);
匿名密鑰(AK):AK = F5K (RAND);
網(wǎng)絡(luò)認(rèn)證令牌(AUTN):AUTN = SQN?茌AK || AMF || MAC;
AV:AV=RAND||XRES||CK||IK||AUTN;
AK用來隱藏SQN,因?yàn)镾QN可能會暴露用戶的位置信息。如果不需要隱藏SQN,那么AK被設(shè)置為0。
(3) 網(wǎng)絡(luò)向用戶提問
HSS通過上述的計算過程得到了一組AV,其中每個AV都是一個五元組(RAND, XRES, AUTN, CK, IK),該認(rèn)證五元組并不包括Key和SQN本身。然后,HSS將這些認(rèn)證數(shù)據(jù)通過多媒體認(rèn)證應(yīng)答(MAA)消息發(fā)送給S-CSCF。
S-CSCF從HSS得到所需的安全相關(guān)的參數(shù),即所謂的AV。這些參數(shù)使得S-CSCF可以在不需要知道共享密鑰Key和SQN的情況下就可以執(zhí)行認(rèn)證過程。
S-CSCF將剔除XRES的AV包含在401 Unauthorized應(yīng)答消息的WWW-Authenticate頭域中向用戶提問,401應(yīng)答主要的頭域和字段如圖5所示。
其中,在nonce字段填入了將RAND和AUTN參數(shù)串接后進(jìn)行Base64編碼后的字符串。在ik和ck字段加入完整性密鑰和保密性密鑰。在algorithm字段放入值“AKAv1-MD5”,表示使用的是3GPP AKA認(rèn)證機(jī)制。
當(dāng)接收到S-CSCF返回的401應(yīng)答消息后,P-CSCF在將其發(fā)往UE之前,將其中的完整性密鑰IK和保密性密鑰CK保存下來,并將它們從AV中刪除掉(IK,CK這兩個參數(shù)不能暴露,網(wǎng)絡(luò)認(rèn)證通過后,UE的ISIM會根據(jù)收到的AV,重新計算出來)。
(4) 用戶認(rèn)證網(wǎng)絡(luò)身份
接收到網(wǎng)絡(luò)返回的401應(yīng)答消息后,UE將接收到的AKA參數(shù)傳遞給ISIM應(yīng)用,由ISIM模塊運(yùn)行AKA算法,執(zhí)行以下工作:
首先基于ISIM中存儲的共享密鑰Key來校驗(yàn)網(wǎng)絡(luò)認(rèn)證令牌AUTN,如果AUTN校驗(yàn)成功,網(wǎng)絡(luò)就被認(rèn)證通過(即確認(rèn)認(rèn)證數(shù)據(jù)是從歸屬網(wǎng)絡(luò)中發(fā)來的)。ISIM計算AKA參數(shù)的過程如圖6所示。UE中的認(rèn)證服務(wù)模塊通過隨機(jī)數(shù)RAND計算出匿名密鑰AK,然后使用匿名密鑰AK來恢復(fù)序列號SQN,接著通過得到的序列號SQN、RAND和ISIM中保存的認(rèn)證管理域AMF來計算期望的消息認(rèn)證碼XMAC。將計算得到的期望的消息認(rèn)證碼XMAC和從網(wǎng)絡(luò)認(rèn)證令牌AUTN中取得的由HSS計算的消息認(rèn)證碼MAC相比較。如果這兩個參數(shù)一致,那么用戶認(rèn)證網(wǎng)絡(luò)身份成功,接著進(jìn)行下面的步驟;如果不一致,則用戶認(rèn)證網(wǎng)絡(luò)身份失敗,UE向網(wǎng)絡(luò)發(fā)送不攜帶response字段的REGISTER消息,以此通知網(wǎng)絡(luò)提問無效。
如果用戶認(rèn)證網(wǎng)絡(luò)身份成功,UE將接著檢查序列號SQN是否在正確的范圍之內(nèi)(比較這次提問的序列號SQN是否比上次提問時使用的SQNi大)。如果SQN在正確的范圍之內(nèi)(即SQN>SQNi,將SQNi更新為SQN,并保存,以備下次使用),UE將會計算認(rèn)證應(yīng)答(RES)。如果SQN不大于SQNi,則認(rèn)為本次提問的AV是不新鮮的,UE與網(wǎng)絡(luò)失同步,則UE計算重同步參數(shù)AUTS,使用攜帶該重同步參數(shù)的REGISTER消息重新發(fā)起注冊請求。
如果UE確認(rèn)SQN在正確的范圍之內(nèi),則接著計算保密性密鑰CK和完整性密鑰IK。
至此,UE和S-CSCF都知道了密鑰對CK和IK,可以用于進(jìn)行下面的數(shù)據(jù)加密。UE將會保存CK和IK,直到下一次成功執(zhí)行了AKA過程。
最后,UE在發(fā)往S-CSCF的第二個REGISTER請求中返回認(rèn)證挑戰(zhàn)應(yīng)答RES。
(5) 網(wǎng)絡(luò)認(rèn)證用戶身份
P-CSCF將這個攜帶認(rèn)證應(yīng)答的REGISTER消息轉(zhuǎn)發(fā)給I-CSCF,I-CSCF重新查詢HSS以發(fā)現(xiàn)S-CSCF,然后將REGISTER消息轉(zhuǎn)發(fā)給S-CSCF。當(dāng)S-CSCF接收到REGISTER消息之后,進(jìn)行解析并從認(rèn)證頭域Authorization中取出相應(yīng)的參數(shù):
如果Authorization頭域中的response字段為空,再檢查重同步參數(shù)字段auts是否為空:如果AUTS參數(shù)不為空,說明UE檢查出了SQN同步失敗,S-CSCF使用這個重同步參數(shù)AUTS重新向HSS請求認(rèn)證數(shù)據(jù),當(dāng)下載認(rèn)證數(shù)據(jù)成功后,再用新的認(rèn)證向量重新向UE提問。如果AUTS參數(shù)也為空,說明S-CSCF的提問無效,S-CSCF選擇下一個認(rèn)證向量,重新用401消息進(jìn)行提問。如果S-CSCF用完了所有的認(rèn)證向量后,用戶仍然無法確認(rèn)網(wǎng)絡(luò)身份,S-CSCF認(rèn)為本次認(rèn)證失敗,放棄本次認(rèn)證過程,并發(fā)送403 Forbidden消息通知用戶。
如果Authorization頭域中的response字段不為空,則S-CSCF取出其中的認(rèn)證應(yīng)答RES參數(shù),并將其和保存在S-CSCF中的認(rèn)證應(yīng)答XRES相比較。如果一致,S-CSCF就認(rèn)為用戶回答提問正確,認(rèn)證用戶身份成功,允許用戶接入網(wǎng)絡(luò),同時向UE回送200 OK消息;如果不一致,S-CSCF就認(rèn)為用戶回答提問錯誤,認(rèn)證用戶身份失敗,S-CSCF不允許用戶接入網(wǎng)絡(luò),那么S-CSCF應(yīng)該發(fā)送403 Forbidden應(yīng)答消息給UE,通知認(rèn)證失敗,并且放棄本次認(rèn)證過程。
3 IMS AKA機(jī)制的安全性分析
3.1 IMS AKA機(jī)制實(shí)現(xiàn)的安全能力
從上述對基于AKA的IMS接入認(rèn)證機(jī)制的原理和實(shí)現(xiàn)過程的分析可以看出,IMS AKA機(jī)制實(shí)現(xiàn)了以下安全目標(biāo)。
(1) 用戶和網(wǎng)絡(luò)之間的雙向認(rèn)證
S-CSCF對UE的認(rèn)證是通過RES實(shí)現(xiàn)的:如果UE合法,它能夠正確地計算出RES,且RES等于XRES;UE對S-CSCF的認(rèn)證是通過MAC實(shí)現(xiàn)的:UE收到S-CSCF轉(zhuǎn)發(fā)的MAC后,計算期望的消息認(rèn)證碼(XMAC),如果MAC和XMAC一致,則認(rèn)證成功。
(2) UE和P-CSCF之間的密鑰協(xié)商分配
P-CSCF收到的來自HSS的AV中包含了保密性密鑰(CKHSS)和完整性密鑰(IKHSS)。合法的用戶在收到正確的RAND之后,能正確地產(chǎn)生CKUE和IKUE,且CKHSS等于CKUE,IKHSS等于IKUE。CK和IK用于其后的保密通信,而CK和IK并沒有在空中接口中傳輸,確保了密鑰的安全性。
(3) UE與S-CSCF間密鑰的新鮮性
由于每次通信前的認(rèn)證選擇了不同的AV,保證了每次通信采用的CK和IK都是由不同的RAND計算得到的。而每次使用的MAC是由不斷遞增的SQN作為輸入變量之一,從而確保了密鑰的新鮮性,有效地防止了重放攻擊。
(4) 認(rèn)證應(yīng)答RES的安全
當(dāng)UE計算出認(rèn)證應(yīng)答RES之后,使用名為“AKAv1-MD5”的摘要算法(實(shí)際上就是一個單向的哈希函數(shù))來計算RES的摘要,然后將該摘要發(fā)送到S-CSCF。S-CSCF也使用同樣的方法計算出期望的認(rèn)證應(yīng)答(XRES)的摘要值,通過比較這兩個摘要值是否一致來認(rèn)證用戶的身份。通過這樣的方法,即使攻擊者竊聽到RES的值,但是由于摘要算法是單向的哈希函數(shù),根本無法反推出RES的值,因此不能危害網(wǎng)絡(luò)安全。
由上面的分析,可以看到IMS AKA機(jī)制具有相當(dāng)強(qiáng)大的安全能力來實(shí)現(xiàn)用戶和服務(wù)網(wǎng)絡(luò)之間的雙向認(rèn)證以及密鑰協(xié)商,并且能夠保證協(xié)商的保密性密鑰和完整性密鑰的新鮮性。因此,AKA機(jī)制在3G網(wǎng)絡(luò)的接入認(rèn)證機(jī)制的實(shí)現(xiàn)中得到了相當(dāng)廣泛的應(yīng)用。
3.2 IMS AKA機(jī)制的安全隱患及解決方案
在實(shí)際應(yīng)用中,IMS AKA機(jī)制的一些安全漏洞漸漸暴露出來。下面將對IMS AKA機(jī)制在注冊過程中存在的一些安全隱患及現(xiàn)有的解決方案進(jìn)行介紹。
(1) 雖然UE和P-CSCF之間可以通過AKA機(jī)制協(xié)商的安全性密鑰對SIP信令進(jìn)行加密性和完整性保護(hù),但是初始注冊請求REGISTER消息卻是在安全密鑰尚未協(xié)商的時候發(fā)送的,故該消息沒有受到任何安全保護(hù)而且是用明文發(fā)送的,攻擊者可以輕而易舉地獲取用戶的注冊信息,從而造成用戶隱私泄密。
SIP協(xié)議對此進(jìn)行了安全擴(kuò)展:對SIP消息取摘要值,并且由SIP消息攜帶這個摘要值一同發(fā)送。在接收端對收到的SIP消息計算摘要值,如果和原摘要值一致,說明這個SIP消息沒有被修改過,受到了完整性保護(hù)。雖然即便是這樣,還是不能杜絕攻擊者竊聽SIP消息,可是至少攻擊者無法偷偷修改消息內(nèi)容,這樣對SIP消息的安全性能有一定程度的提高。
(2) 向IMS網(wǎng)絡(luò)注冊時,至少需要發(fā)送兩次REGISTER請求,用戶與網(wǎng)絡(luò)之間的SIP交互過于繁瑣,并且SIP消息攜帶的認(rèn)證頭域(如Authorization頭域和WWW-Authenticate頭域)帶有眾多AKA參數(shù),導(dǎo)致SIP消息長度大幅增加。由于網(wǎng)絡(luò)帶寬的限制,傳輸延遲將會十分明顯,用戶通過注冊接入網(wǎng)絡(luò)的耗時將會比較長,影響用戶的使用感受?梢圆捎脡嚎sSIP消息[9]的方法來在一定程度上改善服務(wù)質(zhì)量,特別是在無線環(huán)境下能大大縮短呼叫建立的時間。
(3) 在基于AKA的接入認(rèn)證過程中,UE并沒有對IMS核心網(wǎng)絡(luò)的接入點(diǎn)P-CSCF進(jìn)行身份認(rèn)證,會給攻擊者提供冒充中間人實(shí)施攻擊的機(jī)會。參考文獻(xiàn)[10]中提出的基于傳輸層安全協(xié)議(TLS)的IMS接入認(rèn)證機(jī)制能對這一缺陷進(jìn)行改進(jìn),但也僅僅是在理論階段,還沒有接受實(shí)際應(yīng)用的考證。
4 結(jié)束語
IMS作為下一代網(wǎng)絡(luò)的發(fā)展方向,作為移動網(wǎng)絡(luò)和固定網(wǎng)絡(luò)的融合平臺,為用戶提供端到端的IP多媒體業(yè)務(wù),這種基于SIP的全I(xiàn)P的開放網(wǎng)絡(luò)特性給IMS網(wǎng)絡(luò)的安全帶來了極大的挑戰(zhàn)。如何保證用戶安全地接入網(wǎng)絡(luò)是整個IMS安全方案實(shí)施的第一步,只有實(shí)現(xiàn)安全的接入認(rèn)證機(jī)制,才能保證IMS網(wǎng)絡(luò)的可靠部署,進(jìn)而走向商用。
IMS AKA機(jī)制雖然被廣泛地應(yīng)用,但正如沒有任何一種技術(shù)是十全十美的道理一樣,IMS AKA機(jī)制本身也存在一些不太合理的地方,目前也有許多的組織和個人對IMS AKA機(jī)制提出了許多增強(qiáng)和完善的建議,但除了SIP的安全擴(kuò)展機(jī)制以外,還沒有哪一種改進(jìn)方案被標(biāo)準(zhǔn)化采用。但無疑正是這種不斷的推陳出新,使得網(wǎng)絡(luò)的安全性越來越高。IMS AKA機(jī)制中仍有一些有待改進(jìn)的開放性問題,希望在以后的研究工作中能對其進(jìn)行改進(jìn):
(1) 通過使用序列號,用戶可以保證認(rèn)證信息(如RAND和AUTN)是沒有被攻擊者或者是被服務(wù)網(wǎng)絡(luò)使用過的。服務(wù)網(wǎng)絡(luò)通過檢驗(yàn)用戶認(rèn)證應(yīng)答RES來判斷用戶是否知道他和網(wǎng)絡(luò)之間的共享密鑰,以此來認(rèn)證用戶身份。然而,用戶卻僅僅只能檢測出認(rèn)證向量是否由歸屬網(wǎng)絡(luò)產(chǎn)生,也就是說,用戶不能判斷收到的認(rèn)證向量是否是他請求服務(wù)的服務(wù)網(wǎng)絡(luò)所申請的,因?yàn)槿魏畏⻊?wù)網(wǎng)絡(luò)都可以向歸屬網(wǎng)絡(luò)請求認(rèn)證向量。這種安全漏洞也會給攻擊者提供機(jī)會。
(2) SQN重同步的過程也并不很合理,因?yàn)橹灰猆E檢查出來SQN不在正常的范圍之內(nèi),它就會發(fā)起重同步過程,而不關(guān)心SQN同步失敗的真實(shí)原因。但是事實(shí)上即使序列號不在正確的范圍內(nèi),也并不代表HSS中的計數(shù)器SQN_HN發(fā)生了同步失敗,有可能是惡意的攻擊者重放提問引起的。UE不關(guān)心真實(shí)的原因,不斷進(jìn)行重同步過程,這必然會加大服務(wù)網(wǎng)絡(luò)和歸屬網(wǎng)絡(luò)之間的通信負(fù)荷,嚴(yán)重延遲用戶接入網(wǎng)絡(luò)的時間,甚至最后無法接入網(wǎng)絡(luò),嚴(yán)重影響用戶的使用感受。但是這個問題的改進(jìn)可能要涉及到對IMS AKA機(jī)制的改進(jìn)。本文主要研究安全接入認(rèn)證機(jī)制,當(dāng)實(shí)現(xiàn)用戶的安全接入之后,如何建立IPSec SC的過程暫不涉及,將在以后的工作中進(jìn)一步研究。
5 參考文獻(xiàn)
[1] 3GPP TS33.102v7. 3G. Security architecture (Release 7) [S]. 2006.
[2] 3GPP TS33.203v7.5.0. Access security for IP-based services (Release 7) [S]. 2007.
[3] 3GPP TS33.210v7.2.0. Network Domain Security: IP network layer security (Release 7) [S]. 2006.
[4] NIEMI A, ARKKO J, TORVINEN V, et al. Hypertext transfer protocol (HTTP) digest authentication using authentication and key agreement(AKA) [R]. RFC3310, IETF. 2002.
[5] FRANKS J, HALLAM-BAKER P, HOSTETLER J, et al. HTTP authentication: Basic and digest Access authentication[R]. RFC2617, IETF. 1999.
[6] POIKSELKA M, MAYER G. IMS:移動領(lǐng)域的IP多媒體概念和服務(wù)[M]. 趙鵬, 周勝, 望玉梅, 等譯. 北京:機(jī)械工業(yè)出版社. 2005.
[7] 3GPP TS29.228v7.5.0. IP Multimedia (IM) subsystem Cx and Dx interfaces signalling flows and message contents (Release 7) [S]. 2007.
[8] 3GPP TS35.206v6.0.0. Specification of the MILENAGE algorithm set: An example algorithm set for the 3GPP authentication and key generation functions f1, f1*, f2, f3, f4, f5 and f5*, Document2: Algorithm specification (Release 6) [S]. 2004.
[9] CAMARILLO G. Compressing the session initiation protocol (SIP) [R]. RFC3468, IETF. 2003.
[10] 張緒武. IP多媒體子系統(tǒng)中的接入安全機(jī)制研究[D]. 南京: 南京郵電大學(xué), 2003.