通用引導(dǎo)架構(gòu)在IMS網(wǎng)絡(luò)中的應(yīng)用研究[圖]

    IP多媒體子系統(tǒng)(IMS)[1]是第三代標(biāo)準(zhǔn)組織(3GPP)在Release 5階段提出的一個開放的網(wǎng)絡(luò)架構(gòu)。由于IMS網(wǎng)絡(luò)具有控制和業(yè)務(wù)分離、接入無關(guān)、統(tǒng)一控制等特點,3GPP、國際電信聯(lián)盟遠(yuǎn)程通信標(biāo)準(zhǔn)化組織(ITU-T)等標(biāo)準(zhǔn)組織明確IMS為下一代網(wǎng)絡(luò)的核心,由IMS提供廣泛的基于IP的應(yīng)用服務(wù)。隨著業(yè)務(wù)的開展,業(yè)務(wù)安全性和用戶體驗變得越來越重要,GBA是一種通用引導(dǎo)架構(gòu)[2],可應(yīng)用于IMS網(wǎng)絡(luò),解決用戶終端(UE)與應(yīng)用服務(wù)器(AS)之間相互認(rèn)證的安全問題,并提升用戶業(yè)務(wù)體驗。

    文章深入分析了通用引導(dǎo)架構(gòu)(GBA)和IMS網(wǎng)絡(luò)的技術(shù)特點,并從終端安全、算法安全、向量資源共享等角度對GBA在IMS網(wǎng)絡(luò)中的應(yīng)用提出了建議。

1 GBA在IMS中的應(yīng)用

1.1 GBA架構(gòu)

    隨著眾多業(yè)務(wù)的開展,運營商和用戶都需要可靠的認(rèn)證機制來保證業(yè)務(wù)的合法使用。尤其是在3G/4G業(yè)務(wù)中,很多應(yīng)用都需要UE和AS之間進行交互,如業(yè)務(wù)激活、業(yè)務(wù)設(shè)置、業(yè)務(wù)訪問等。為了保證業(yè)務(wù)應(yīng)用的安全性,就要求在UE和AS之間進行雙向認(rèn)證。如果UE和AS直接交互,存在兩個嚴(yán)重問題:UE和每個AS之間都要進行獨立的認(rèn)證,包括認(rèn)證機制的協(xié)商、密鑰的管理;UE每次登陸不同的AS,都需要輸入密鑰,用戶體驗差。

    因此3GPP標(biāo)準(zhǔn)組織提出了通用認(rèn)證架構(gòu)的概念,其中GBA就是一種基于共享密鑰的通用認(rèn)證架構(gòu)。GBA使用認(rèn)證與密鑰協(xié)商(AKA)為UE和網(wǎng)絡(luò)之間提供一種密鑰共享、相互認(rèn)證和業(yè)務(wù)保護的機制,具有較高的安全性和通用性。GBA架構(gòu)如圖1所示,其中引入了引導(dǎo)服務(wù)功能(BSF)、網(wǎng)絡(luò)應(yīng)用功能(NAF)網(wǎng)元以及認(rèn)證代理(AP)網(wǎng)元[2-7]。

    以下是GBA架構(gòu)中各邏輯實體的具體功能:

(1)BSF。BSF作為引導(dǎo)服務(wù)功能,處于用戶的歸屬網(wǎng)絡(luò)。BSF通過Zh接口從歸屬用戶服務(wù)器(HSS)獲得GBA的用戶安全設(shè)置和AKA認(rèn)證向量,并完成對UE的認(rèn)證,建立共享密鑰(Ks)。

(2)NAF。NAF作為網(wǎng)絡(luò)應(yīng)用功能,相當(dāng)于應(yīng)用服務(wù)器AS。NAF收到UE請求后,需要通過Zn接口從BSF獲取UE和BSF引導(dǎo)過程協(xié)商完成的密鑰信息,并完成對UE的認(rèn)證。

圖1 GBA架構(gòu) 

