这项学习内容是颇具现实意义的,因为一个网络的安全性直接关系到用户和网络运营商本身的利益。保证合法的用户获取服务和网络正常的运营,保证用户的信息完整、可靠的传输,实现保密通信,要求有一套缜密的安全机制,这是对网络和服务的更高层次的要求,也是现如今颇受关注和的话题。 本文内容主要是几大网络的安全机制。 主要内容是WCDMA、LTE 的安全机制,为了更好地了解WCDMA的安全机制必须溯源到GSM的鉴权机制,从对比和演进的角度来看待这三种网络的安全机制的特点。
1 GSM概述
GSM系统一个显著的优点就是它在安全性方面比模拟系统有了显著的改进,它主要是在以下部分加强了保护:在接入网络方面通过AUC鉴权中心采取了对客户鉴权;在无线路径上采取了对通信信息的保密;对移动设备通过EIR设备识别中心采用了设备识别;对客户身份识别码IMSI用临时识别码TMSI保护;SIM卡用PIN码保护。
2 GSM鉴权
运营者开始使用安全功能之前,移动用户已经在鉴权中心被创建。同样的数据也存在移动用户的SIM卡中。 以下是创建用户所需要的信息:用户的IMSI、用户的Ki、使用的算法版本。GSM的鉴权是网络要确定用户的合法性,即确认用户方Ki和网络方Ki 是相等。 鉴权流程说明如下: 在呼叫建立的初始阶段、位置更新、补充业务相关的请求时需要进行鉴权: ① 移动台发起这类请求给MSC/VLR; ② MSC/VLR向HLR/AUC请求鉴权参数,及鉴权三元组; ③ HLR/AUC根据随机数发生器产生的RAND与KI通过A3单向算法计算得出SRES(i);根据RAND与KI通过A8算法计算出Kc; 将计算出的鉴权三元组(SRES(i)、RAND以及Kc(i))包含在鉴权相应中传递给MSC/AUC; 所谓单向算法即不可能将运算结果或此随机数再化为原来的KI,即使SRES在空口被截获了也是无法恢复出KI,从而保证了KI的安全性; ④ MSC/VLR保存鉴权三元组,将接收的RAND(i)包含在用户鉴权请求中通过基站传递给移动台; ⑤ 移动台根据接收到的RAND(i)以及自身保存的KI通过A3算法计算得出RES(i),通过A8算法计算出Kc(i); 将RES(i)包含在用户鉴权响应中传递给MSC/VLR; ⑥ MSC/VLR比较SRES(i)与RES(i)是否相等,若相等则此次鉴权成功,若不相等则鉴权失败,网络会拒绝MS的接入。 3 WCDMA与GSM安全机制比较
从上文对GSM的安全机制先容后,可以发现GSM安全机制存在一些安全漏洞,主要分为以下几点:
首先,认证是单向的,只有网络对用户的认证,而没有用户对网络的认证,因此存在安全漏洞。非法的设备(如基站)可以伪装成合法的网络成员,从而欺骗用户,窃取用户信息。 其次,移动台和网络间的大多数信令信息是非常敏感的,需要得到完整性保护。而在GSM网络中,没有考虑数据完整性保护的问题,如果数据在传输的过程中被篡改也难以发现。 再次,加密不是端到端的,只在无线信道部分加密(即在MS和BTS之间),在固定网中没有加密(采用明文传输),给攻击者提供了机会。 除此之外,随着计算机硬件速度不断提升,解密方法不断发展,GSM的加密算法和密钥的缺陷也给他带来通信安全隐患,如密钥太短,只有64bit,加密算法不公开且较为固定不变,无法协商加密算法等。 随着3G时代的到来,2G网络的安全机制已经不能适应网络的安全需求了。针对GSM的安全漏洞,UTMS的安全机制就相对完善。 以WCDMA为例。WCDMA以五元组鉴权:RAND、希望响应(XRES)、加密密钥(CK)、完整性密钥(IK)、鉴权令牌(AUTN)。增加了用于完整性保护的密钥(IK)和用于用户验证网络的鉴权令牌(AUTN)。并且WCDMA的加密部分延长到了RNC侧。密钥长度也由原来2G时的64位加长至128位。
4 WCDMA鉴权流程 同GSM网络鉴权相比,3G除了网络对USIM的认证外,还增加了USIM对网络的认证。3G鉴权过程见下图: 网络侧在发起鉴权前,如果VLR内还没有鉴权参数五元组,此时将首先发起到HLR取鉴权集的过程,并等待鉴权参数五元组的返回。鉴权过程如下: 一、用户归属域(HE)到服务网(SN)认证向量的发送过程:认证中心(AUC)为每个用户生成基于序列号的认证向量组(RAND,XRES,CK,IK,AUTN),并且按照序列号排序。 二、当AUC收到VLR/SGSN的认证请求时,发送N个认证向量组给VLR/SGSN。在VLR/SGSN中,每个用户的N个认证向量组,按照“先入先出”(FIFO)的规则发送给移动台,用于鉴权认证。 三、VLR/SGSN初始化一个认证过程,选择一个认证向量组,发送其中的RAND和AUTN给用户。ME收到后RAND∣∣AUTN后传送给USIM卡,在USIM卡中进行下列操作: 1) USIM计算出XMAC,将它与AUTN中的MAC值进行比较。如果不同,发送一个“用户认证拒绝”信息给VLR/SGSN,放弃该认证过程。在这种情况下,VLR/SGSN向HLR发起一个“认证失败报告”过程,然后由VLR/SGSN决定是否重新向用户发起一个认证过程。 2) USIM比较收到的SQN是否在正确范围内(为了保证通信的同步,同时防止重传攻击,SQN应该是目前使用的最大的一个序列号,由于可能发生延迟等情况,定义了一个较小的“窗口”,只要SQN收到的在该范围内,就认为是同步的)。 3) 如果SQN在正确范围内,USIM计算出RES(用户响应) =f2K (RAND),CK(加密密钥) = f3K(RAND)和IK(完整密钥) = f4K (RAND) ,并将其发送给ME。 以上步骤就是在进行用户对网络的鉴权:如果XMAC和SQN的验证都通过,用户就完成了对网络的鉴权。 4)ME将RES发送给VLR/SGSN,比较RES是否等于XRES。如果相等,网络就认证了用户的身份,鉴权通过。 步骤4,就完成了网络对用户的认证:USIM计算出RES(用户响应),发送给VLR/SGSN比较RES是否等于XRES,如果相等,网络就认证了用户的身份。最后,用户计算出CK和IK。其中CK用于加密,IK用于完整性保护。 网络侧对鉴权失败(失败原因为“MACFailure”)的处理一般是: 网络侧将根据手机终端上报的用户标识来决定是否发起识别过程。如果当前的标识为TMSI(或P-TMSI),则发起识别流程,要求手机终端上报IMSI信息。然后再次发起鉴权流程。
网络侧对鉴权失败(失败原因为“Synch failure”)处理一般是: 如果 USIM认为SQN不在范围内,返回Synchronisa-tion failure消息,包含AUTS参数。HLR/AUC接到请求后,完成以下操作:HLR/AUC验证AUTS,若证明合法,则HLR/AUC将SQNHE计数器值重置为与SQNMS相同。(其中 )HLR/AUC发送鉴权数据响应并附带一些新的鉴权五元组给VLR/SGSN。VLR/SGSN收到HLR/AUC送来的“同步失败标识”的鉴权数据响应后,本地的旧鉴权消息删除,MS将根据这些新的鉴权参数进行鉴权。 5 LTE、3G安全机制比较
相比 ,网络架构上进行了简化,采用 单 LTE 3G eNB层结构,简化网络和减少时延,实现了低 RNC时延,低复杂度和低成本的要求。相比下,安全机制也和 3G很大的不同。 首先大家先了解网络存在的安全隐患: ⑴ 3G认证实现了网络对卡片的认证,但没有考虑网络端的认证和保密通信,攻击者可以通过截取VLR与HLR之间的信息获得AV从而获得CK和IK。 ⑵由于用户在不同的PLMN之间漫游,不同PLMN可以是不同国家的不同网络,当本地HE/HLR把AV发送到漫游网络的VLR/SGSN过程中,穿过不同网络,很容易被截获。
总之,3G的安全性是建立在网络足够可信的基础上的。 鉴于3G网络安全机制的漏洞,针对3G只有一层安全保障,LTE分层安全机制这一新思想孕育而生。即LTE将安全在AS(接入层)和NAS信令之间分离,无线链路和核心网需要有各自的密钥,用户安全终止于eNB,因为eNB处在不被信任的域中。第一层为E-UTRAN中的RRC安全层和用户层安全,第二层是EPC中的NAS信令安全,如图6。
6 LTE鉴权
LTE鉴权是一个基于四元组的鉴权:Kasme 、AUTN、RAND以及XRES。
(1)UE向NAS层MMS发起鉴权请求;
(2)MME则向HSS索要鉴权向量;
(3)HSS 返回一套或多套EPS 鉴权向量{RAND,AUTN,XRES, Kasme}给MME,其中包含AMF分隔符,”1”代表 LTE/SAE,”0”代表非LTE/SAE,如GSM,UMTS;
(4)MME收到后保存XRES、 Kasme并将随机数RAND和鉴权令牌AUTN发送给UE; (5)UE通过AUTN对网络进行鉴权,并根据AUTN&RAND计算出RES&CK/IK,进一步计算出Kasme;
(6)UE与MME根据Kasme推导出NAS层与AS层所需的加密密钥和完整性保护密钥。 当UE从ACTIVE到IDLE态时,将删除这些密钥;
7 兼容性
UMTS AKA是可信的认证协议,在SAE/LTE中重用UMTS中的认证和密钥协商的信令流程,并生成用于派生用户层和控制层密钥CK/IK。非3GPP接入的AKA应用使用基于USIM的EAP AKA。 允许R99 USIM接入LTE,但不允许2G SIM接入LTE。2G安全不够充分。 做一个假设:当UE在GSM中认证并后续实行切换到UMTS时,64位加密密钥KC被转换成128位的加密密钥CK和完整性保护密钥IK。这个操作没有增加CK和IK,如果允许在GSM和LTE之间直接切换,如果攻击者破解GSM加密并获得Kc,当UE移动到LTE后,攻击者将能破译LTE中的流量。
|