CDMA2000系统IMSI安全策略研究
2009-03-16
作者:林四川1, 徐 尽2, 季新生1
摘 要:分析了IMSI的组成及其在CDMA2000网络中的作用。IMSI作为用户信息的重要组成部分,为确保其安全提出了相关策略,提高了用户身份信息、业务信息、位置信息等重要信息的安全水平。
关键词:CDMA2000; IMSI; 用户信息安全
CDMA2000移动通信系统作为3G的三大标准之一,在安全性方面具有独特的优势。国际移动用户识别码IMSI(International Mobile Subscriber Identity)是系统内部对每个用户的标识,由运营商按照一定的规则分配,存储在UIM卡中。用户购买了一张UIM卡,并选择了一个号码,就建立了IMSI和MDN的对应关系,这个对应关系存储在HLR中。现有的安全机制中,IMSI存在泄漏的危险。而IMSI的泄漏,将有可能导致用户的身份信息、业务信息、位置信息等重要信息被非法获取,造成信息泄漏,特别是对于某些重要用户将产生严重的后果。
本文结合CDMA标准等相关文档,在详细分析IMSI组成、作用及现有安全机制的基础上,提出了增强IMSI信息安全的相关策略。
1 CDMA2000安全特征
从移动台的角度看,CDMA2000网络的安全目标是提供3个层次的安全服务。
(1) 无线接入安全:对用户的无线接入认证和空中接口加密。当用户请求电路交换业务和位置更新时,MSC发起对用户的认证;当用户请求分组交换业务时,首先对用户进行无线接入认证,然后通过Radius协议或者Diameter协议到AAA服务器中进行分组数据业务的认证。
(2) IP网络安全: 提供分组网络的认证和保密。认证功能通过AAA机制实现。
(3) 用户端到端安全:用户端到端安全,规范中没有规定,可以采用VPN实现。
从网络的角度看,CDMA2000无线链路采用伪随机码PN(Pseudo_random Noise code)对信号进行扩频,使得信号很难被拦截和窃听。此外,还规定了一系列接入安全机制,如图1所示。由于终端处理能力和空中带宽受限,CDMA2000安全基于私钥技术,安全协议依赖于一个64bit认证密钥(A_Key)和终端的电子序列号(ESN)。
CDMA2000安全机制中采用了四种安全算法:蜂窝认证和话音加密算法CAVE(Cellular Authentication and Voice Encryption),用于查询/应答(Challenge/Response)认证协议和密钥生成;专用长码掩码PLCM(Private Long Code Mask),控制扩频序列,然后扩频序列与语音数据异或实现语音保密;ORYX是基于LSFR的流密码,用于无线用户数据加密服务;增强的分组加密算法E_CMEA(Enhanced Cellular Message Encryption Algorithm)是一个分组密码,用于加密控制信道。
3GPP2 S.R0032还规定CDMA2000空中接口支持增强用户认证(ESA)和增强用户保密(ESP)。
2 IMSI的组成和作用
2.1 IMSI介绍
CDMA规范由美国标准组织ANSI制定,在IS95阶段,采用MIN(Mobile Identification Number)标示用户。随着CDMA在全球的应用,国际漫游问题显得日益突出,于是对MIN进行了扩展,变成了IMSI。IMSI是国际上为唯一识别一个移动用户所分配的号码,也作为用户在移动通信网络中的唯一标识。
从技术上讲,IMSI可以彻底解决国际漫游问题。但是由于CDMA技术起源于美国,北美目前仍有大量的AMPS系统使用10位MIN号码,在这10位MIN码中是不含移动国家码的,且北美的MDN和MIN采用相同的编号,系统已经无法更改,所以目前国际漫游暂时还是以MIN为主。为了尽快实现CDMA的国际漫游,IFAST(International Forum on AMPS Standards Technology)将MIN码的第一位0和1)预留给国际,供美洲之外的其他CDMA运营者国际漫游时使用。其中以0和1打头的MIN资源称为IRM(International Roaming MIN),由IFAST统一管理。
目前,中国联通申请的IRM资源以09打头。
2.2 IMSI的组成
IMSI由移动国家码、移动网络码和移动用户识别码三部分组成,共15位。中国的移动国家码为460,长城网各中国联通的移动网络码为03。ITU-T建议E.212根据IMSI定义了移动台识别号(MSIN或MIN),IMSI的结构如图2所示。
IMSI由IMSI_M 和IMSI_T组成。IMSI_M的低10位数字包含一个MIN。IMSI_T与MIN无关。ME可以读取签约标识。一个典型的IMSI号码为460030912121001。
MIN共有10位,其结构如图3所示。
其中的M0M1M2M3和MDN号码中的H0H1H2H3可存在对应关系,ABCD四位为自由分配。可以看出IMSI在MIN号码前加了MCC,可以区别出每个用户的国家,因此可以实现国际漫游。在同一个国家内,如果有多个CDMA运营商,可以通过MNC进行区别。
MIN码是为了保证CDMA/AMPS双模工作而沿用AMPS标准定义的。长城网和中国联通对MIN的定义有所不同,长城网的定义为3H1H2H3××××××,中国联通的定义为132H1H2H3××××,其中H1H2H3为HLR识别码。如图4所示,移动台识别码(MSIN)是一个34位的二进制数,它来源于10位数电话号码簿里的电话号码。
2.3 IMSI的作用
(1)作为基本的参数同网络进行交互,这一阶段包含了用户身份的验证,基本过程如图5所示。
①手机在开机或者拨打电话时,把IMSI和ESN上报给MSC。
②MSC以IMSI为索引检测数据库,发现没有相关记录,MSC发送登记请求到HLR,试图获取相关信息。
③HLR以IMSI为索引,进行数据查询。如果数据有效,就把查到的MDN及用户签约信息等下发给MSC;否则,直接拒绝。
④MSC获得了MDN和其他一些签约信息,就可以进行相关的业务处理,这个MDN可以作为主叫号码显示给被叫用户,或者填写在话单中。
⑤在用户被叫时,GMSC将通过被叫的MDN到HLR中去查询当前用户在哪个MSC下。当前为用户服务的MSC最终会以IMSI作为标识下发寻呼消息,从而找到用户。
(2)作为SSD更新及各相关加密与认证算法的输入参数。
CAVE算法为2G安全中基本的算法,在共享秘密数据的更新、验证过程及鉴权过程中都会使用到CAVE算法。根据输入参数的不同,CAVE算法参数初始化和输出结果不同,从而能够被应用到CDMA2000安全的各个环节中去。其主要的应用环节包括SSD更新过程和对终端的认证过程,如图6和图7所示。
3 IMSI的安全策略
3.1 IMSI安全需求
在3G系统中,当服务网络不能通过TMSI识别用户身份时,将使用IMSI鉴别用户身份,特别是当移动用户第一次在服务网络内注册时。传输明文IMSI面临以下问题:攻击者可以收集IMSI,并将IMSI和用户身份关联到一起。由于IMSI是用户在全球范围内唯一性的标识,IMSI提供了很多信息,例如归属网络和所属的国家。在移动环境中,截获IMSI的代价很高。随着网络的不断融合及直接与PC连接的智能卡的广泛使用,攻击可能变得更容易。
用户真实身份、当前位置及其运动模式是重要而又敏感的信息,在通信中必须保证这些信息的机密性。为了用户身份保密,IMSI不被泄漏给未授权的个人、实体或过程。防止入侵者偷听无线信道信令从而识别出哪个用户在使用网络资源,这一特征允许为用户数据和信令提供更高的保密性,并保护用户位置不被跟踪。这就要求IMSI或者能推导出IMSI 的信息避免以明文形式在空中传输。
3.2 IMSI安全策略
目前CDMA 终端在全球绝大多数地区仍采用机卡合一的方式,即所有的信息都是存储在CDMA 终端的NAM(Number Assignment Module)存储区中,运营商可通过OTA(Over The Air)技术进行NAM 数据的更改。
中国联通在推广CDMA 时,首次采用了机卡分离技术,把NAM 中的信息和手机终端的信息都剥离到一个UIM(User Identification Module)卡中。当进行业务处理时,手机从UIM 卡中获得相关的信息,IMSI(MIN)便转存到UIM卡中。由于机卡分离已经成为趋势,这里的讨论只考虑机卡分离的情况。
对于IMSI的安全,本文主要从机密性、新鲜性、有效性来考虑。
(1) 机密性
机密性包括IMSI生成过程、更新过程和注册过程机密。后两点既要保证空中传输的安全,又要保证在各网络单元之间的安全传输。实现机密性的方法如下:
①传统IMSI分配原则是每个用户对应一个IMSI,对重要用户特殊对待。在重要用户入网时由运营商提供一组IMSI,或者根据用户或网络要求由运营商定期分配一组IMSI,这一组IMSI分别存放在UIM卡和HLR中,由MS和HLR通过协商轮换使用。在这个过程中应该确保MS和HLR在某一时刻使用的IMSI相一致。
②使用增强的用户身份保密机制,实现IMSI隐藏。当VLR向用户请求IMSI时,用户在注册过程中对IMSI加密。
增强型用户身份保密机制将用户的IMSI以密文形式嵌入HE-message中,VLR不能直接解密HE-message,而是根据HE/UIC-id将HE-message传送到相应的HE/UIC。HE/UIC根据GI检索相应的GK,用解密HE-message得到用户的IMSI,再传送给VLR。这样可以保证用户的IMSI不被窃听。此后VLR建立用户IMSI和TMSI之间的对应关系,用户就可以用VLR分配的TMSI进行通信。以上过程如图8所示。
(2)新鲜性
如果IMSI的机密性得不到保证,则可以用新鲜性来加强用户身份的安全。借鉴CDMA的A_Key更新协商机制,利用OTASP(Over-The-Air Service Provisioning),根据用户请求或由HLR定期更新IMSI。新生成的IMSI通过OTASP的消息发送到MS,对NAM的IMSI参数进行更新,从而切断克隆终端的服务或为合法用户提供新服务。
实现IMSI的动态更新,还可以引入可信的第三方(如认证中心CA),用IMSI的URL代替IMSI进行传输,移动台通过URL找到预先存在CA中的IMSI,HLR/MS分别通过URL完成IMSI同步更新。
(3)有效性
如果用户的移动终端丢失,或者IMSI的保密性和新鲜性均得不到保证,这时需要考虑销毁不安全的IMSI。若是移动终端丢失,便只能远程销毁IMSI,或者在HLR中销毁丢失的IMSI。对IMSI远程销毁,可以通过OTASP的指令,用全‘0’或其他值来替换终端NAM中的IMSI值,从而使丢失的IMSI失效。而在HLR中销毁对应的IMSI,可以使丢失的IMSI无法接入网络获得服务。
在CDMA2000系统中,国际移动用户识别码IMSI在用户身份识别、用户位置信息识别、用户业务信息标示等方面起着重要作用,而用户身份、业务、当前位置及其运动模式等信息是重要而又敏感的,在通信中必须保证这些信息的机密性。IMSI的安全关系到用户信息的安全水平。本文分析了IMSI的安全机制,并提出了增强CDMA2000系统IMSI安全的几种方法,从而提高了IMSI的安全性。
参考文献
[1] 3GPP2 C.S0023-C v1.0. Removable user identity module for spread spectrum systems[s]. 2006.
[2] 3GPP2 C.S0005-D v2.0. Upper Layer (Layer 3) Signaling standard for cdma2000 spread spectrum systems releaseD[s].2005.
[3] 3GPP2 N.S0011-0 v1.0. OTASP and OTAPA[s]. 2005.
[4] ITU-T Recommendation E.212 (1998-11). The international identification plan for mobile terminals and mobile users[s]. 1998.
[5] 杨义先,钮心忻.无线通信安全技术.北京:北京邮电大学出版社, 2005.
[6] Man Y R著. CDMA cellular mobile communications and network security.袁伟超,译. 北京:电子工业出版社,2002.