(3)AP。AP作為認(rèn)證代理功能,一般部署在UE和AS之間。AP代理AS完成對UE的認(rèn)證,然后AP轉(zhuǎn)發(fā)UE請求交由AS處理。

(4)HSS。所有的用戶安全設(shè)置、用戶號碼、認(rèn)證向量都存儲在HSS中,HSS支持通過Zh接口,返回認(rèn)證向量給BSF網(wǎng)元。

(5)UE。UE需要支持AKA/HTTP Digest協(xié)議,并且能夠與引導(dǎo)服務(wù)功能雙向認(rèn)證產(chǎn)生Ks,進而根據(jù)Ks,產(chǎn)生衍生密鑰Ks_NAF,該衍生密鑰則用于UE和NAF/AP之間所進行的雙向認(rèn)證。

    GBA流程一般包括兩個步驟:

(1)執(zhí)行引導(dǎo)認(rèn)證流程。通過AKA協(xié)議實現(xiàn)BSF與UE之間進行的雙向認(rèn)證,當(dāng)認(rèn)證成功后,UE和BSF擁有Ks。

(2)執(zhí)行業(yè)務(wù)訪問流程。UE與網(wǎng)絡(luò)應(yīng)用功能/AP之間通過Ks所產(chǎn)生的Ks_NAF來完成對用戶終端的相關(guān)認(rèn)證。

1.2 IMS網(wǎng)絡(luò)

    IMS網(wǎng)絡(luò)采用分層的架構(gòu),分為接入層、傳輸層、控制層和應(yīng)用層。接入層實現(xiàn)各類軟、硬終端連接到IMS網(wǎng)絡(luò);傳輸層提供網(wǎng)絡(luò)和網(wǎng)絡(luò)間的連接;控制層主要是用于對會話的控制;應(yīng)用層支持各種類型的應(yīng)用服務(wù)器[8-9]。

    IMS網(wǎng)絡(luò)中呼叫會話控制功能(CSCF)完成對用戶的認(rèn)證和呼叫的控制;HSS是用戶和業(yè)務(wù)信息的數(shù)據(jù)庫,完成用戶數(shù)據(jù)管理、業(yè)務(wù)簽約等功能;AS提供各類業(yè)務(wù)和應(yīng)用[10-12]。

1.3 GBA在IMS中的組網(wǎng)

    全IP結(jié)構(gòu)的IMS系統(tǒng)實現(xiàn)移動與固網(wǎng)融合,集數(shù)據(jù)、語音、視頻于一體,推動運營商轉(zhuǎn)變到寬帶多媒體應(yīng)用和服務(wù)中來。

    在IMS網(wǎng)絡(luò)中,很多應(yīng)用都需要在UE與AS之間進行交互,如UE和基本補充業(yè)務(wù)服務(wù)器(MMTelAS)之間進行補充業(yè)務(wù)的激活、去激活,例如前轉(zhuǎn)類、限制類、顯示類業(yè)務(wù)設(shè)置操作。部署GBA通用認(rèn)證架構(gòu)能夠以統(tǒng)一的認(rèn)證機制,解決UE和AS雙向認(rèn)證的問題,同時增強運營商管控能力。圖2為GBA在IMS網(wǎng)絡(luò)中的組網(wǎng)示意,其中虛線是網(wǎng)元與HSS之間的接口,基于Diameter協(xié)議;粗實線表示GBA架構(gòu)的關(guān)鍵接口,基于超文件傳輸協(xié)議(HTTP);細(xì)實線表示IMS關(guān)鍵接口,基于會話初始協(xié)議(SIP)協(xié)議。

 1.4 GBA在IMS中的應(yīng)用

    UE在IMS網(wǎng)絡(luò)中進行呼叫、短信等業(yè)務(wù)之前,首先需要進行IMS網(wǎng)絡(luò)注冊。IMS網(wǎng)絡(luò)注冊過程也是UE和IMS網(wǎng)絡(luò)雙向認(rèn)證的過程。具體來說,當(dāng)UE經(jīng)過代理會話控制功能(PCSCF)和查詢會話控制功能(ICSCF)時,會向服務(wù)會話控制功能(SCSCF)發(fā)送注冊請求,SCSCF則從HSS獲取用戶的AKA認(rèn)證向量,并采用AKAMD5認(rèn)證算法,完成對UE的認(rèn)證,這個過程通常稱為IMS-AKA。認(rèn)證流程和UE與BSF之間的引導(dǎo)認(rèn)證流程類似,主要差異如圖2所示。UE和SCSCF之間基于SIP協(xié)議,UE和BSF之間基于HTTP協(xié)議。

    在IMS網(wǎng)絡(luò)GBA架構(gòu)中,UE與AS交互進行業(yè)務(wù)激活等操作時,首先通過BSF進行引導(dǎo)認(rèn)證流程,該流程通常稱為GBA-AKA,然后UE通過AP向AS發(fā)送業(yè)務(wù)操作請求,AP向BSF獲取衍生密鑰等信息,完成對UE的認(rèn)證。

    在IMS網(wǎng)絡(luò)中部署GBA通用認(rèn)證架構(gòu),需要避免每個AS都要提供獨有的認(rèn)證機制,同時在一定程度上也增強了運營商管控能力。

