|
其实CDMA鉴权机制加上使用UIM卡,如果按标准做,安全性超过GSM鉴权几个数量级,
但是在实际使用中被人为的降低了。
标准做法,一般鉴权使用由AKEY临时生成的SSDA和随机数RAND进行鉴权,当某次使用
SSD的一般鉴权失败时,应该认为SSDA已经泄密,系统自动启动基于AKEY的SSD更新过程,
更新UIM卡内SSDA,还有就是由系统主动定时发起SSDA更新。
现在的情况是,
1,因为更新SSD和使用随机RAND会耗费系统资源,
2,各地都有鉴权中心,原来运营商一直未很好解决漫游两地SSD更新交换数据问题,手机
在外地时如果一次鉴权失败(例如呼叫鉴权手机掉电,信号不好,交换不成功),启动SSD更新,
因为两地交换数据的问题,异地更新不成功,此时机主在回原地之前都不能使用手机。
运营商不好好正面解决这个问题,而是偷懒,所谓网络优化,去掉了异地甚至本地使用SSD的一般
鉴权失败后的基于AKEY的SSD更新过程,甚至去掉了定时更新SSD过程,只在新开户,换卡,投诉
时进行SSD更新,系统实际降低到只依靠SSD进行鉴权,一直使用本是临时的SSD,把临时安全措施
当长期安全措施,安全程度大打折扣。
一般的呼叫鉴权,鉴权算法我们看成一个黑盒,输入4个参数,
1,RAND,由网络发送到手机,标准协议应该每次都是随机数,但现实情况,大部分地区都是拨出固
定为0,甚至有些地区呼入时也为0。
2,SSDA,这个由AKEY临时生成,标准协议应该一般鉴权失败就更新,或定时更新,但现实情况,
部分地区从来不更新,哪怕某次鉴权失败(意味着可能有并机无正确AKEY使用)。
3,呼出时电话号码后6位数,呼入时MIN码后3字节
4,ESN(UIM ID)
得到 AUTHR,发送到鉴权中心,鉴权中心也有这4个参数,同样的鉴权算法,也计算出AUTHR与手机发
来的AUTHR比较一致时鉴权成功,可以继续通话。
在一个所谓的网络优化后的网络,由于参数1,2,4都固定了,参数3意味你接听电话时也是固定不变,
你播出电话时已知,上网#777,发短信时固定,鉴权结果AUTHR可以跟踪UIM卡数据得到。
1,用串口调试器软件或单片机飞线到UIM卡数据口捕获数据得到AUTH
2,做一个特别的手机软件,自动记录拨出号码和接听,短信时对应AUTH。
UIM卡MIN号和ESN(UIM ID)可以在手机工程模式看到,或用上述特别手机自动记录。
之后
用上述特别手机,在鉴权结果AUTH出来后做判断修改为上面捕获的预设AUTHR,
就可以
1,无限并机冒充原机拨打,冒充机主,银行电话,充值什么的..........
2,做无限并机上网卡。
3,冒充机主拦截电话,特别是特制手机使用无卡鉴权的话,鉴权计算速度比真实机主的UIM卡
鉴权快并首先返回系统,结果就是真实机主的手机永远都不会再响,只有冒充的手机会响。
最简单的实现条件就是有人拿到你的UIM卡放到这种特制手机并拨出几个电话,发发短信,上一次WAP,
打入一个电话,几分钟后就能复制了,这个速度比GSM的SIM卡复制需要几个小时快多了,所以更容易实现.
在一个山寨横行,手机源码不受控的年代,做一个这样的特制手机并不是很难的事情,只要在源码
上加入十几行代码就能实现,也就是一两个小时的事情,甚至反汇编,仿真器跟踪现成手机并修改也只
要几天时间。
又想到一个方案
条件
1,从不进行鉴权失败后的SSDA更新
2,RAND固定为0
UIM卡一般鉴权指令
发送:
A0 88 00 00 11 进入一般鉴权计算模式
回应:88
发送:
00 RAND(四字节) 18 DIGITS(三字节) 10 UIMID(四字节) 00 00 00 发送一般鉴权参数(可以跟踪此条指令查看RAND项是否每次都是0来判断当地网络是否存在漏洞)
回应
9F 03
发送:
A0 C0 00 00 03 读出鉴权结果AUTHR
正确回应:
C0 AUTHR(三字节) 90 00
我们不用知道UIM卡现在的SSDA,
DIGITS在拨出时就是拨出号码后6位,不足6位前面用MIN后六位补(HEX),呼入时为MIN后六位
DIGITS拨出号码时超过6位时共有999999+1=1000000个组合,
写一个UIM卡PC软件输入DIGITS的所有组合并记录对应AUTHR建立数据库,如果UIM卡一秒能做10次鉴权计算,大概20-30小时能
算完所有组合,大概生成2-3M数据库,将此数据库导入特制手机就能实现部分地区网络情况下的UIM卡复制,攻破鉴权机制,
如果有条件还可以做一个有3-4M容量的特制UIM白卡,重写程序,将数据库导入后查表给出AUTHR,这样的卡在任何UIM卡手机
上都能使用。
对此安全漏洞,并无利用和实际操作,此漏洞只是本人实际测试手机SSDA更新时发现(实测某些地区人
为引起一般鉴权失败后从来没有SSDA更新,对测试工作造成很大不便),但觉得理论上完全可行,希望新电信接手CDMA网络后尽快修补
这一漏洞,还用户 一个安全的CDMA网络,特别是在现在手机支付逐渐盛行的情况下。 |
|