若以上两项验证均通过,则MS开始计算RES、CK、IK,并将RES发送给VLR。
然后VLR检验RES和XRES是
否相等,若相等则用户和网络互相认证成功,否则认证失败。
3G系统AKA协议的优点(相对于GSM系统的改进):
1相互认证:
MS通过验证MAC和XMAC来完成对HLR的认证,VLR通过验证RES和XERS来完成对MS的认证
2对数据和信令进行完整性保护
3加密密钥和完整性密钥的安全性:
用于数据加密和完整性保护的密钥CK、IK是用户和网络各自计算得出的,没有在开放的无线信道上传输,攻击者也就无法获取
4认证消息的新鲜性。
由于每次鉴权过程中使用的鉴权向量都不同,同时鉴权向量的生成过程中,有一个随机变化的随机数作为其参数,保证了每次计算得到密钥CK与IK都不相同,具有一次一密的特点
5使用SQN验证可以防止重放攻击
3GAKA缺点:
1只有ME对HE和VLR对ME的认证,没有ME对VLR的认证,也没有HSS对VLR的认证,攻击者可以假冒VLR进行进行攻击;
2用户开机注册或初次加入网络,或因特殊情况需要网络无法恢复出用户的IMSI时,用户将以明文发送IMSI,易被截获;
3固定加密算法,没有安全灵活协商的途径;
4ME和HE长期共享密钥K,一旦泄漏对用户是不可估量的损失;
5没有提供前向安全性
6一旦接受到SQN的不在正确范围之内,UE会进行SQN同步过程,这会导致额外的带宽消耗
总结:
3G系统AKA协议相对于GSM系统来说增加了双向认证,数据完整性保护等方面的安全性,但是仍然存在用户身份泄露,缺乏前向安全性,SQN同步等方面的问题
2.2.23G网络加密和完整性算法的分析
3GPP定义了10种加密算法。
分别为随机数生成函数f0、重同步消息认证函数f1∗网络认证函数f1、用户认证函数f2、加密密钥生成函数f3、完整性密钥生成函数f4、一般情况下的匿名密钥生成函数f5、重同步情况下使用的匿名密钥生成函数f5∗、数据加密算法f8、信令完整性保护算法f9。
其中,函数f0~f5的用于生成鉴权向量,函数f1∗和f5∗分别用于在重同步过程中生成消息鉴权码MAC−S和隐藏用户身份。
2.2.3.1数据加密算法f8分析
UTMS在无线接入链路上采用采用了f8算法生成分组密码流对原始数据加
密。
UE和RNC中都支持f8算法。
加密过程如图6-1所示
f8算法相当于一个密钥流生成器,在发送端,需要发送的明文信息块和f8算法输出的密钥流进行异或运算得到密文,在接收端通过同步等手段使f8算法具有同样的输入参数,从而产生相同的密钥流,再与密文按位异或恢复出明文。
如果无线承载使用的是非透明RLC模式(AM或UM),数据加密功能将在RLC子层完成。
如果无线承载使用的是透明RLC模式,数据加密功能将在RLC子层完成。
加密算法的输入参数包括:
(1)加密序列号COUNT-C:
长度为32bit,依赖于时间计数器。
(2)加密密钥CK:
长度为128bit。
(3)无线承载标志符BEARER:
长度为5bit。
同一个用户的不同承载可以
使用一个密钥,而将BEARER作为输入参数就可以避免使用统一密钥生成的密钥流相同,这样就避免了使用同一密钥流去加密几个承载。
(4)链路方向标识符DIRECTION:
长度为lbit。
使用链路方向标识符DIRECTION是为了避免上行链路和下行链路的密钥流使用相同的数据参数集作为输入。
从UE到RNC方向的消息,DIRECTION的值设为0:
从RNC到UE
方向的消息,DIRECTION的值设为1。
(5)密钥流长度标志符LENGTH:
长度标志符指定了所要求的密钥流的长
度,长度为16bit。
但是由于密钥流发生器输出的密钥流长度是64的整倍数,所
以密钥流分组中最后的几个没有意义的比特会被舍弃。
因此参数LENGTH只会
影响分组的个数,而不会影响密钥流的实际比特。
2.2.3.2信令完整性保护算法f9分析
UMTS采用了f9算法来对无线链路上UE和RNC之间的信令进行完整性保护。
鉴权信令消息是否被篡改的过程如图6-3所示。
f9算法在输入参数随机数FRESH、方向比特DIRECTION、完整性序列号COUNT-I、完整性密钥IK和信令数据MESSAGE的作用下,生成消息鉴权码MAC-I。
当在无线信道上发送信令消息时,就将MAC-I附加到消息MESSAGE的后面。
接收者在收到加有完整性鉴权码的信令消息后,以同样的方法计算所接收消息的XMAC-I,然后对XMAC-I和收到MAC-I进行比较,若XMAC-I=MAC-I,则说明控制信令没有被篡改。
f9算法的输入包括如下参数:
(1)完整性序列号COUNT-I:
长度为32bit,依赖于时间计数器。
(2)完整性密钥IK:
长度为1286it。
(3)随机数FRESH:
长度为32bit。
在安全模式建立的时侯,由RNC产生
FRESH,并将随控制信令securitymodecommand一起发送给用户。
FRESH的值
的使用能使网络防止用户重放任何oldMAC-I值。
(4)链路方向标识符DIRECTION:
长度为lbit。
从UE到RNC方向,
DIRECTION的值设为0:
从RNC到UE方向,DIRECTION的值设为1。
(5)信令消息MESSAGE:
信令消息本身。
2.2LTE网络的安全性
2.3.1EPSAKA协议
EPSAKA协议是由3GAKA协议改进而来,其沿用了以往协议“挑战/应答"的实现方式,用户和网络之间在成功认证的前提下,完成了会话密钥的协商,进而为后继的业务交互提供了相应的安全保障。
(详见文献[])
EPSAKA协议优点:
1增加了对服务网络的认证,从而有效的防止了因服务网络身份假冒而给系统带来的各种攻击
2采用了层次性的密钥生成机制,提高了会话的安全强度。
协议在用户,用户归属网络以及服务网络之间完成相互身份认证之后,才协商产生一个基础密钥,该密钥将针对不同实体间的链路以及链路上传输的不同数据类型分别选用相应的算法衍生出不同的加密密钥和完整性保护密钥
3采用了独立的SQN管理机制以及按序存储,按序使用的认证向量处理机制,从而有效的避免了SQN虚假同步失败现象的出现,减小了不必要SQN重同步给系统带来的巨大开销。
EPSAKA缺陷:
1协议中,当用户首次入网(含注册和业务接入)以及MME无法由用户临时身份标识(TemporaryMobileSubscriberVector,S—TMSI)恢复出IMSI的时候,网络将要求用户以明文形式发送IMSI,这样IMSI就存在泄漏的危险
2网络实体之间的有线链路缺乏必要保护,在HSS和MME之间以明文形式传输的AV易遭截获
3协议仍然采用了基于共享密钥K的方式来实现HSS与UE间的相互认证以及生成会话密钥,一旦丢失,整个协议毫无安全性可言(缺乏perfectforwardsecrecy)
总结:
LTE的EPS-AKA协议相对3G系统AKA协议增加了对服务网络的认证等增强安全措施,但是仍然存在用户身份泄露,MME认证,缺乏前向安全性等方面的漏洞
三.WLAN网络的安全性
3.1IEEE802.11安全标准
802.11标准是最基本的标准,它要通过认证和数据加密必须是通过一个保密协议,这个保密协议就是有线对等保密协议
(见文献[])。
WEP采用RC4算法进行数据加密,但是RC4算法存在巨大漏洞,会导致信息泄露,有很大安全隐患。
3.2IEEE802.11i高级的无线局域网安全标准
IEEE802.1li标准草案中主要包含加密技术:
TKIP(TemporalKeyIntegrityProtoco1)和AES(AdvancedEncryptionStandard),以及认证协议:
IEEE802.1x。
3.2.1TKIP
新一代的加密技术TKIP也是基于RC4加密算法,且对现有的WEP进行了改进,在现有的WEP加密引擎中追加了“密钥细分”(每发一个包重新生成一个新的密钥)、“消息完整性检查(MIC)”、“具有序列功能的初始向量”和“密钥生成和定期更新功能”等4种算法,极大地提高了加密安全强度。
3.2.2AES
IEEE802.11i中还定义了一种基于“高级加密标准”AES的加密算法,以实施更强大的加密和信息完整性检查。
AES是一种对称的块加密技术,比WEP/TKIP中RC4算法更高的加密性能,它将在IEEE802.11i最终确认后,成为取代WEP的新一代的加密技术,为无线网络带来更强大的安全防护。
3.2.3IEEE802.1x认证协议
IEEE802.1x协议的体系结构包括三个重要的部分:
客户端、认证系统和认证服务器。
802.1x认证流程:
在具有802.1x认证功能网络系统中当个用户需要对网络资源进行访问的前必须先要完成以下认证过程。
1)用户有上网需求,打开802.1x客户端程序输入已经申请、登记过用户名和口令,发起连接请求,客户端程序将发出请求认证报文给交换机并启动次认证过程。
2)交换机收到请求认证数据帧后,发出个请求帧要求客户端程序将输入用户名提交上来。
3)客户端程序响应交换机的请求,将用户名信息通过数据帧发送给交换机。
4)交换机将客户端发来的数据帧经过封包处理后转给认证服务器进行处理。
5)认证服务器收到交换机转发的用户名信息后,将该信息和数据库中的用户名表相比对,找到该用户名对应口令信息,用随机生成个加密字对它进行加密处理,将此加密字传送给交换机,由交换机传给客户端程序。
6)客户端程序收到交换机传来的加密字后,用该加密字对口令部分进行加密处理(此种加算法通常是不可逆的),并通过交换机传给认证服务器。
7)认证服务器将送上来的加密后的口令信息和其自己经过加密运算后的口令信息进行对比,如果相同,则认为该用户为合法用户,反馈认证通过的消息,并向交换机发出打开端口的指令,允许用户的业务流通过端口访问网络,否则,反馈认证失败的消息,并保持交换机端口的关闭状态,只允许认证信息数据通过而不允许业务数据通过。
3.3其他的WLAN安全认证协议(EAP认证机制)
EAP-TLS(见文献[]),EAP-MD5,EAP-TTLS等[20]
EAP-TLS流程如下:
1)客户端发出EAP-start消息请求认证;
2)AP发出请求帧,要求客户端输入用户名;
3)客户机响应请求,将用户名信息通过数据帧发送至AP;
4)AP将客户端传来的信息重新封装成RADIUSAccessRequest包发送给服务器;
5)RADIUS服务器验证用户名合法后向客户端发送数字证书;
6)客户端通过数字证书验证服务器的身份;
7)客户端向服务器发送自己的数字证书;
8)服务器通过数字证书验证客户端的身份,至此完成相互认证;
9)在相互认证的过程中,客户端和服务器获得主会话密钥;
10)认证成功,RADIUS服务器向AP发送RADIUSACCEPT消息,其中包含密钥信息;
11)AP向客户端转发EAPSuccess消息,认证成功
EAP-TLS优点:
采用数字证书完成认证,安全性高,并且生成的密钥不用在无线链路上传输,不存在泄漏的危险
EAP-TLS缺点:
要求终端持有数字证书,并有足够的计算能力,而这正是移动终端较难克服的问题。
同时,整个移动通信体系需要建立完善的PKI系统,现在还不具备这个条件。
四LTE-WLAN互联网络的安全性
4.1LTE-WLAN融合背景
LTE系统覆盖面积大,成本高,而WLAN成本低,传输速率高,但是覆盖面积小,而且安全性不如LTE系统,因此两者的融合可以实现两者优势互补
4.2LTE-WLAN互连方案
松耦合从逻辑上将3G业务域和WLAN业务域进行分离,让WLAN专注于提供高速存取能力,3G核心网络的服务内容不需要改变,只针对AAA(授权认证计费)机制做整合
松耦合仅需要3GPP执行认证方法,WLAN与3G网络分享对AAA的使用。
紧耦合解决方案用WLAN无线接口作为通用移动通信系统UMTS的承载者,WLAN在该方案中是一个接入网,通过luPS参考点与3G核心网络连接,进而充分利用3G核心网络已有的移动、安全与服务品质等机制
4.3LTE-WLAN互连场景
(1)统一计费和客户服务
(2)基于3GPP系统的接入控制和计费
(3)WLAN接入3G网络分组域业务
(4)连续性
(5)无缝业务
(6)接入3G电路交换业务
4.4LTE-WLAN互连安全协议
IETF和3GPP根据GSM和3G特点主要制订了两种互联网络认证方式:
EAP-SIM和EAP-AKA(文献[])
4.4.1EAP-SIM认证协议
EAP-SIM认证采用现有的GSM-AKA的认证方法,并增加了对网络认证的功能,向下兼容GSM网络的SIM认证(见文献[])
EAP-SIM认证流程
4.4.2EAP-AKA协议
EAP-AKA认证则基于3G系统的AKA认证
EAP-AKA认证流程
EAP-AKA协议的优点:
1.无线局域网与3GPP(LTE)系统的相互认证
2.