2 GBA在IMS中的應(yīng)用分析

    目前IMS網(wǎng)絡(luò)在固網(wǎng)改造、VoLTE領(lǐng)域得到廣泛應(yīng)用,但GBA在IMS網(wǎng)絡(luò)中應(yīng)用還屬于探索階段。下面就GBA在IMS網(wǎng)絡(luò)應(yīng)用中可能出現(xiàn)的一些情況,并結(jié)合運營商的考慮,對終端安全、算法安全、向量共享3個方面進行重點分析。

 2.1 終端安全分析

    在GBA架構(gòu)中,終端包含兩部分:移動設(shè)備(ME)和用戶識別卡。若ME是一個可信的設(shè)備,由于Ks和Ks_NAF的計算都依賴于客戶識別模塊(SIM)卡并保存在SIM卡中,那么我們認(rèn)為基于SIM卡的GBA方案是安全的。

    若ME是非法設(shè)備或是攻擊者定制的終端,則可能出現(xiàn)ME直接調(diào)用SIM卡并得到Ks,實現(xiàn)SIM卡的復(fù)用和冒用,具體流程參見圖3。在引導(dǎo)認(rèn)證階段,ME接收到隨機數(shù)(RAND)后,不調(diào)用SIM卡的GBA模塊,而是以RAND作為參數(shù)調(diào)用SIM卡中的AKA認(rèn)證模塊。SIM卡計算得到Kc和SRES,并返回給ME。ME則利用返回的Kc、SRES,模仿正常流程中SIM卡的操作,并通過計算得到GBA共享密鑰Ks=KDF(key,Ks-input,“3gpp-gba-res”,SRES),并將Ks保存在ME中。

    在業(yè)務(wù)訪問階段,UE可利用Ks計算得到Ks_NAF,而不再調(diào)用SIM卡的GBA模塊。因此,攻擊者只需要購買一張合法的SIM卡放置在不合法的ME中,并合法訂購某些業(yè)務(wù),利用上述方法獲得Ks和Ks_NAF,并且將Ks和Ks_NAF定制在仿造的客戶端軟件中,供他人下載使用。若該業(yè)務(wù)為包月類型業(yè)務(wù),那么使用該仿造的客戶端軟件的終端不需要付費就可以使用該業(yè)務(wù),嚴(yán)重影響運營商的業(yè)務(wù)開展。

    為了提高IMS網(wǎng)絡(luò)GBA架構(gòu)終端設(shè)備的安全性,避免上述情況的出現(xiàn),有兩種解決方案:

(1)采用通用集成電路卡(UICC),UICC表示物理卡,可以包括多種邏輯應(yīng)用。在UICC情況下,Ks的協(xié)商和生成全部都在UICC中完成,ME無法獲知,安全性高。

(2)對SIM卡終端進行適當(dāng)?shù)囊幌盗懈脑,可以避免ME直接從SIM卡得到Ks的可能。

