摘要:
文章基于3GPP體制探討了3G系統(tǒng)的安全機(jī)制,重點(diǎn)分析了3G認(rèn)證與密鑰分配協(xié)議、加密與完整性保護(hù)的過(guò)程及其安全性,并針對(duì)核心網(wǎng)部分,從ATMPRM出發(fā)討論了將安全功能置于ATM協(xié)議棧中不同位置時(shí)的幾種安全方案。
關(guān)鍵詞:
3G系統(tǒng);安全體制;AKA協(xié)議;加密與完整性;核心網(wǎng);ATM網(wǎng)絡(luò)安全
Abstract:
Thesecuritymechanismof3Gmobilecommunicationsystemisdiscussed,basedon3GPP,withemphasesontheanalysisof3Gauthenticationandkeyagreementprotocol,encryptionandintegrityprotection.Finallyseveralsecurityschemesareproposed,aimingatthecorenetworkandbasedontheATMprotocolreferencemodel,whenthesecuritylayerisplacedatdifferentpositionsoftheATMprotocolstack.
Keywords:
3Gmobilecommunicationsystem;Securityarchitecture;AKAprotocol;Encryptionandintegrity;Corenetwork;ATMnetworksecurity
在第3代移動(dòng)通信(3G)系統(tǒng)中,除了話音業(yè)務(wù)外,電子商務(wù)、電子貿(mào)易、網(wǎng)絡(luò)服務(wù)等新型業(yè)務(wù)將成為3G的重要業(yè)務(wù)內(nèi)容。移動(dòng)通信用戶之間的通信處于開放的空間環(huán)境中,因此終端設(shè)備(ME)和接入網(wǎng)(AN)間的空中接口是移動(dòng)通信系統(tǒng)易遭受攻擊的主要部分。與空中接口相關(guān)聯(lián)的威脅分為以下幾類:未經(jīng)授權(quán)接入數(shù)據(jù)和業(yè)務(wù)、消息完整性威脅、業(yè)務(wù)拒絕等。針對(duì)上述問題,3GPP(第3代移動(dòng)通信伙伴計(jì)劃項(xiàng)目)提供了完善的接入安全體制,內(nèi)容包括兩部分:一是空中接口安全,主要用于保護(hù)無(wú)線鏈路傳輸?shù)挠脩艉托帕钚畔ⅲ欢翘峁┯脩艉途W(wǎng)絡(luò)之間的身份認(rèn)證,以保證用戶和網(wǎng)絡(luò)雙方的實(shí)體可靠性。

