(1. 重庆邮电学院, 重庆 400065;
2. 中国联通江西分公司, 江西 南昌 330002)
摘 要:详细介绍了GPRS与UMTS系统的网络接入安全机制, 分析了GPRS系统中存在的安全漏洞及UMTS较GPRS 在网络接入安全性方面的改善,最后分析了UMTS系统中存在的安全缺陷。
关键词:移动通信系统;网络接入安全; 认证; 密钥协商; 机密性; 完整性
一、引言
无线通信技术的迅速发展使移动通信以及以移动网络为平台的应用得到越来越多的重视和推广。 GPRS是在现有GSM网络的基础上,通过增加一些网络节点给用户提供分组接入服务,即将到来的UMTS(以下简称3G)不仅支持传统的话音与数据业务,还支持交互式业务,如多媒体业务、电子商务、网上银行以及互联网等多种信息服务。对移动用户和网络运营商来说,安全依然是其中至关重要的问题。由于移动用户与通信网之间采用无线通信,易受窃听和攻击,因此网络接入安全机制是移动通信系统安全方案中非常重要的一部分。本文首先详细介绍了GPRS与3G系统的网络接入安全机制,接着分析了3G较GPRS系统在网络接入安全性方面的改善,最后分析了3G系统可能受到的攻击。
二、GPRS与3G 系统的网络接入安全机制
GPRS和3G提供的安全特征包括用户身份机密性、认证与密钥协商和用户数据与信令数据机密性保护,在3G中还提供信令消息完整性保护。以下对上述几个方面进行详细分析。
1用户身份机密性
用户身份是重要而又敏感的信息,在通信中必须保证这些信息的机密性。身份保密的目的是保护用户的隐私,避免IMSI(永久用户标识)信息的泄漏。
在GPRS系统的无线接入链路上,为了保护用户身份的机密性,用临时逻辑链路标识(TLLI)与路由区域标识(RAI)来鉴别用户,而不是直接用IMSI来鉴别用户身份。TLLI与IMSI的关系保存在SGSN(服务GPRS支持节点)的数据库中且只有移动台(MS)和SGSN知道。
在3G中,利用临时用户身份标识(TMSI)代替IMSI鉴别用户身份。临时用户身份标识(TMSI)具有本地特征,仅在归属区域或用户注册的路由区域有效。在此区域外,为避免混淆,还应该附加一个位置区域标识(LAI)或路由区域标识(RAI)。临时用户标识与永久用户标识之间的关系保存在用户注册的VLR/SGSN中。
为了避免用户的可追踪性,不应长期使用同一TMSI来鉴别用户身份。TMSI的更新是在安全模式建立以后由VLR/SGSN发起,再分配过程如下:
(1)VLR/SGSN产生一个新的TMSIn,并将该TMSIn与IMSI的关系存储在它的数据库中,然后VLR/SGSN向用户发送TMSIn及一个新的位置区域标识LAIn;
(2)用户收到之后,保存TMSIn并自动删除与先前TMSI之间的关联后,向VLR/SGSN发送应答;
(3)VLR/SGSN收到应答后,从数据库中删除与旧的TMSIo的关联,TMSIn用于随后的身份鉴别过程中。
在GPRS或3G中,当用户无法通过TLLI 或TMSI来鉴别其身份时,可利用IMSI来鉴别自己的身份。此过程主要用于用户第一次注册到一个服务网络或VLR/SGSN无法从TLLI或TMSI中得到IMSI。此时,由VLR/SGSN向用户发送IMSI请求,用户的应答是包含IMSI信息的纯文本,因此易造成用户IMSI信息的泄露,违背了用户身份的保密性。
2. GPRS与3G系统的认证与密钥协商过程
GPRS与3G系统的认证过程由移动台(MS)、SGSN/VLR和HLR/AUC三方共同完成。认证方为AUC(认证中心)和用户的SIM卡。GPRS和3G系统的认证与密钥协商过程分别是基于MS和HLR/AUC之间的共享密钥Ki和K,认证过程均由SGSN/VLR发起(如图1所示),具体如下:
(1)MSSGSN/VLR MS向SGSN/VLR发出接入请求。
(2)SGSN/VLRHLR/AUC SGSN/VLR收到MS的接入请求后,向HLR /AUC发送认证数据请求。
(3)HLR/AUCSGSN/VLR 在GPRS中,HLR/AUC 首先产生一个随机数RAND,然后由Ki和RAND 经A3算法产生签名响应SRES(AUC),经A8算法产生加密密钥Kc, 然后将认证向量triplet { RAND, SRES(AUC), Kc } 通过认证数据响应消息发送到SGSN;而在3G中,HLR/AUC接收到认证数据请求后,生成序列号SQN和随机数RAND,计算认证向量AV,并把认证向量AV发送给SGSN/VLR。
(4)SGSN/VLRMS 在GPRS中,SGSN接收到认证向量triplet后,向MS发出认证请求,并将RAND发送给MS;在3G系统中,SGSN/VLR接收到认证向量AV后,向MS发出认证请求,将RAND及认证令牌AUTN发送给MS。
(5)MSSGSN/VLR 在GPRS中,MS利用密钥Ki和接收到的RAND,经A3算法产生签名响应SRES(SIM),经A8算法产生加密密钥Kc,然后将签名响应SRES(SIM) 通过认证响应消息发送到SGSN;在3G中, MS接收到认证请求后,首先计算消息认证码XMAC,并与认证令牌AUTN中的消息认证码MAC比较,如果不同,则向SGSN/VLR发出拒绝认证消息,并放弃认证过程。同时MS验证接收到的序列号SQN是否在有效的范围内,若不在有效的范围内,MS则向SGSN/VLR发送同步失败消息,放弃认证过程。当以上验证通过以后, MS才计算加密密钥CK,完整性密钥IK和用户认证应答RES。并将RES发送给SGSN/VLR。
(6)在GPRS系统中,SGSN接收到SRES(SIM)后,与认证向量triplet中的SRES(AUC) 进行比较,相同则认证成功;在3G中,SGSN/VLR接收到来自MS的RES后,将RES与认证向量AV中的期望认证应答XRES进行比较,相同则认证成功,否则认证失败。
其中Ki为128 bit,A3算法的输出签名响应SRES为32 bit,A8算法的输出会话密钥Kc为64 bit;AV:认证向量,AV= RAND║XRES║CK║IK║AUTN;期望认证应答XRES=f2K(RAND);加密密钥CK=f3K(RAND);完整性密钥IK= f4K(RAND);认证令牌AUTN=SQN⊕AK║AMF║MAC;SQN为序列号;匿名密钥AK=f5K(RAND);AMF为认证管理域;消息认证码MAC= f1K(SQN║RAND║AMF);用户认证应答RES= f2K(RAND);f1-f5,为3G安全结构定义的认证与密钥协商算法,⊕表示异或,║为连接符。
3. GPRS与3G接入链路数据机密性保护
MS与网络之间的安全通信模式建立以后,所发送的消息都将受到机密性保护。GPRS与3G分别使用GEA和f8算法对数据进行加解密。GEA算法是保密的,其有效密钥长度小于64 bit, f8是一个128 bit密钥对称加密算法。GEA算法的输入参数:加密密钥Kc,长为64 bit;INPUT,长为32 bit;方向位DIRECTION,长为1 bit。f8算法的输入参数:加密密钥CK,长为128 bit;加密序列号COUNT-C,长为32 bit;承载标识BEARER,长为5 bit;方向位DIRECTION,长为1 bit;密钥流长度LENGTH,长为16 bit。
用户数据和信令数据加解密的方法:发端通过GEA 或f8算法产生密钥流,密钥流与要发送的明文消息逐比特异或产生密文,完成加密过程;密文传到收端后,由收端先通过GEA算法或f8算法产生密钥流,然后与接收到的密文逐比特异或产生明文,完成解密过程。
4. 信令消息完整性保护
3G不仅提供数据机密性保护,还提供信令数据完整性保护,保证了信令数据在传输过程中的完整性。保护流程如图2所示。
其中f9为完整性保护算法;IK为完整性密钥,长为128bit;COUNT-I为完整性序列号,长为32 bit; FRESH为网络产生的随机数,长为32 bit,用于防止重放攻击;MESSAGE为发送的报文;DIRECTION为方向位,长为1 bit,0表示UE→RNC,1表示RNC→UE。
MAC-I为用于信令消息完整性保护的消息认证码。发送端用图2所示的方法计算MAC-I,并把它附加在报文后与报文一起发给接收端,接收端收到报文后用发送端同样的方法计算XMAC-I,并与接收到的MAC-I比较,以验证信令消息的完整性。
三、3G较GPRS系统在网络接入安全性方面的改善
从以上分析过程中,不难看出3G与GPRS相比,网络接入安全性在以下几个方面的得到改善和提高。
1身份认证方面
在GPRS系统中,通过比较SRES(SIM)和SRES(AUC)是否相同,实现了网络对用户的认证,可以防止非授权用户使用GPRS的网络资源,但认证是一个单向身份认证过程(网络→用户),只实现了网络对用户的认证,用户对SGSN不进行认证。无法防止假SGSN对用户的欺骗,让用户以为连接到了真正的GPRS 网络上,这样可能使用户的敏感信息被窃听或无法正常访问网络资源。而在3G中,实现了用户与网络的相互认证,通过验证XRES与RES是否相同,实现了VLR/SGSN对MS的认证;通过比较XMAC与MAC是否相同,实现了MS对HLR/AUC的认证。3G的相互认证机制有效地保护了用户与运营商双方的利益。
2. 用户数据与信令数据加密方面
加密技术是实现安全通信的核心,为了保证敏感数据不被窃听,必须对用户数据和信令数据进行有效加密。现在,对于一段用64 bit密钥加密的密文,采用强行攻击(Brute-force)的方法,尝试所有可能的密钥,直至取得可理解明文从计算复杂度上讲已不再困难。显然,随着计算机处理器速度的不断提高,GPRS的数据加密算法GEA加密密钥Kc(64 bit)长度太短,无法抵抗穷举攻击。而3G的加密算法f8其密钥K长度为128 bit,在相当长的时间内能有效抗击这种类型的攻击。
3. 信令消息完整性保护方面
信令是重要而又敏感的数据,必须得到有效保护。GPRS没有提供信令消息完整性保护机制,无法保证信令数据在传输过程中的完整性。3G增加了信令消息完整性保护机制,防止非授权方随意更改信令数据,这些更改包括篡改、插入、重演或删除,3G的信令消息完整性保护机制保证了信令数据在传输过程中的完整性。
四、3G安全缺陷
3G与以往的移动通信系统相比,在安全性方面有了很大的提高,但是3G仍能存在一些安全缺陷,表现在以下几个方面:
(1)未保护到的信令数据
用户真实身份、当前位置及其运动模式是重要而又敏感的信息,在通信中必须保证这些信息的机密性。在3G的认证方案中,使用临时身份标识(TMSI)来鉴别用户,提供了一定程度的匿名性。但当用户第一次注册到一个服务网络或无法从TMSI中得到IMSI时,服务器向用户发送IMSI请求,用户的应答是包含IMSI信息的纯文本,易造成用户IMSI信息的泄漏,违背了用户身份的保密性,因此直接通过IMSI鉴别用户身份的方式应尽量少用。
(2)拒绝服务攻击
在安全模式建立过程中,MS通过空中接口以明文方式把安全能力参数发送给RNC,假如攻击者截获到此报文,对其篡改后再发给RNC,那么RNC接收到的参数与储存在其数据库中UE的服务能力参数将会不同,RNC终止接入程序,这可能导致合法用户不能正常访问服务网络,但用户身份的匿名性能抗击针对某一特定用户的拒绝服务攻击。
(3)未提供用户数据完整性保护
3G的完整性保护机制只用在UE和RNC之间信令数据传输中,没有提供用户数据的完整性保护。当然,用户数据没有得到完整性保护并不表明完全不能抵抗攻击者的恶意篡改,差错控制机制能够检测和纠正数据中的一些更改。另外,经过篡改过的数据中所含信息量会较少,解密后很可能没有多少有实际意义的信息,此时用户或应用程序能够检测并采取恰当的方式接收这些更改过的报文,因此对于话音和一般的数据业务,影响不是很大,但对于开展网上银行、网上证券这些新业务,仅通过差错控制机制和加解密提供低等极的完整性保护是不充分的,因此,对于这些要求高安全性的业务,应提供端到端的完整性保护功能。
(4)Iu和Iur接口上传输的数据缺乏保护措施
VLR/SGSN和RNC之间的接口称为Iu接口,RNC之间的接口称为Iur接口。在3G中,在Iu接口上以明文方式传输保密参数(如完整性密钥IK),如果RNC控制多个Node B且和VLR/SGSN设置在同一地点时, 容易实现Iu接口上数据传输的安全性, 但当VLR/SGSN负责多个分布在不同地点的RNC时,保证Iu接口数据传输的安全性是一项富有挑战性的工作。另外,用户越区切换时,密钥在Iur接口上也是以明文方式传给新的RNC。一旦攻击者通过Iu接口和Iur接口获得密钥,用户随后的通信将没有安全性而言。因此应根据已经形成的接入网安全规范,充分认识接入网、服务网和核心网之间的交互关系,设计一个完整的安全架构,不仅形成一个网络域(接入网、服务网和核心网)实体之间的安全信息交互,而且实现整个网络范围内不同用户之间的安全业务通信,这个工作还有待于进一步研究。
五、总结
3G是在全球范围内覆盖与使用的通信网络系统,它是在GSM与GPRS的基础上发展起来的,继承了GPRS网络中有效的安全特征,如采用身份认证和用户数据和信令数据的加密等,并在身份认证、用户数据与信令数据加密和信令消息完整性保护方面克服和改进其不足之处,因此,3G较GPRS在网络接入安全性方面有很大的提高,但3G仍能存在一些安全漏洞,在未来实用3G系统研究与设计中,应考虑这些可能的攻击并加以克服,使用户享受更加安全的通信服务。
参考文献
[1]Geir M Kien. Overview of UMTS security [J].Telektronikk 1-2002:102~107
[2]Geir M Kien. UMTS Network Domain Security [J].Telektronikk 1-2002:164~171
[3]ETSI TS101.106, Digital cellular telecommunications system (Phase 2+): GPRS ciphering algorithm requirements [S].
[4]ETSI GSM 03.60,Digital cellular telecommunications system (Phase 2+): Service description [S].
[5]3GPP TS33.102,3G Security: Security Architecture [S].
[6]3GPP TS35.201,Specification of the 3GPP Confidentiality and Integrity Algorithms; Document 1: f8 and f9 Specification [S].
摘自 电讯技术