圖2 GBA在IMS網(wǎng)絡(luò)中的組網(wǎng)

 

圖3 非法ME獲取密鑰流程

2.2 算法安全分析

    GBA通用引導(dǎo)架構(gòu)中采用AKA認(rèn)證,AKA認(rèn)證采用了MD5算法。MD5是一種用于產(chǎn)生數(shù)字簽名的單項散列算法。MD5算法可以將一個任意長度的“字節(jié)串”通過一個不可逆的變換算法變換成一個128bit的大整數(shù),即使你看到源程序和算法描述,也無法將一個MD5的值變換回原始的字符串。MD5具有較好的安全性,已經(jīng)廣泛運用于數(shù)字簽名、文件完整性驗證以及口令加密等領(lǐng)域。

    目前MD5已經(jīng)被破解,破解的原理就是快速找到碰撞字符串,碰撞字符串可以生成和真正的源字符串相同的MD5碼,但是破解的過程還是非常困難的。GBA認(rèn)證架構(gòu)采用MD5算法也存在一定的安全隱患。為了提高GBA的安全性,也有兩種解決方案:

(1)使用SHA-1算法,該算法與MD5的128位加密相比,使用了160位加密方式,比MD5安全性更高;

(2)在MD5算法中,使用了qop參數(shù),qop表示MD5計算的認(rèn)證保護級別,包括空、auth、auth-int!癮uthint”安全級別最高,使用“auth-int”能降低MD5被破解的概率。

2.3 向量共享分析在GBA通用認(rèn)證架構(gòu)中,對于終端引導(dǎo)認(rèn)證流程如圖4所示,具體步驟如下:

(1)UE向BSF發(fā)送HTTP請求,包括用戶的私有用戶標(biāo)識(IMPI);

(2)BSF通過Zh接口,向HSS發(fā)送多媒體認(rèn)證請求(MAR)認(rèn)證請求,請求消息中攜帶IMPI;

(3)HSS發(fā)送多媒體認(rèn)證響應(yīng)(MAA)認(rèn)證響應(yīng)消息給BSF,響應(yīng)消息中攜帶認(rèn)證向量,如AKA鑒權(quán)的五元組向量RAND、AUTN、XRES、CK、IK;

(4)BSF構(gòu)造401Unauthorized響應(yīng),響應(yīng)消息中包含了RAND和鑒權(quán)令牌(AUTN),不攜帶IK、CK、XRES;

(5)UE通過檢查AUTN來認(rèn)證網(wǎng)絡(luò),包括檢查是否失序,同時UE根據(jù)自身密鑰信息計算出CK、IK和RES,從而BSF和UE各自擁有共享密鑰Ks=CK||IK;

(6)UE發(fā)送HTTP請求到BSF,其中包含著UE計算的AKA響應(yīng)值(RES);

(7)BSF通過自身密鑰信息,計算RES完成對UE的認(rèn)證。若認(rèn)證成功,生成Ks和B-TID;(8)BSF發(fā)送200OK消息到UE通知認(rèn)證成功,該消息中包含BTID。此外,在這個200OK消息中還要包含共享密鑰Ks的生存期。

    上述GBA-AKA流程和IMS-AKA(UE在IMS網(wǎng)絡(luò)注冊流程)具有共同的特點是BSF和SCSCF的AKA認(rèn)證向量都是從HSS下載。

    目前這種機制,存在兩個問題:

(1)GBA-AKA和IMS-AKA彼此分離且獨立,同一個終端需要使用不同的AKA認(rèn)證向量,增加了資源的消耗;