加密和完整性保護(hù)是實(shí)現(xiàn)安全通信的核心,認(rèn)證與密鑰分配是實(shí)現(xiàn)安全通信的重要保證。3G系統(tǒng)的安全體制是建立在2G的基礎(chǔ)上,GSM及其他2G系統(tǒng)中已被證明是必須和穩(wěn)健的安全元素將被繼續(xù)采用,3G還將改進(jìn)2G中的安全弱點(diǎn),最終提供全新的安全性能和業(yè)務(wù)。同時(shí),從全網(wǎng)角度出發(fā),宏觀上3G系統(tǒng)可分為無(wú)線接入網(wǎng)與核心網(wǎng)兩大部分。3G系統(tǒng)主干網(wǎng)將采用ATM或IP技術(shù)。ATM被認(rèn)為是能靈活有效地應(yīng)用于高速骨干網(wǎng)的一種傳輸與交換技術(shù),它具有攜帶不同類型信息(語(yǔ)音、數(shù)據(jù)和視頻)的能力。3GPPR99的核心網(wǎng)將ATM作為其骨干網(wǎng)傳輸技術(shù)之一。因此,本文對(duì)3G系統(tǒng)的安全性分析從以下兩方面進(jìn)行:無(wú)線鏈路與ATM網(wǎng)絡(luò)。
1、3G安全體制
1.1、3G安全體制的目標(biāo)和原則
3G的安全目標(biāo)是:確保用戶的有效信息和網(wǎng)絡(luò)資源不被誤用,確保安全體制標(biāo)準(zhǔn)化、統(tǒng)—化,對(duì)數(shù)據(jù)的保護(hù)要優(yōu)于GSM和現(xiàn)行的固定電話系統(tǒng),建設(shè)可拓展的安全機(jī)制。具體地講,3G的安全目標(biāo)應(yīng)能夠防范基于偽基站的主動(dòng)攻擊、中間者攻擊、偽用戶攻擊、用戶身份截取、搭線竊聽、截取來(lái)話攻擊、欺騙網(wǎng)絡(luò)或拒絕服務(wù)攻擊等。基于上述目標(biāo),3G系統(tǒng)對(duì)資源存取控制、系統(tǒng)接入控制、網(wǎng)絡(luò)實(shí)體互連、通信節(jié)點(diǎn)安全、網(wǎng)間信令安全等機(jī)制均定義了嚴(yán)格的安全原則。這些原則在3G的系統(tǒng)設(shè)計(jì)中得到了充分的體現(xiàn)。
1.2、3GPP安全體制的安全功能及其算法
3G安全功能結(jié)構(gòu)如圖1所示。橫向代表安全措施,縱向代表相應(yīng)的網(wǎng)絡(luò)實(shí)體。安全措施分為5類:
增強(qiáng)用戶身份保密(EUIC):通過(guò)HE/AuC(本地環(huán)境/認(rèn)證中心)對(duì)USIM(用戶業(yè)務(wù)識(shí)別模塊)身份信息進(jìn)行認(rèn)證;
用戶與服務(wù)網(wǎng)間身份認(rèn)證(UIC);
認(rèn)證與密鑰分配(AKA):用于USIM、VLR/SGSN(訪問位置寄存器/服務(wù)GPRS支持節(jié)點(diǎn))、HLR(歸屬位置寄存器)間的雙向認(rèn)證及密鑰分配;
數(shù)據(jù)加密(DC):UE(用戶終端)與RNC(無(wú)線網(wǎng)絡(luò)控制器)間信息的加密;
數(shù)據(jù)完整性(DI):用于對(duì)交互消息的完整性、時(shí)效性及源與目的地進(jìn)行認(rèn)證。
3G安全系統(tǒng)定義了11個(gè)安全算法:f0、f1*、f1~f9,以實(shí)現(xiàn)其安全功能[1]。f8與f9分別實(shí)現(xiàn)DC和DI標(biāo)準(zhǔn)算法。f6與f7用于實(shí)現(xiàn)EUIC。AKA由f1~f5實(shí)現(xiàn)。其中,f1=>MAC(消息認(rèn)證碼),f2=>XRES(期望的認(rèn)證應(yīng)答),f3=>CK(加密密鑰),f4=>IK(完整性密鑰),f5=>AK(匿名密鑰),f6對(duì)IMUI(國(guó)際移動(dòng)用戶識(shí)別碼)進(jìn)行加密,f7對(duì)用戶身份進(jìn)行解密。各算法的詳細(xì)操作在下面加以分析。
1.3、3GPP安全體制的總體結(jié)構(gòu)
3GPP安全體制的總體結(jié)構(gòu)如圖2所示,可分為3個(gè)層面5個(gè)部分:

