扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
1、GSM网络中的用户接入安全
无线通信本身的特点是,既容易让合法用户接入,也容易被潜在的非法用户窃听,因此,安全问题总是同移动通信网络密切相关。
1.1 GSM网络用户鉴权
在GSM系统中,为了保证只有有权用户可以访问网络并可以选定加密模式对随后空口传输的信息加密,采用了GSM用户鉴权,增强了用户信息在无线信道上传送的安全性。
1.1.1 对用户鉴权
当用户请求服务时,审核其是否有权访问网络。
a)MSC/VLR送鉴权请求给用户,鉴权请求中有一个随机数(RAND)。
b)用户用收到的RAND在SIM卡上算出回答响应(SRES),放在鉴权响应中并送回MSC/VLR。
c)MSC/VLR将收到的SRES和VLR中所存的做比较,若相同,则鉴权成功,可继续进行用户所请求的服务,否则,拒绝为该用户服务。
1.1.2 VLR请求用户的鉴权数据
用户现访的VLR从HLR或用户先前访问的VLR取得鉴权数据——鉴权三元组,在下列两种情况下VLR要请求鉴权数据:
a)用户在VLR中没有登记,当用户请求服务时,VLR就向用户所属的HLR,或可能的话从用户先前访问的VLR中取得鉴权数据。
b)用户在VLR中有登记,但VLR中所存的该用户的鉴权三元组只剩下两组时,VLR自动向HLR请求用户的鉴权数据。
1.2 GSM用户加密过程
加密是对空中接口所传的码流加密,使得用户的通话和信令不被窃听。MSC在启动加密模式时,将密钥Kc告知BSS,这样Kc只在有线部分传送。加密密钥的长度是64 bit。
GSM系统中无线链路信息加解密过程为:Kc和当前帧号Fn(22 bit)作为A5算法的输入,计算密钥流。对消息进行逐位异或加密,将密文从移动台传递到基站。基站接收到加密的信息,用相同的密钥流逐位异或解密。
1.3 GSM系统存在的安全隐患
GSM系统在一定程度上增强了用户在无线信道上传送的安全性,然而随着技术的进步,攻击者有了更先进的工具,GSM在得到广泛使用的同时,它在安全方面存在的问题也凸显出来:
a)认证是单向的,只有网络对用户的认证,而没有用户对网络的认证,因此存在安全漏洞。非法的设备(如基站)可以伪装成合法的网络成员,从而欺骗用户,窃取用户信息。
b)加密不是端到端的,只在无线信道部分加密(即在MS和BTS之间),在固定网中没有加密(采用明文传输),给攻击者提供了机会。
c)移动台和网络间的大多数信令信息是非常敏感的,需要得到完整性保护。而在GSM网络中,没有考虑数据完整性保护的问题,如果数据在传输的过程中被篡改也难以发现。
d)随着计算机硬件技术进步,计算速度不断提高,解密技术也不断发展。GSM中使用的加密密钥长度是64 bit,采用现在的解密技术,可以在较短时间内被破解。
e)加密算法是不公开的,密码算法的安全性不能得到客观的评价,在实际中,也受到了很多攻击。
f)加密算法是固定不变的,没有更多的密钥算法可供选择,缺乏算法协商和加密密钥协商的过程。
2、UMTS网络接入安全机制
针对GSM存在的安全问题,3G系统主要进行了如下改进:
a)实现了双向认证。不但提供基站对MS的认证,也提供了MS对基站的认证,可有效防止伪基站攻击。
b)提供了接入链路信令数据的完整性保护。
c)密钥长度增加为128 bit,改进了算法。
d)3GPP接入链路数据加密延伸至无线接入控制器(RNC)。
e)3G的安全机制还具有可拓展性,为将来引入新业务提供安全保护措施。
f)3G能向用户提供安全可视性操作,用户可随时查看自己所用的安全模式及安全级别。
g)在密钥长度、算法选定、鉴别机制和数据完整性检验等方面,3G的安全性能远远优于2G。
UMTS系统采用3G的主流技术,下面将详细讨论UMTS网络接入的安全机制。
2.1 用户和网络的相互鉴权
相互鉴权的基本思想是服务网络通过盘问响应技术对用户识别符进行校验,同时终端检验归属网络是否授权服务网络做这些事。鉴权的后一个过程相对GSM而言是UMTS的新特性,通过它用户可以检验是否连接到合法的网络。
在3G鉴权中,鉴权五元组代替了GSM的三元组,3G鉴权向量的5个参数分别是RAND、期望响应(XRES)、加密密钥(CK)、完整性密钥(IK)、鉴权令牌(AUTN)。与GSM相比,增加了IK和AUTN两个参数,其中完整性密钥提供了接入链路信令数据的完整性保护,鉴权令牌增强了用户对网络侧合法性的鉴权。
a)鉴权中心AuC为每个用户生成基于序列号的鉴权向量组(RAND、XRES、CK、IK、AUTN),并且按照序列号排序。
b)当鉴权中心收到VLR/SGSN的认证请求后,发送n个鉴权向量组给VLR/SGSN。在VLR/SGSN中,每个用户的n个认证向量组,按照“先入先出”(FIFO)的规则发送给移动台,用于鉴权认证。
c)VLR/SGSN初始化的一个鉴权过程为选择一个鉴权向量组,发送其中的RAND和AUTN给用户。用户收到RAND║AUTN后,在USIM侧进行鉴权处理。
首先计算AK,并从AUTN中将序列号恢复出来,SQN=(SQN①AK)①AK;USIM计算出XMAC,将它与AUTN中的MAC值进行比较。如果不同,用户发送一个“用户认证拒绝”信息给VLR/SGSN,放弃该鉴权过程。在这种情况下,VLR/SGSN向HLR发起一个“鉴权失败报告”过程,然后由VLR/SGSN决定是否重新向用户发起一个鉴权认证过程。
同时,用户还要验证接收到的序列号SQN是否在有效的范围内,若不在,MS向VLR发送同步失败消息,并放弃该过程。
如果XMAC和SQN的验证都通过,那么USIM计算出RES,发送给VLR/SGSN,比较RES是否等于XRES,如果相等,网络就认证了用户的身份。
最后,用户计算出CK和IK。
2.2 UMTS的加密机制
在上述双向鉴权过程中产生的CK,在核心网和用户终端间共享。CK在RANAP消息“安全模式命令”中传输,RNC获得CK后就可以通过向终端发送RRC安全模式命令,并开始进行加密。
UMTS的加密机制是利用加密算法f8生成密钥流(伪随机的掩码数据),明文数据再和掩码数据进行逐比特相加产生密文,然后以密文的方式在无线链路上传输用户数据和信令信元,接收方在收到密文后,再把密文和掩码数据(同加密时输入参数一样,因此产生的掩码数据也一样)逐比特相加,还原成明文数据,即解密。
2.3 UMTS的完整性保护机制
为防止侵入者假造消息或篡改用户和网络间的信令消息,可以使用UMTS的完整性保护机制来保护信令的完整性。完整性保护在无线资源控制(RRC)子层执行,同加密一样,在RNC和终端之间使用。IK在鉴权和密钥协商过程中产生,IK也和CK一起以安全模式命令传输到RNC。
UMTS的完整性保护机制是发送方(UE或RNC)将要传送的数据用IK经过f9算法产生的消息鉴权码MAC附加在发出的消息后。接收方(RNC或UE)收到消息后,用同样的方法计算得到XMAC。接收方把收到的MAC和XMAC相比较,如果两者相等,说明收到的消息是完整的,在传输过程中没有被修改。
3、2G/3G网络共存时的漫游用户鉴权
2G与3G网络共存是目前移动通信向3G过渡必然要经历的阶段。由于用户通过SIM卡或USIM使用双模式手机可同时接入到2G和3G网络,当用户在2G和3G共存的网络中漫游时,网络必须为用户提供必要的安全服务。由于2G和3G系统用户安全机制之间的继承性,所以可以通过2G和3G网络实体间的交互以及2G和3G安全上下文之间的转换运算来实现不同接入情况下用户的鉴权。
3.1 UMTS漫游用户的鉴权
在2G和3G共存网络中,UMTS漫游用户鉴权按以下方式进行:
a)通过UTRAN接入时,使用3G鉴权。
b)当使用3G移动台和3G MSC/VLR或SGSN通过GSM BSS接入时,使用3G鉴权机制。其中GSM密钥从UMTS CK和IK计算获得。
c)当使用2G移动台或2G MSC/VLR或SGSN通过GSM BSS接入时,使用GSM鉴权机制。其中用户响应SRES和GSM密钥从UMTS SRES、CK和IK得到。
UMTS漫游用户的鉴权过程包括以下几个步骤:
a)当HLR/AuC收到VLR/SGSN的鉴权数据请求消息时,将根据用户钥匙K生成一组3G鉴权矢量,包扩RAND、XRES、AUTN、CK和IK。
b)鉴权矢量的分发会根据请求鉴权数据的VLR/SGSN的类型而不同。如果请求鉴权数据的是3G VLR/SGSN,将直接接收HLR/AuC的3G鉴权矢量,并将它存储起来;而当请求鉴权的是2G VLR/SGSN时,HLR/AuC会将3G鉴权矢量转化为GSM鉴权三元组,2G VLR/SGSN将这组鉴权三元组存储起来。
c)当UMTS通过UTRN接入时,VLR/SGSN直接进行3G鉴权,为用户建立3G安全上下文。
d)当UMTS用户通过2G接入网接入时,根据控制鉴权的VLR/SGSN类型和用户设备类型的不同,使用的鉴权矢量可以是3G鉴权矢量,也可以是GSM鉴权三元组。当控制接入的是3G VLR/SGSN时,如果用户使用的是3G用户设备,VLR/SGSN和用户之间执行3G鉴权过程,双方协议CK和IK作为3G安全上下文,并存储在USIM中,然后用户设备和VLR/SGSN同时计算出Kc,并用它在以后的信令过程中对空中数据进行保护。如果此时用户设备是2G,VLR/SGSN取出UMTS鉴权矢量对用户鉴权时,先通过前述算法计算出GSM鉴权三元组,然后将RAND发送到USIM,USIM通过3G鉴权算法得到与鉴权矢量中相同的XRES、CK和IK,计算出2G的SRES和Kc,再将SRES发回到VLR/SGSN进行比较后,将Kc用作空中数据的加密。如果控制接入的是2G VLR/SGSN,则VLR/SGSN取出一个存储的GSM鉴权三元组,将其中的RAND发送到用户,USIM通过3G鉴权算法得到XRES、CK和IK,再同样计算出2G的SRES和Kc,在对SRES进行比较后,密钥Kc协商成功。
3.2 GSM SIM漫游用户的鉴权
由于GSM SIM用户只支持GSM系统安全特性,所以鉴权过程必然是GSM系统的。具体步骤如下:
a)当VLR/SGSN向用户归属2G HLR/AuC请求鉴权数据时,HLR/AuC生成一组GSM鉴权三元组。
b)HLR/AuC向请求鉴权数据的VLR/SGSN分发鉴权三元组,不管VLR/SGSN是2G还是3G类型的,VLR/SGSN会将这组鉴权三元组存储起来,然后取出一个鉴权三元组对用户进行鉴权。
c)如果用户通过UTRAN接入,控制接入的3G VLR/SGSN同2G用户之间进行GSM的鉴权过程后,在SIM卡上存储了密钥Kc。VLR/SGSN和用户终端设备同时通过Kc计算出UMTS的CK和IK,然后3G VLR/SGSN将利用CK和IK为用户提供安全保护,但由于此时用户安全特性的核心仍是GSM密钥Kc,所以用户并不具备3G的安全特性。
d)当用户通过2G接入网接入时,控制的VLR/SGSN(2G或3G)直接执行GSM鉴权过程,建立GSM安全上下文。
注意:为了支持2G鉴权和3G鉴权的兼容性,3G HLR必须支持3G鉴权5元组向2G鉴权3元组的转换功能;3G MSC必须支持3G鉴权5元组和2G鉴权3元组之间的双向转换功能。
4、移动通信安全的进一步完善
随着通信技术的不断发展,移动通信系统在各个行业得到广泛应用,因此对通信安全也提出了更高的要求。未来的移动通信系统安全需要进一步的加强和完善。
4.1 3G的安全体系结构趋于透明化
目前的安全体系仍然建立在假定内部网络绝对安全的前提下,但随着通信网络的不断发展,终端在不同运营商,甚至异种网络之间的漫游也成为可能,因此应增加核心网之间的安全认证机制。特别是随着移动电子商务的广泛应用,更应尽量减少或避免网络内部人员的干预性。未来的安全中心应能独立于系统设备,具有开放的接口,能独立地完成双向鉴权、端到端数据加密等安全功能,甚至对网络内部人员也是透明的。
4.2 考虑采用公钥密码体制
在未来的3G网络中要求网络更具有可扩展性,安全特性更加具有可见性、可操作性的趋势下,采用公钥密码体制,参与交换的是公开密钥,因而增加了私钥的安全性,并能同时满足数字加密和数字签名的需要,满足电子商务所要求的身份鉴别和数据的机密性、完整性、不可否认性。因此,必须尽快建设无线公钥基础设施(WPKI),建设以认证中心(CA)为核心的安全认证体系。
4.3 考虑新密码技术的应用
随着密码学的发展以及移动终端处理能力的提高,新的密码技术,如量子密码技术、椭圆曲线密码技术、生物识别技术等已在移动通信系统中获得广泛应用,加密算法和认证算法自身的抗攻击能力更强健,从而保证传输信息的机密性、完整性、可用性、可控性和不可否认性。
4.4 使用多层次、多技术的安全保护机制
为了保证移动通信系统的安全,不能仅依靠网络的接入和核心网内部的安全,而应该使用多层次、多技术相结合的保护机制,即在应用层、网络层、传输层和物理层上进行全方位的数据保护,并结合多种安全协议,从而保证信息的安全。
今后相当长一段时期内,移动通信系统都会出现2G和3G两种网络共存的局面,移动通信系统的安全也面临着后向兼容的问题。因此,如何进一步完善移动通信系统的安全,提高安全机制的效率以及对安全机制进行有效的管理,都是今后亟需解决的问题。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。