(2)目前IMS-AKA,SCSCF一次從HSS下載5組AKA認(rèn)證向量,GBA-AKA僅下載1組,AKA認(rèn)證向量包含了遞增的序列號(SQN)。通常UE先在IMS注冊,下載5組向量,然后執(zhí)行GBA-AKA,下載包含最新的SQN的向量,那么IMS網(wǎng)絡(luò)其他幾組認(rèn)證向量將失效,因為終端認(rèn)為本地的SQN大于IMS網(wǎng)絡(luò)SCSCF保存的向量SQN,產(chǎn)生了失序情況。

    為了減少失序情況的產(chǎn)生,減少AKA認(rèn)證向量的消耗,結(jié)合GBAAKA和IMS-AKA的特點,可以考慮GBA在IMS網(wǎng)絡(luò)實際商用部署時,將GBA-AKA和IMS-AKA的認(rèn)證向量實現(xiàn)共享。一種可行的解決方案是:SCSCF和BSF之間共享認(rèn)證向量。具體來說,IMS-AKA流程中,S-CSCF從HSS下載新的認(rèn)證向量后,增加向BSF同步認(rèn)證向量的接口,BSF本地保存認(rèn)證向量,以便GBA-AKA流程使用。在GBA-AKA流程中,如果BSF從HSS下載了新的認(rèn)證向量,BSF需要向SCSCF同步認(rèn)證向量,以便IMS-AKA流程使用。通過該解決方案,提高了AKA認(rèn)證向量資源的使用效率,減少了失序情況。

圖4 UE與BSF交互流程

3 GBA在IMS中應(yīng)用的建議

3.1 合一部署為了減少網(wǎng)絡(luò)的復(fù)雜性,方便運營商的運維管理,在IMS網(wǎng)絡(luò)中部署GBA架構(gòu),可以考慮將部分邏輯網(wǎng)元進行物理合設(shè),有3種解決方案。

方案1:AP和SCSCF合設(shè)。AP和SCSCF與AS都有接口,AP和SCSCF物理合設(shè),可以簡化組網(wǎng)。

方案2:SCSCF和BSF合設(shè)。SCSCF和BSF都需要訪問HSS,獲取認(rèn)證向量,兩者與HSS接口相同,采用同樣的消息獲取認(rèn)證向量,BSF和SCSCF物理合設(shè),可以共享認(rèn)證向量及部分處理邏輯。

方案3:BSF和AP合設(shè)。BSF和AP作為邏輯網(wǎng)元,各自具有獨立的邏輯,實際部署時,可以進行物理合設(shè),簡化網(wǎng)絡(luò)。

3.2 應(yīng)用建議

    IMS網(wǎng)絡(luò)目前已經(jīng)支持:一鍵通、即時通信IM、多媒體短信、彩鈴、Centrex、MMTELAS等應(yīng)用服務(wù),此外IMS開放式應(yīng)用架構(gòu)還支持游戲、音樂等新的應(yīng)用服務(wù)。隨著IMS網(wǎng)絡(luò)業(yè)務(wù)越來越多,GBA在IMS網(wǎng)絡(luò)中應(yīng)用需求就越強烈。基于對GBA和IMS的深入研究,結(jié)合應(yīng)用的深入分析,對IMS網(wǎng)絡(luò)中部署GBA架構(gòu),我們提出如下建議:

(1)終端需要支持對網(wǎng)絡(luò)的認(rèn)證,防止偽造網(wǎng)絡(luò)竊取用戶信息。

(2)終端最好能夠支持通用集成電路卡(UICC)卡,對于SIM卡用戶,最好能夠?qū)K端進行改造,提高終端的安全性。

(3)在MD5算法中,要求終端和網(wǎng)絡(luò)采用“auth-int”進行計算。

(4)采用AKA認(rèn)證向量的共享機制,減少向量資源的消耗,減少失序情況的出現(xiàn)。

(5)考慮GBA網(wǎng)絡(luò)的安全性,需要BSF/AP和UE之間部署防火墻,或者BSF/AP內(nèi)置防攻擊功能,保證GBA網(wǎng)絡(luò)的安全性。

(6)根據(jù)運營商需求,考慮合一部署,簡化網(wǎng)絡(luò)。

 4 結(jié)束語

    文章分析了GBA架構(gòu)和流程,結(jié)合GBA架構(gòu)在IMS網(wǎng)絡(luò)中應(yīng)用,從終端安全、算法安全、認(rèn)證向量共享等幾個角度進行了深入分析,為GBA架構(gòu)在IMS網(wǎng)絡(luò)中商用提出了一些建設(shè)性意見,包括共享向量、采用SHA-1算法、采用UICC卡、合一部署等。這些研究和建議必然對GBA架構(gòu)在IMS網(wǎng)絡(luò)中的應(yīng)用帶來一定的幫助和指導(dǎo)。