(1)網(wǎng)絡(luò)接入安全(I):提供安全接入3G服務(wù)網(wǎng)的機(jī)制,并抵御對(duì)無(wú)線鏈路的攻擊。空中接口的安全性最為重要,因?yàn)闊o(wú)線鏈路最易遭受各種攻擊。這一部分的功能包括:用戶身份保密、認(rèn)證和密鑰分配、數(shù)據(jù)加密和完整性等。其中認(rèn)證和密鑰分配是基于USIM和HE/AuC共享秘密信息的相互認(rèn)證。認(rèn)證過(guò)程中也融合了加密、完整性保護(hù)等措施。
(2)網(wǎng)絡(luò)域安全(II):保證網(wǎng)內(nèi)信令的安全傳送并抵御對(duì)有線網(wǎng)絡(luò)(核心網(wǎng)部分)的攻擊。
(3)用戶域安全(III):主要保證對(duì)移動(dòng)臺(tái)的安全接入,包括用戶與智能卡間的認(rèn)證、智能卡與終端間的認(rèn)證及其鏈路的保護(hù)。
(4)應(yīng)用域安全(IV):使用戶域與服務(wù)提供商的應(yīng)用程序間能夠安全的交換信息。
(5)安全特性的可視性及可配置能力(V):主要指用戶能獲知安全特性是否在使用以及服務(wù)提供商提供的服務(wù)是否需要以安全服務(wù)為基礎(chǔ)。
1.4、3G認(rèn)證與密鑰分配協(xié)議及其安全性分析
1.4.1、AKA協(xié)議過(guò)程
AKA參與方由3個(gè)部分構(gòu)成,即:MS(移動(dòng)臺(tái))、VLR/SGSN、HLR。其認(rèn)證與密鑰分配過(guò)程如圖3所示。由該圖可知,AKA協(xié)議分為以下幾個(gè)步驟:①M(fèi)S→VLR:IMSI,HLR;②VLR→HLR:IMSI;③HLR→VLR:AV認(rèn)證向量;④VLR→MS:RAND‖AUTN;⑤MS→VLR:RES(認(rèn)證響應(yīng))。其中,AV為認(rèn)證向量,AV=RAND‖XRES‖CK‖IK‖AUTN;XRES=f2K(RAND);CK=f3K(RAND);IK=f4K(RAND);AUTN=SQN?茌AK‖MODE‖MAC:認(rèn)證令牌;SQN為序列號(hào);AK=f5K(RAND),用于隱藏序列號(hào);MODE:移動(dòng)性管理標(biāo)識(shí);MAC=f1K(SQN‖RAND‖MODE)。
認(rèn)證過(guò)程由VLR發(fā)起。首先VLR收到MS的注冊(cè)請(qǐng)求后,向MS的HLR發(fā)送該用戶的IMSI,請(qǐng)求對(duì)該用戶進(jìn)行認(rèn)證。HLR收到VLR的認(rèn)證請(qǐng)求后,生成SQN和RAND,計(jì)算認(rèn)證向量AV,并發(fā)送給VLR。VLR收到認(rèn)證向量后,將RAND‖AUTN發(fā)給MS,請(qǐng)求MS產(chǎn)生認(rèn)證數(shù)據(jù)。MS接收到認(rèn)證請(qǐng)求后,先計(jì)算XMAC(ExpectedMAC)并與AUTN中的MAC比較,若不同,則向VLR發(fā)送拒絕認(rèn)證消息并放棄該過(guò)程。同時(shí)MS驗(yàn)證接收到的SQN是否在有效的范圍內(nèi),若不在有效的范圍內(nèi),MS則向VLR發(fā)送“同步失敗”消息,并放棄該過(guò)程。上述兩項(xiàng)驗(yàn)證通過(guò)后,MS計(jì)算RES=f2K(RAND)、CK和IK,并將RES發(fā)送給VLR。VLR接收到來(lái)自MS的RES后,將RES與認(rèn)證向量AV中的XRES進(jìn)行比較,相同則認(rèn)證成功,否則認(rèn)證失敗。

