Research and Implementation of TD-LTE System Security
李小文 李 陽 韓娜娜
(重慶郵電大學(xué)通信學(xué)院,重慶 400065)
TD-LTE系統(tǒng)安全性的研究與實(shí)現(xiàn)
Research and Implementation of TD-LTE System Security
李小文李陽韓娜娜
(重慶郵電大學(xué)通信學(xué)院,重慶400065)
摘要:安全性是移動(dòng)通信系統(tǒng)正常運(yùn)行的基礎(chǔ)。采用安全算法對安全流程進(jìn)行了研究、設(shè)計(jì);考慮TD-LTE系統(tǒng)中保證用戶隱私的重要性,提出了安全性激活過程和認(rèn)證與密鑰協(xié)商協(xié)議(AKA)過程。驗(yàn)證系統(tǒng)引入了單層測試工具Realview IDE軟件,操作系統(tǒng)選用了Nucleus。實(shí)測結(jié)果驗(yàn)證了安全算法模塊的正確性和可行性,為以后研究更先進(jìn)的安全性算法奠定了基礎(chǔ)。
關(guān)鍵詞:TD-LTE安全性加密完整性測試
Abstract:Security is the basis for normal operation of the mobile communication system; for this reason, the security procedures are researched by using security algorithm. Especially considering the importance to ensure user’s privacy in TD-LTE system, the security activation process and the authentication and key agreement (AKA) protocol process are proposed. The verification system introduces the single testing tool Realview of IDE software; and the operating system is using Nucleus. The results of practical test verify the correctness and feasibility of the security algorithm; this lays the foundation for future studying of more advanced safety algorithms.
Keywords:TD-LTESecurityEncryptionIntegrityTest
0引言
2013年12月4日,中國工信部正式向中國移動(dòng)通信集團(tuán)公司、中國電信集團(tuán)公司和中國聯(lián)合網(wǎng)絡(luò)通信集團(tuán)有限公司三大運(yùn)營商頒發(fā)了“LTE/第四代數(shù)字蜂窩移動(dòng)通信業(yè)務(wù)(TD-LTE)”經(jīng)營許可。隨后各運(yùn)營商又先后宣布TD-LTE的商用,意味著國內(nèi)三大運(yùn)營商日后的競爭將主要圍繞以TD-LTE展開。這就增加了對TD-LTE系統(tǒng)中安全性研究的必要性和意義[1]。
在TD-LTE系統(tǒng)中,由于e-NodeB處于一個(gè)開放的環(huán)境下,攻擊者假設(shè)成功突破e-NodeB,就可以繼續(xù)攻擊用戶設(shè)備(user equipment,UE)、移動(dòng)管理實(shí)體(mobility management entity,MME)以及服務(wù)網(wǎng)關(guān)(serving gateway,S-GW)。另外,攻擊者如果對沒有進(jìn)行完整性保護(hù)或未加密的系統(tǒng)信令進(jìn)行操縱、破壞或攻擊,也會(huì)直接威脅整個(gè)TD-LTE系統(tǒng)的安全性。此外,在切換過程中,系統(tǒng)信令或用戶數(shù)據(jù)沒有進(jìn)行安全性保護(hù),那么一旦泄漏,可能導(dǎo)致UE與e-NodeB之間、UE與目標(biāo)基站之間的認(rèn)證威脅和重放攻擊。因此,TD-LTE系統(tǒng)的安全性的研究變得迫在眉睫[2]。
1TD-LTE系統(tǒng)安全性過程
由于TD-LTE采用了扁平化的組網(wǎng)方式,因此相應(yīng)地安全結(jié)構(gòu)也可分為兩個(gè)層次[3]。
① 接入層(access stratum,AS)安全性是指e-NodeB與UE之間的安全性,主要執(zhí)行AS系統(tǒng)信令的完整性保護(hù)和加密,以及對用戶數(shù)據(jù)的加密。
② NAS的安全指的是MME與UE之間的安全,主要指的是NAS系統(tǒng)信令的完整性保護(hù)和加密。
TD-LTE安全過程主要可分為鑒權(quán)與密鑰生成、安全性激活兩個(gè)過程,然后才能夠進(jìn)行用戶數(shù)據(jù)或系統(tǒng)信令的傳輸[3]。當(dāng)用戶首次開機(jī)時(shí),由于終端和網(wǎng)絡(luò)都不存在EPS安全上下文,因此移動(dòng)性管理實(shí)體(MME)會(huì)首先發(fā)起注冊過程,即鑒權(quán)與密鑰協(xié)商過程(authentication and key agreement,AKA)。通過AKA過程,終端與網(wǎng)絡(luò)相互核實(shí)對方的身份是否合法,協(xié)商雙方之間用于加密與完整性保護(hù)的密鑰,并且產(chǎn)生一致的EPS安全上下文。隨后網(wǎng)絡(luò)端會(huì)主動(dòng)發(fā)起用于NAS與AS層安全性激活的安全激活命令(security mode command,SMC)。通過SMC命令,終端與網(wǎng)絡(luò)端協(xié)商雙方的加密與完整性保護(hù)的安全算法,激活當(dāng)前的EPS安全上下文,最終使得UE和網(wǎng)絡(luò)端之間具有一致的密鑰和安全算法,保證二者之間通信的安全性[5]。具體流程如圖1所示。
圖1 安全性過程
AKA過程的結(jié)果是在終端和網(wǎng)絡(luò)端之間建立了EPS安全上下文,實(shí)現(xiàn)UE和網(wǎng)絡(luò)端之間密鑰的一致性和雙向鑒權(quán)[6]。
詳細(xì)的AKA過程如圖2所示。
圖2 認(rèn)證與密鑰協(xié)商協(xié)議過程分析
① 網(wǎng)元MME向網(wǎng)元本地用戶服務(wù)器(home subscriber server,HSS)發(fā)送Authentication data request系統(tǒng)信令。該系統(tǒng)信令攜帶服務(wù)網(wǎng)標(biāo)志(server network identity,SN ID)、IMSI以及Network Type。
② 網(wǎng)元HSS首先通過SN ID對終端進(jìn)行驗(yàn)證,如果證實(shí)該終端是本網(wǎng)絡(luò)的合法用戶,則HSS將利用網(wǎng)元MME發(fā)送過來的參數(shù)生成鑒權(quán)矢量(authentication vector,AV)。AV參數(shù)包括鑒證令牌(authentication token,AUTN)、隨機(jī)數(shù)(random number,RAND)、挑戰(zhàn)值響應(yīng)的期望值(expect response to challenge,XRES)以及KASME四個(gè)參數(shù)。
③ 網(wǎng)元HSS將生成的鑒權(quán)矢量AV發(fā)送給MME。
④ 網(wǎng)元MME將鑒權(quán)矢量AV存起來。
⑤ 網(wǎng)元MME將AUTN、RAND以及代替KASME的KASME密鑰設(shè)置標(biāo)志(key set identifier ofKASME,KSIASME)傳給終端。用KSIASME標(biāo)志KASME,既可以通過它來驗(yàn)證終端是否和網(wǎng)絡(luò)端具有一樣的KASME,又可以避免KASME在無線鏈路的傳輸,因而提高了密鑰的安全性。
⑥ 終端核實(shí)收到的認(rèn)證向量AUTN,其中AUTN=序列號(sequence number,SQN)匿名密鑰(anonymity key,AK)||鑒證管理域(authentication management field,AMF)||網(wǎng)絡(luò)認(rèn)證碼(network authentication code,MAC)。
AUTN的AMF[0]可以取值為0或1,當(dāng)AMF[0]取不同的值時(shí)代表不同的用途。如果認(rèn)證向量只在非EPS上下文的AKA認(rèn)證時(shí)使用,則AMF[0]被置為0;否則如果認(rèn)證向量只在EPS上下文的AKA認(rèn)證時(shí)使用,則AMF[0]被置為1。由于我們探討的是TD-LTE的EPS上下文的AKA認(rèn)證,所以終端會(huì)首先判斷AMF[0]是否為1,如果為1,終端才會(huì)接受該鑒權(quán)過程。同時(shí),終端會(huì)核實(shí)XMAC是否與收到的MAC一致,如果一致,則終端對網(wǎng)絡(luò)的鑒權(quán)通過。最后終端會(huì)繼續(xù)核實(shí)AUTN中的SQN是否在合理的范圍之內(nèi),如果是則通過驗(yàn)證,否則驗(yàn)證失敗。如果以上驗(yàn)證均通過,USIM將會(huì)生成挑戰(zhàn)值的響應(yīng)(response to challenge,RES)、CK以及IK,并將CK和IK發(fā)送給UE。否則如果驗(yàn)證失敗,USIM將會(huì)把失敗原因告知UE。當(dāng)AUTN的各組成部分都驗(yàn)證成功的情況下,UE發(fā)送RES到相應(yīng)的網(wǎng)絡(luò)端,然后UE根據(jù)CK、IK計(jì)算KASME以及SN ID。否則UE向網(wǎng)絡(luò)端發(fā)送用戶鑒權(quán)拒絕消息,并指示錯(cuò)誤原因。
⑦ 終端將生成的RES發(fā)送給網(wǎng)元MME。
⑧ 網(wǎng)元MME對比收到的RES和本地XRES,如果一樣,則鑒權(quán)成功,否則鑒權(quán)失敗。
上述過程完成之后,終端和網(wǎng)絡(luò)端的NAS層和AS層利用KASME通過密鑰生成算法(key derivation function,KDF)獲取相應(yīng)的加密與完整性保護(hù)所需要的密鑰。
在TD-LTE系統(tǒng)中,NAS層和AS層都需要進(jìn)行相互獨(dú)立的加密和完整性保護(hù)。它們的安全性的激活都是發(fā)生在AKA過程之后,并且網(wǎng)絡(luò)端先激活NAS層的安全性,再激活A(yù)S層的安全性[7]。
1.3.1NAS的安全性激活過程
NAS的安全性激活過程是由網(wǎng)絡(luò)端發(fā)起的。
MME首先會(huì)結(jié)合UE所支持的安全算法從NAS安全算法列表中分別選擇出優(yōu)先級最高的完整性保護(hù)算法和加密算法,然后將UE安全能力、為UE配置的安全算法以及標(biāo)志KASME的E-UTRAN密鑰標(biāo)志(key set identifier in E-UTRAN,eKSI)等參數(shù)包含在NAS Security Mode Command(簡稱NAS SMC)系統(tǒng)信令中發(fā)送給UE,并開啟相應(yīng)的定時(shí)器T3460。需要指出的是,系統(tǒng)采用eKSI指示的KASME產(chǎn)生的密鑰對該條信令進(jìn)行完整性保護(hù)卻沒有進(jìn)行加密。完整性保護(hù)方法是MME利用協(xié)商好的KASME生成完整性保護(hù)密鑰KNASint(non-access stratum integrity key,非接入層完整性密鑰),以及MME選擇的完整性保護(hù)算法生成一個(gè)完整性消息鑒權(quán)碼(message authentication code-integrity,MAC-I)[8]。
如果收到NAS SMC,UE 首先利用KASME生成KNASint,再聯(lián)合NAS SMC中攜帶的完整性保護(hù)算法生成一個(gè)X-MAC。如果X-MAC和MAC-I一樣,則該系統(tǒng)信令通過完整性校驗(yàn)。然后UE會(huì)對比本地存儲(chǔ)的UE安全能力與收到的UE安全能力。如果二者一樣,UE將向移動(dòng)性管理實(shí)體MME發(fā)送NAS Security Mode Complete,并使用新的EPS安全上下文。該消息會(huì)使用NAS SMC中指示的安全性算法進(jìn)行加密和完整性保護(hù);否則,UE將向移動(dòng)性管理實(shí)體MME發(fā)送不進(jìn)行加密和完整性保護(hù)的Security Mode Reject消息。
MME收到Security Mode Complete后,開始使用為UE配置的安全性算法對NAS Security Mode Complete進(jìn)行解密和完整性保護(hù)的核實(shí),并關(guān)閉相應(yīng)的定時(shí)器。如果解密后該消息通過完整性保護(hù)校驗(yàn),則此后MME將開始啟用新的非接入層EPS安全上下文,并且至此以后所有的消息都必須進(jìn)行加密和完整性保護(hù)。
具體流程如圖3所示。
圖3 非接入層安全性激活過程
1.3.2AS的安全性激活過程
在NAS的安全性激活后,網(wǎng)絡(luò)端就要通過AS SMC命令進(jìn)行AS層的安全性激活。
e-NodeB首先從AS安全算法列表中分別選擇出優(yōu)先級最高的完整性保護(hù)算法和加密算法,然后將安全算法包含在AS SMC中發(fā)送給UE。需要指出的是,e-NodeB采用KASME產(chǎn)生的密鑰對該條消息進(jìn)行完整性保護(hù)卻沒有進(jìn)行加密。完整性保護(hù)方法是e-NodeB利用Ke-NodeB(e-NodeB Key,演進(jìn)型節(jié)點(diǎn)B密鑰)生成的完整性保護(hù)密鑰KRRCint(radio resource control integrity key,RRC系統(tǒng)信令完整性密鑰)以及AS SMC中攜帶的完整性保護(hù)算法生成一個(gè)MAC-I,并將該MAC-I包含在AS SMC中發(fā)送給UE。UE收到AS SMC時(shí),首先利用KASME生成Ke-NodeB,再聯(lián)合AS SMC中攜帶的完整性保護(hù)算法生成一個(gè)X-MAC。然后UE會(huì)核實(shí)X-MAC和MAC-I是否一致,如果一致則該系統(tǒng)信令通過校驗(yàn),UE發(fā)送AS Security Mode Complete消息給e-NodeB,需要注意此消息會(huì)同時(shí)進(jìn)行加密和完整性保護(hù)[6]。當(dāng)e-NodeB收到這條系統(tǒng)信令時(shí),會(huì)對其進(jìn)行完整性校驗(yàn),如果完整性校驗(yàn)通過,則接入層的安全性就激活了,從而可以開始傳輸數(shù)據(jù)。如果X-MAC值和MAC-I值不一樣,則UE會(huì)向服務(wù)e-NodeB返回一條AS SecurityModeFailure消息。e-NodeB對AS SMC完成消息進(jìn)行完整性校驗(yàn)通過后,接入層的安全性就激活了,從而可以開始傳輸數(shù)據(jù)。
具體流程如圖4所示。
圖4 接入層安全性激活過程
2安全流程單層驗(yàn)證
在算法模塊得到驗(yàn)證之后,我們需要驗(yàn)證安全流程中函數(shù)功能的正確性,為此,論文采用白盒測試的方法對這些函數(shù)進(jìn)行單層測試。測試方法就是把某個(gè)函數(shù)當(dāng)作透明的盒子,根據(jù)函數(shù)的具體功能構(gòu)造合適的測試?yán)龑ζ溥M(jìn)行測試,并通過對比程序的函數(shù)跳轉(zhuǎn)或數(shù)據(jù)處理等過程是否與預(yù)期結(jié)果一致來驗(yàn)證程序的實(shí)現(xiàn)是否正確。
本文使用的單層測試工具是Realview IDE軟件,起支撐作用的操作系統(tǒng)選用Nucleus。由于論文篇幅限制,這里我們只介紹AS SMC過程中PDCP、RRC以及EMM層代碼的驗(yàn)證方法和結(jié)果。AKA和NAS SMC過程的驗(yàn)證方法均與AS SMC過程一樣,并且驗(yàn)證表明這兩層的程序也是正常運(yùn)行的。
在RRC層安全流程的測試過程中,測試?yán)裄RC層設(shè)置為測試對象,把其他層設(shè)置為環(huán)境,通過構(gòu)造其他層發(fā)往RRC層的消息以查看RRC層的具體響應(yīng)。首先我們需要構(gòu)造測試?yán)肟诤瘮?shù)RRC-test()。在該入口函數(shù)中,我們首先構(gòu)造PDCP層或EMM層發(fā)往RRC層的接口原語,當(dāng)RRC層接收到該接口原語后,會(huì)解析出接口原語中所承載的消息,并做出相應(yīng)處理。此時(shí)我們通過Realview IDE工具中的watch窗可以觀察函數(shù)處理之后的數(shù)據(jù)。
下面以接入層的安全激活流程為例說明其安全性流程的正確性。
構(gòu)造接入層安全性激活過程RRC層測試?yán)?/p>
① 測量目的為測試RRC層內(nèi)部處理接入層安全性激活過程的正確性。
② 預(yù)置條件為設(shè)置網(wǎng)絡(luò)端發(fā)送的DL-DCCH-Message消息中包含的信元是securityModeCommand。測試過程為終端PDCP層向RRC層發(fā)送PDCP-SRB-REQ接口原語,測試RRC層是否正確輸出EMMAS-SECURITY-IND原語,以及原語中攜帶的參數(shù)值是否正確。
③ 測試結(jié)果為通過。
測試步驟如下。
① 在RRC-test()函數(shù)中構(gòu)造PDCP層發(fā)往RRC層的接口原語PDCP-SRB-REQ,該接口原語包括頭指針header以及data包等數(shù)據(jù)成員。data包中的重要數(shù)據(jù)單元p_DL_DCCH_Message里面承載的信元是securityModeCommand。其中cipheringAlgorithm設(shè)置為0x02,代表網(wǎng)絡(luò)端為UE接入層配置的加密算法是AES-128安全算法;imtegrityProtAlgorithm設(shè)置為0x02,代表網(wǎng)絡(luò)端為UE接入層配置的完整性保護(hù)算法也是AES-128安全算法[9]。
② RRC層調(diào)用函數(shù)rrc_con_52CPDCP_SRB_IND(T_HeaderInfo *header),該函數(shù)通過頭指針找到接口原語所在內(nèi)存并解析出該接口原語中所攜帶的DL_DCCH_Message消息。該DL_DCCH_Message消息中攜帶的信元是AS SMC信元,并將該信元中的接入層安全算法存儲(chǔ)在全局變量v_rrc_g_security_para中的數(shù)據(jù)成員v_ENC_ALG和v_INT_ALG中。測試結(jié)果為v_ENC_ALG=0x02、v_ INT _ALG=0x02,表明RRC成功解析出網(wǎng)絡(luò)端配置的安全算法,并且成功跳轉(zhuǎn)到rrc_con_06EMMAS_SECURITY_IND()。
③ 進(jìn)入rrc_con_06EMMAS_SECURITY_IND()函數(shù)內(nèi)部時(shí),RRC層組裝發(fā)往EMM層的接口原語p_EMMAS_SECURITY_IND要求獲取密鑰Ke-NodeB,其中singling ID為0x0321與預(yù)期的EMMAS_SECURITY_
IND信令標(biāo)志一樣,并且Security_flag標(biāo)志設(shè)置為0x0000,代表接入層還沒有開始安全性保護(hù)[10],與預(yù)期的設(shè)置一致。
綜上所述,終端PDCP層向RRC層發(fā)送PDCP-SRB-REQ接口原語,RRC層正確輸出EMMAS-SECURITY-IND原語,并且原語中攜帶的參數(shù)也是正確的。
3結(jié)束語
安全是通信正常運(yùn)行和保證用戶隱私的基礎(chǔ)。本文重點(diǎn)介紹了TD-LTE系統(tǒng)安全性流程,并對其過程進(jìn)行了設(shè)計(jì)與驗(yàn)證,證明了安全性算法的正確性,為以后研究出更安全的流程算法打下基礎(chǔ)。
參考文獻(xiàn)
[1] 沈嘉,索士強(qiáng),全海洋,等.3GPP長期演進(jìn)(LTE)技術(shù)原理與系統(tǒng)設(shè)計(jì)[M].北京:人民郵電出版社,2008:10-11.
[2] 3GPP TS 36.300 V9.10.0 Evolved universal terrestrial radio access(E-UTRA) and evolved universal terrestrial radio access network(E-UTRAN),overall description[S].2012.
[3] 3GPP TR 33.821 V9.0.0 rationale and track of security decisions in long time evolution(TD-LTE) RAN/3GPP system architecture evolution(SAE)[S].2009.
[4] 3GPP TS 33.401 V9.7.0 3GPP system architecture evolution(SAE);security architecture[S].2011.
[5] 3GPP TS 35.206 V9.0.0 3G Security,specification of the MILENAGE algorithm set,an example algorithm set for the 3GPP authentication and key generation functions fl,f1*,f2,f3,f4,f5 and f5*,Document 2:algorith specification[S].2009.
[6] 3GPP TS 33.102 V9.4.0 Technical specification group services and system aspects,3G security,security architecture[S].2010.
[7] 3GPP TS 36.331 V9.13.0 Evolved universal terrestrial radio access(E-UTR A),radio resource control(RRC) protocol specification[S].2012.
[8] 李小文,李貴勇,陳賢亮,等.第三代移動(dòng)通信系統(tǒng)、系統(tǒng)信令及實(shí)現(xiàn)[M].北京:人民郵電出版社,2006.
[9] 曹俊華,李小文.TD-LTE/SAE系統(tǒng)接入層安全性的研究與實(shí)現(xiàn)[J].電視技術(shù),2011,35(1):1-4.
[10]牛麗麗,李校林,李小文.基于TTCN-3的TD-TD-LTE非接入層測試研究[J].廣東通信技術(shù),2012(4):1-4.
中圖分類號:TN929+.5
文獻(xiàn)標(biāo)志碼:A
DOI:10.16086/j.cnki.issn1000-0380.201502012
國家科技重大專項(xiàng)基金資助項(xiàng)目(編號:2012ZX03001024、2012ZX03001009-004
修改稿收到日期:2014-06-13。
第一作者李小文(1955-),男,1988年畢業(yè)于重慶大學(xué)信號與系統(tǒng)專業(yè),獲碩士學(xué)位,教授;主要從事第三代移動(dòng)通信TD-SCDMA無線接入技術(shù)的標(biāo)準(zhǔn)制定和終端產(chǎn)品協(xié)議棧軟件的開發(fā)工作。