參考文獻

[1]袁琦.IMS網(wǎng)絡(luò)安全技術(shù)研究[J].電信網(wǎng)技術(shù),2008,(9):8-10.

[2]趙川斌,等.基GBA的MBMS終端安全體系研究[J].電視技術(shù),2008,32(7):36-38.

[3]李貴勇,趙川斌.基于GBA的TDMBMS網(wǎng)絡(luò)安全體系研究[J].重慶郵電大學(xué)學(xué)報,2008,20(6):639-642.

[4]任亞梅,李煒.基于GBA的認(rèn)證鑒權(quán)流程[J].計算機系統(tǒng)應(yīng)用,2011,20(2):137-141.

[5]3GPPTS33.220-c00.3rdGenerationPartnershipProject;TechnicalSpecificationGroupServicesandSystemAspects;3GSecurity;GenericAuthenticationArchitecture(GAA);Genericbootstrappingarchitecture[S].

[6]3GPPTS29.109-b30.3rdGenerationPartnershipProject;TechnicalSpecificationGroupCoreNetwork;GenericAuthenticationArchitecture(GAA);ZhandZnInterfacesbasedontheDiameterprotocol;Protocoldetails[S].

[7]3GPPTS24.109-c00.3rdGenerationPartnershipProject;TechnicalSpecificationGroupCoreNetwork;Bootstrappinginterface(Ub)andNetworkapplicationfunctioninterface(Ua);Protocoldetails[S].

[8]劉牧寅,符剛.IMS在物聯(lián)網(wǎng)中的應(yīng)用初探[J].郵電設(shè)計技術(shù),2012,(6):27-30.

[9]朱斌,朱愛華,符剛.IMS在移動網(wǎng)絡(luò)演進中的共號碼策略研究[J].郵電設(shè)計技術(shù),2013,(4):10-14.

[10]李陽,申鉉京,廉芳芳.IMS網(wǎng)絡(luò)多種鑒權(quán)機制的研究[J].微計算機信息.2008,24(3-3):42-43.

[11]王穎,董江.移動視頻業(yè)務(wù)在IMS分組網(wǎng)中的部署與鑒權(quán)研究[J].信息技術(shù),2010,(10):82-84.

[12]張方舟等,3G接入技術(shù)中認(rèn)證鑒權(quán)的安全性研究[J].微電子學(xué)與計算機,2004,21(9):33-37.

   來源:《中興通訊技術(shù)》2014年第4期
微信掃描分享本文到朋友圈
掃碼關(guān)注5G通信官方公眾號,免費領(lǐng)取以下5G精品資料
  • 1、回復(fù)“YD5GAI”免費領(lǐng)取《中國移動:5G網(wǎng)絡(luò)AI應(yīng)用典型場景技術(shù)解決方案白皮書
  • 2、回復(fù)“5G6G”免費領(lǐng)取《5G_6G毫米波測試技術(shù)白皮書-2022_03-21
  • 3、回復(fù)“YD6G”免費領(lǐng)取《中國移動:6G至簡無線接入網(wǎng)白皮書
  • 4、回復(fù)“LTBPS”免費領(lǐng)取《《中國聯(lián)通5G終端白皮書》
  • 5、回復(fù)“ZGDX”免費領(lǐng)取《中國電信5GNTN技術(shù)白皮書
  • 6、回復(fù)“TXSB”免費領(lǐng)取《通信設(shè)備安裝工程施工工藝圖解
  • 7、回復(fù)“YDSL”免費領(lǐng)取《中國移動算力并網(wǎng)白皮書
  • 8、回復(fù)“5GX3”免費領(lǐng)取《R1623501-g605G的系統(tǒng)架構(gòu)1
  • 本周熱點本月熱點

     

      最熱通信招聘

      最新招聘信息