1.4.2、AKA安全性分析
用戶與網(wǎng)絡(luò)之間的相互認(rèn)證依賴于MS與HLR共享的秘密密鑰。AKA應(yīng)達(dá)如下安全目標(biāo)[2]:
(1)VLR對(duì)MS的認(rèn)證及MS對(duì)HLR的認(rèn)證:AKA第③步中VLR收到來(lái)自HLR的AV中包含了期望MS產(chǎn)生的XRES。若MS是合法用戶應(yīng)能正確計(jì)算RES=f2K(RAND)且RES=XRES。MS對(duì)HLR的認(rèn)證是通過(guò)MAC實(shí)現(xiàn)的。MS收到VLR轉(zhuǎn)發(fā)的來(lái)自HLR的MAC,計(jì)算XMAC=f1K(SQN‖RAND‖MODE),若MAC=XMAC,則認(rèn)證成功。
(2)MS與VLR之間的密鑰分配:AKA第③步中VLR收到來(lái)自HLR的AV中包含了CKHLR與IKHLR,合法用戶在收到正確的RAND后,能正確產(chǎn)生CKMS與IKMS,且CKHLR≡CKMS,IKHLR≡IKMS。CK與IK將用于其后的保密通信,而CK與IK沒有在空中接口中傳輸,確保了密鑰的安全性。
(3)確保MS與VLR之間密鑰的新鮮性:由于每次通信前的認(rèn)證選擇了不同的AV,保證了每次通信采用的CK與IK是由不同的RAND計(jì)算得到。而每次使用的MAC是由不斷遞增的SQN作為其輸入變量之一,從而確保密鑰的新鮮性,有效地防止了重復(fù)攻擊。
1.4.3、對(duì)AKA可能的攻擊
經(jīng)上述分析,該認(rèn)證方案實(shí)現(xiàn)了VLR對(duì)MS以及MS對(duì)HLR的認(rèn)證,但不要求MS對(duì)VLR進(jìn)行認(rèn)證。因此攻擊者X可利用截獲的合法IMSI進(jìn)行如下的攻擊:①M(fèi)S→X:IMSI;②X→VLR:IMSI;③VLR→HLR:IMSI;④HLR→VLR:AV=RAND‖XRES‖CK‖IK‖AUTN;⑤VLR→X:RAND‖AUTN;⑥X→MS:RAND‖AUTN;⑦M(jìn)S→X:RES;⑧X→VLR:RES。這樣,X就可以假冒該MS入網(wǎng)。但由于CK與IK未在無(wú)線接口中傳輸,攻擊者無(wú)法獲得這些密鑰而進(jìn)行正常的通信。但是上述方案沒有考慮到網(wǎng)絡(luò)端的認(rèn)證與保密通信。若攻擊者X對(duì)VLR與HLR之間的信息進(jìn)行竊聽,就可能獲得HLR傳給VLR的認(rèn)證向量AV從而獲得CK與IK。此后攻擊者X再假冒該MS入網(wǎng),即可實(shí)現(xiàn)正常的保密通信,而合法用戶傳送的信息也就失去了保密性。對(duì)于這種可能的攻擊,文獻(xiàn)[2]提出了一種改進(jìn)方案。
1.5、本地認(rèn)證
AKA是基于認(rèn)證向量的在USIM和HE之間的認(rèn)證,適用于用戶第一次登錄網(wǎng)絡(luò)時(shí)的情況。在線用戶發(fā)出服務(wù)請(qǐng)求、位置更新或剝離網(wǎng)絡(luò)請(qǐng)求時(shí)常使用另一種認(rèn)證:本地認(rèn)證。它使用了AKA中產(chǎn)生的CK與IK,認(rèn)證只發(fā)生在USIM和VLR之間,可為用戶數(shù)據(jù)提供完整性保護(hù)。這樣做的好處是即使HE/AuC的鏈路不穩(wěn)定,VLR/SGSN也可為用戶提供安全服務(wù)。
1.6、加密和完整性保護(hù)
認(rèn)證成功后,3G系統(tǒng)允許對(duì)空中接口的數(shù)據(jù)進(jìn)行加密和完整性保護(hù)。加密和完整性算法分別采用了KASUMI算法中的f8和f9算法,分別如圖4與圖5所示。通過(guò)f8算法產(chǎn)生密碼流分組對(duì)原始數(shù)據(jù)進(jìn)行加密。若構(gòu)成無(wú)線承載(RadioBearer)的RLC層采用非透明模式,則加密由RLC層實(shí)施;若RLC層采用透明模式,則加密由MAC層實(shí)施。f9算法的輸入?yún)?shù)包括:IK、完整性序列號(hào)COUNT-I、隨機(jī)數(shù)FRESH、方向比特DIRECTION和信令消息MESSAGE。發(fā)送方利用f9算法計(jì)算出MAC-I,隨消息一起發(fā)送出去,接收方計(jì)算XMAC-I并與收到的MAC-I相比較以驗(yàn)證消息的完整性。
1.7、3GPP與3GPP2安全體制的比較

