唐受功 谢显中 聂能
重庆邮电学院移动通信中心
摘要 本文对当前3G反向链路呼叫及通话过程中的安全问题做了分析,并分别从MS和BS相互之间的AKA、信令完整性保护和数据保密、入侵检测等进行了讨论。另外,在讨论中适当地将安全与移动性管理相结合,并根据实际应用中的安全问题提出了一些新的设想和解决的方法。
关键词 AKA 完整性保护 加密 入侵检测
1 前言
第三代移动通信系统是工作在2GHz频段的宽带移动通信系统,它与第二代移动通信系统的区别主要有:全球无隙漫游、支持高达2Mbit/s的多媒体业务等,特别在Internet上有更好更广的服务。而在这其中也会涉及到许多安全方面的隐患,因此有必要作一个3G安全的讨论。而移动台的主呼过程是其中的一个重要过程,讨论它的安全问题对整个系统的安全性研究有着重要的意义。
某个移动台在随机接入信道上对另一个移动台或固定网用户发起呼叫时,PLMN系统网络将开始一系列的操作。首先,MS发起呼叫时,移动台中的无线资源管理单元通过随机接入进程启动信令链路的建立。该进程在随机接入信道上发送信道请求消息及安全能力消息(即安全能力的有无)给基站。若基站成功接收到,则这个请求被送到基站中的无线资源管理单元,由其分配一个专用信道,并在接入允许信道上发送立即指配消息。MS在启动主呼进程的同时还设置定时器,以一定的时间间隔重复呼叫。如果按预定次数重复呼叫仍收不到响应,则放弃这次呼叫。
当MS收到立即指配消息后转换到指定的专用信道上,从而和BS之间建立起主信令链路。这之后一直到无线业务信道分配以前的一切信令都是在这个专用信道上进行的,业务信道接通后的通话过程中的信令则是在随路控制信道中进行。MS中的连接管理单元继续用发给数据链路层的业务请求消息来启动建立数据链路的进程。该业务请求被嵌入一个完整的第三层消息,并交BS发给MSC。
2 相互认证和密钥协商过程(AKA)
MS给相关的访问位置寄存器(VLR)发送进程接入请求消息以使其获得该移动台的参数。网络方面发出鉴权请求,其中包括一个随机数,MS按一定的算法对此随机数进行处理后,发送鉴权响应给网络方面,由网络方面判断此用户的合法性。
其中过程简述:
(1)MS向拜访局VLR发送IMSI和其归属局HLR信息。
(2)VLR向该HLR发送认证请求。
(3)HLR收到VLR的认证请求后,生成序列号和随机数,计算出认证向量AV,并把它发送给VLR。
(4)VLR接收到AV后,将其中的随机数及认证令牌AUTN发送给MS,请求用户产生认证数据。
(5)MS接收到认证请求后,首先计算XMAC,并与AUTN中的MAC进行比较,若不同,则向VLR发送拒绝认证消息,并放弃该过程。同时还要验证接受到的序列号SQN是否在有效的范围内,若不在,MS向VLR发送同步失败消息,并放弃该过程。上述两项均通过后,MS用f2计算出RES,用f3计算出CK,用f4算法计算出IK,并将RES发送给VLR。
(6)VLR接收到来自MS的RES 后,将RES与AV中的XRES进行比较,相同则认证成功,否则认证失败。
由于MS和HLR计算CK用的都是同一种算法f3,故而所得出的CK必定相同,这样MS和VLR经过相互身份认证和密码协商后,分别将该过程中的CK、IK作为以后MS和RNC的保密通信。
3 信令完整性保护和加密过程
若鉴权通过,网络方面发送置密码模式消息给MS,将有关用户数据加密的消息经BS传送给移动台。MS对此消息返回密码模式完成消息经BS和VLR传给MSC。
具体过程如下:
核心网(MSC/VLR或SGSN)决定使用哪些完整性算法和加密算法,并向SRNC发送安全模式命令,携带的参数有f8、f9、IK、CK信道参数及MSC向基站指定无线信道的指令消息等,SRNC比较MS支持的安全算法能力和其许可使用的密码算法,选择安全模式使用的f8和f9中的哪种算法,并发消息给MS,启动完整性保护。
MS对接收到的消息进行完整性检验,并发送安全模式设置已经完成的消息给SRNC(这以后若通话过程中存在SACCH和FACCH传送的信令,也是类似处理)。
若通过,向核心网发送安全模式设置完成的消息,通知所采用安全算法。这以后所有的信令都应进行完整性保护,MS的移动管理层同时监控完整性保护的启动。
核心网收到来自基站的安全模式设置完成的消息,安全控制过程成功启动。如果需要加密,激活后的某个时间,MS和SRNC 就可以开始进行业务数据、信道标识、信令等的加密保护了。
在VLR发送密码模式消息给MSC后,将用户的业务类型等数据传送给MSC。至此移动台在VLR中的注册登记就算完成,如果需要,VLR将临时分配一个TMSI给MS,越区以后重新鉴权就用这个TMSI,若还继续越区则更新再重分配一个TMSI。
在对密码模式作出响应后,MS和MSC进行一系列的信令交换,最后由MSC分配地面信道和BS分配无线业务信道TCH。其中的过程有:
MS发送设置消息给MSC,来继续呼叫建立过程。MSC收到消息后向VLR发送消息以从VLR获得呼叫参数。如果成功,VLR将返回呼叫完成消息给MSC,发送呼叫进程消息给MS。此外,MSC为此次呼叫分配一路地面信道,并要求BS分配无线业务信道TCH。在分配请求命令中包括地面信道标识,至此才进入通话过程。
在 通话过程中进行信令完整性保护和加密,然后传给BS,BS首先进行信令完整性验证,通过后再对业务信息和信令信息进行解密,解密后的业务信息和信令信息通过核心网络传达给另一个BS。
另外,若在通话过程中,移动台位置发生改变,就要进行重新AKA和登记过程,步骤按(1)到(6),只是此时用的不是IMSI而是TMSI,而且由于每次的随机数不同,从而每次产生的IK和CK均各自和以前的IK和CK不同,以防止重放攻击。
同理,移动台被呼过程也与此类似,在随机接入过程以后的安全流程和反向链路一样。
4 入侵检测
在认证过程与通话过程中可能会出现被盗用的MS利用以前的合法性进行频繁的呼叫和通话,入侵检测系统能有效地阻止和防范这种行为。通过为移动通信网设计IDS监控和报告系统中用户活动的状态,尽可能实时地检测出潜在的入侵活动,以避免不诚实的合法用户以及非法用户对系统进行的频繁攻击。
该系统可以对用户的移动速度、并机进行验证,由此进行快速的入侵检测。它要求IDS具有对MS的正常行为进行统计并创建用户正常行为轮廓配置的能力,在此前提下若有入侵者请求网络服务时必然会产生与合法用户的行为轮廓配置明显的偏差(如在一个低密度用户区的交换机上发生频繁切换和呼叫就可能存在一个入侵的征兆),从而IDS可以依据入侵者的异常活动来检测出入侵者。
CPD(Calling Profile Database)是整个IDS的核心,它记录着系统中合法用户的正常通信行为特征。MSC负责将用户每次的通信行为实时传送给CPD并由它集中处理。当CPD认为有非法入侵时就发出一条警告信息。CPD同时还接入PSTN。用户可以通过电话直接与CPD中心取得联系,以确认自己的手机是否被盗用;同时用户还可以随时修改自己在CPD的通信行为描述表。
在实际应用中,可能还会涉及到无线定位服务,该服务同样需要到认证中心进行鉴权授权后,方可启动定位操作,在收到MS要求定位的信息后,由基站或者基站移动台联合测量后将数据发往核心网络进行定位计算,然后将结果返回给MS。MS和BS之间往来的数据加密过程与前面类似。
5 结束语
以上仅仅是从相互认证和密钥协商过程、信令完整性保护和加密、入侵检测等方面探讨了移动台主呼过程的安全问题。应该认识到,移动通信中的安全还需要有更多的技术加以保障。
----《中国数据通信》
|