3GPP2的認(rèn)證協(xié)議也采用了“請(qǐng)求—響應(yīng)”的形式。整個(gè)認(rèn)證方式與3GPP類似,但其認(rèn)證是以基站為核心的,只有其增強(qiáng)認(rèn)證和加密模式才可提供用戶和網(wǎng)絡(luò)的相互認(rèn)證。其異同點(diǎn)如表l所示。
2、基于ATM的3G核心網(wǎng)安全性
上述無(wú)線鏈路部分的安全性是以核心網(wǎng)的安全性為前提的,在3G系統(tǒng)中主干網(wǎng)將采用ATM或IP技術(shù)。因此,要達(dá)到整個(gè)系統(tǒng)的安全性,則必須保證ATM或IP網(wǎng)絡(luò)的安全性。下面從ATM協(xié)議參考模型(PRM)出發(fā)來(lái)討論。
2.1、ATM的PRM、安全威脅與安全功能
ATMPRM包括3個(gè)用戶平面:用戶平面——用于交換用戶信息;控制平面——監(jiān)視信令信息;管理平面——用于維持網(wǎng)絡(luò)操作。從層次上看,PRM可分成4層:物理層、ATM層、ATM適配層(AAL)和應(yīng)用層。其中,物理層完成傳輸比特流的功能;ATM層負(fù)責(zé)交換、路由選擇和信元復(fù)用;ATM適配層又由拆裝子層(SAR)和會(huì)聚子層(CS)組成,用于高層應(yīng)用的映射,以提供不同業(yè)務(wù)的通信能力。
ATM網(wǎng)絡(luò)容易受到多樣性的安全威脅與攻擊,如:竊聽、用訛用信息混淆接收方、假冒或欺騙對(duì)方、否認(rèn)和拒絕服務(wù)等。因此,ATM網(wǎng)絡(luò)必須提供如下安全功能:數(shù)據(jù)加密;完整性校驗(yàn);認(rèn)證——建立一個(gè)連接雙方的相互認(rèn)證以防止假冒攻擊;接入控制——防止未經(jīng)授權(quán)使用網(wǎng)絡(luò)資源;防否認(rèn)——提供傳送信息的證據(jù),使用戶無(wú)法否認(rèn)。
2.2、在ATM網(wǎng)絡(luò)中實(shí)現(xiàn)安全功能的4種方案
下面從ATMPRM出發(fā),分析將安全功能置于ATM協(xié)議棧中不同位置時(shí)的安全方案[3,4]。
(1)方案I(安全層置于物理層或物理層與ATM層之間或ATM層)
在這個(gè)方案中,安全功能對(duì)信元的全部53字節(jié)進(jìn)行加密,提供了完整的機(jī)密性(用戶數(shù)據(jù)和業(yè)務(wù)流機(jī)密性),并使得安全機(jī)制對(duì)所有高層透明。但是由于ATM交換需要使用5字節(jié)信元頭信息,因此它存在以下缺點(diǎn):
a.降低了交換性能,暴露了用戶有效負(fù)荷。途中的ATM交換機(jī)必須完全地解密和再加密每一個(gè)信元,因此而增加的額外開銷常不是所希望的,且許多現(xiàn)存的交換機(jī)不能提供這種業(yè)務(wù)。

b.需要龐大的密鑰管理系統(tǒng)管理交換機(jī)和終端的密鑰,而且信元的凈負(fù)荷在交換機(jī)處因需要解密而呈明文,易受到攻擊。
c.完整性校驗(yàn)需額外的分割功能,從而增加了開銷。
(2)方案II(將安全層置于ATM層和AAL層之間)
本方案中,安全層對(duì)相鄰層透明,從而可避免以下方案III中所提到的實(shí)現(xiàn)問題。在此情形下,安全機(jī)制在固定大小的SAR-PDU上操作。因?yàn)槭窃贏TM層加信元頭,因此整個(gè)SAR-PDU都可以被加密。加密機(jī)制可能導(dǎo)致的數(shù)據(jù)擴(kuò)充問題可采用諸如“反饋鏈”及“流加密”等技術(shù)加以解決。因此,數(shù)據(jù)加密可以采用這種方案。雖然在這一層上提供完整性校驗(yàn)會(huì)導(dǎo)致額外的信元分割要求,完整性校驗(yàn)要求計(jì)算完全校驗(yàn)和值(ICV)并將其附于數(shù)據(jù)后。此外,當(dāng)采用“鏈技術(shù)”時(shí),可能需要—個(gè)初始化矢量(IV)。因此,需在一個(gè)信息的末尾添加ICV并在下—個(gè)信息的開始提供IV,而在最后一個(gè)SAR-PDU內(nèi)沒有足夠的空間用于添加這兩個(gè)參數(shù)時(shí),就需要產(chǎn)生一個(gè)額外的SAR-PDU以容納ICV和IV。事實(shí)上,這個(gè)額外的SAR-PDU可被用于加密同步。由于ATM網(wǎng)絡(luò)可能丟失信元,因此,同步是實(shí)現(xiàn)ATM網(wǎng)絡(luò)安全的一個(gè)基本的要求,將同步與完整性檢測(cè)相結(jié)合有助于減少額外開銷,同時(shí),在與加密相同的層上提供同步,克服了在不同層上處理它們的缺點(diǎn)。該方案最易于實(shí)現(xiàn)ATM網(wǎng)絡(luò)的安全性。
(3)方案III(將安全層置于AAL內(nèi))
將安全層置于AAL內(nèi)明顯的位置是在CS和SAR之間。這允許加密和完整性校驗(yàn)在CS-PDU上操作,從而可解決方案I中的主要問題之一,避免在交換機(jī)處為檢測(cè)信元頭而解密、再加密每一個(gè)信元。但是,本方案有—個(gè)實(shí)用系統(tǒng)中的實(shí)現(xiàn)問題。從邏輯上看,可以在AAL層的子層之間插入一個(gè)安全層。但實(shí)際上,由于AAL層的子層之間沒有一個(gè)獨(dú)立的可用接口,因此這種方法實(shí)際是不可行的,這就意味著安全功能的提供將需要更換AAL,而不是簡(jiǎn)單增加一個(gè)安全子層,這是在任何一個(gè)實(shí)用的ATM安全建議中所需考慮的一個(gè)實(shí)際問題。
(4)方案IV(將安全層置于AAL之上)
此方案中,安全功能在未分割的CS-SDUs上操作。但—般而言,可能有幾個(gè)不同的高層應(yīng)用在AAL上操作,安全層的接口需與這些不同的高層應(yīng)用相匹配。因此,這種方法的實(shí)現(xiàn)代價(jià)和復(fù)雜性都要比在底層實(shí)現(xiàn)高。
3、結(jié)束語(yǔ)
由于網(wǎng)絡(luò)的開放性和通信協(xié)議的安全有缺陷導(dǎo)致了網(wǎng)絡(luò)安全問題。本文從無(wú)線鏈路和ATM網(wǎng)絡(luò)兩方面探討和分析了3G移動(dòng)通信系統(tǒng)的安全機(jī)制,同時(shí)考慮這兩方面的安全性將對(duì)網(wǎng)絡(luò)域內(nèi)實(shí)體之間的信息交互和UE之間的相互通信提供更有力的安全保障。□
參考文獻(xiàn):
[1]3GTS33.105Version3.0.0,3GSecurity:CryptographicAlgorithmRequirements[S].ftp://ftp.3gpp.org/specs.
[2]劉東蘇,韋寶典,王新梅.改進(jìn)的3G認(rèn)證與密鑰分配協(xié)議[J].通信學(xué)報(bào),2002,23(5):119—122.
[3]ATMForum:ATMSecuritySpecification[R].http://www.atmforum.com.
[4]李方偉.第三代移動(dòng)通信系統(tǒng)的安全技術(shù)研究[J].數(shù)字通信,2001,(8):9—11.
[5]3GTS33.102Version3.1.0,3GSecurity:SecurityArchitecture[S].ftp://ftp.3gpp.org/specs.
[6]3GTS33.103Version1.0.0,3GSecurity:IntegrationGuidelines
[S].ftp://ftp.3gpp.org/specs.
[7]3GTS33.120Version3.0.0,3GSecurity:SecurityPrinciplesandObjectives[S].ftp://ftp.3gpp.org/specs.
收稿日期:2002-11-19
作者簡(jiǎn)介:
林德敬,福州大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)系碩士研究生。主要研究方向?yàn)榫W(wǎng)絡(luò)、信息安全與通信保密。
林柏鋼,福州大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)系教授。研究方向?yàn)閿?shù)據(jù)通信與網(wǎng)絡(luò)、編碼與密碼、信息安全。
林德清,北京神州迪科科技發(fā)展有限公司工程與技術(shù)部助理工程師。主要從事通信、計(jì)算機(jī)等方面研發(fā)工作。