《SIM卡安全分析与防护》由会员分享,可在线阅读,更多相关《SIM卡安全分析与防护(30页珍藏版)》请在金锄头文库上搜索。
1、中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 3G/4G SIM卡安全分析与防护 郁昱 上海交通大学 密码与计算机安全实验室 (谷大武 刘军荣 郭筝 葛毅杰 等) 中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 年初Citizenfour的一则报道 “When the NSA and GCHQ compromised the security of potentially billions of phones (3G/4G encryption relies o
2、n the shared secret resident on the SIM), they not only screwed the manufacturer, they screwed all of us, because the only way to address the security compromise is to recall and replace every SIM.” 中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 报告提纲 背景 1) 2G/3G/4G SIM 安全 2) 密码学简介, 2G/GSM
3、的密码认证协议 我们的工作 1) 3G/4G 密码认证协议和 MILENAGE算法 2) 旁路攻击 / 差分功耗分析 3) 策略、演示与结果 经验教训 中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 第一部分第一部分 背景背景 中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 移动通信技术移动通信技术 (1-4G) 1G: 模拟信号 2G: GSM vs. CDMA 数字信号 3G/4G: UMTS/LTE 高速数据传输 中 国 互 联 网 安 全 大 会 Chin
4、a Internet Security Conference2015 什么是什么是 (U)SIM 卡卡? (U)SIM = (Universal) Subscriber Identity Module (U)SIM卡是一类智能卡 (迷你计算机系统). SIM卡上存储了 ICCID (序列号) IMSI ( E.g. ) 保密信息 2G SIM卡: 主密钥K 3G/4G USIM卡: 主密钥K, 运行商保密参数 OPc, r1, , r5, c1, , c5. 310 150 123456789 USA+AT&T +id number 中 国 互 联 网 安 全 大 会 China Intern
5、et Security Conference2015 保密信息窃取保密信息窃取/破解破解 后带来后带来的的安全安全隐患隐患 (U)SIM上实现了哪些密码功能? 中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 Cryptology(密码技术密码技术) in a nutshell Cryptology = “Cryptography” + “Cryptanalysis” Cryptography (密码学) 保护各种信息安全属性的密码算法设计,如AES分组加密(保密性)、 HMAC(完整性)、SHA-3(防碰撞函数)、RSA数字签名
6、(不可抵赖性)等 Cryptanalysis (密码分析) 1.数学密码分析: 数学上破解密码算法本身 2.物理密码分析: 破解密码算法的物理实现 物理密码分析方法通常更为强大 crypto-system inputoutput 中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 (U)SIM上实现的上实现的 密码算法密码算法/协议协议 AKA: Authentication & Key Agreement Authentication(认证/权鉴/鉴权): 确认用户的合法身份. 例: Bob 对Alice进行认证: Challen
7、ge-and-Response. Key Agreement (密钥协商, 用词不准确): 生成session key “I am Alice” R RES Alice: kBob: k RES=Enck(R) Check if RES=Enck(R) Ks=Enck(R+1)Ks=Enck(R+1) (使用Ks加密的通讯) 中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 2G GSM AKA 协议协议 2G GSM 使用的AKA 算法: COMP128-1 (A3+A8) 2G GSM 使用的加密算法 : A5 安全性: 1.
8、 COMP128-1 算法有致命缺陷(narrow pipe attacks BGW98) 2. 单向认证 的局限性(伪基站攻击, DEFCON 2010) 3. 旁路攻击(差分功耗攻击 RRST02,ZYSQ13) 中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 第二部分第二部分 我们的工作我们的工作 中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 3G/4G相对于相对于2G 安全措施的提升安全措施的提升 2G3G/4G 认证算法 COMP128-1 设计上致命
9、缺陷 MILENAGE, 基于 AES-128 加密算法, 目前公认 数学安全 认证机制单向认证 (基站认证SIM卡) 双向认证双向认证(防止伪基站攻击) 保密信息主密钥K 主密钥 K tweak value OPc 更多运行商自定义参数: r1, , r5, c1, , c5 (更多保密信息 = 更好的安全性?) 3G/4G USIM 认证是否认证是否物理物理安全安全? 中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 3G/4G AKA 协议(简化版)协议(简化版) The different between 3G and 4
10、G is not security-relevant Mutual Authentication MILENAGE Algorithm 3G 与 4G 的AKA协议并不完全相同,但不同之处与其安全性无关 中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 MILENAGE 算法算法 K SQN RAND f1f2f3f4 f5 XMACRESCKIK AK SQN AKAMFMAC AUTN Verify MAC = XMAC Verify that SQN is in the correct range AuCUSIM 中 国 互
11、 联 网 安 全 大 会 China Internet Security Conference2015 USIM卡上进行的计算卡上进行的计算 K + OPc (+ r1,c1, r2,c2, r3,c3, r4,c4, r5,c5) 中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 如何恢复卡上的保密信息如何恢复卡上的保密信息? 策略: “分而治之(Divide et impera)” 我们的工作: 利用功耗分析将 K, OPc, r1,c1, , r5, c5 逐一恢复 对于secret K, Oc, c1, c2, , c5
12、进行差分功耗分析( Differential Power Analysis) 对于secret r1, r2, , r5 进行(非标准) 相关功耗分析 (Correlation Power Analysis) 破解密码组合是困难的 如果能将单个困难问题拆分成多个独立独立的 子问题,情况将会大大不同 中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 旁路攻击旁路攻击 (Side Channel Attack) 密码芯片 电磁辐射 (简单/差分)功耗 时间 温度 声音 中 国 互 联 网 安 全 大 会 China Internet
13、Security Conference2015 实验环境实验环境 电脑 + 旁路分析软件 SCAnalyzer 示波器 功耗采集平台 Power Recorder 中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 差分功耗分析 (Differential Power Analysis) 7 2 0 8 4 0 2 7 2 3 3 6 7 1 2 8 7 5 3 1 8 2 6 5 5 2 3 P = S-1(KG C) E = HmW(P) estimation device 密钥字节密钥字节 未知密钥未知密钥 输入输入 meas
14、urement model analysis AES: 128-bit 密钥密钥 暴力穷举暴力穷举几乎不可能几乎不可能 穷举单个密钥字节(穷举单个密钥字节(256种可能)种可能)容易容易 验证猜测是否正确验证猜测是否正确正确值与功耗有较高相关性正确值与功耗有较高相关性 对对每个密钥字节每个密钥字节独立地独立地进行搜索、验证和恢复进行搜索、验证和恢复 中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 差分功耗分析 (续) 如何测试一个密钥字节的猜测正确与否? 猜对的密钥值: 相关性出现峰值 计算(基于猜测密钥值)中间变量值 与功耗曲
15、线之间的相关性 Correlation trace 中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 攻击哪些部位?攻击哪些部位? 子函数 f5+f1 保密信息保密信息: k, OPc, r1r5,c1c5 k,OPcr2c2 r1c1 中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 分析过程分析过程 : : 采集功耗曲线采集功耗曲线 在整条曲线上找到兴趣点 (simple power analysis) 放大后进行相关的分析 AES第1轮的计算 中 国 互 联 网
16、 安 全 大 会 China Internet Security Conference2015 分析过程分析过程 第二步第二步: 恢复恢复 K 和和 OPc 攻击AES 第1轮: (视作密钥为k=kOPc) 恢复kOPc 攻击AES 第2轮: 恢复第二轮的轮密钥 k2(进而恢复主密钥 k) 已知的差分功耗分析:从恢复密钥 k 如何利用差分功耗分析从恢复 k 和 OPc ? 1st rd k 2nd rd RAND k2 Ek OPc 1st rd kOPc 2nd rd RAND k2 Ek 等价视图 中 国 互 联 网 安 全 大 会 China Internet Security Conference2015 分析过程分析过程 第三步第三步: 恢复恢复 , 将 写作 = 8 + 1.恢复恢复 (不妨假设 = 0) 对 进行猜测(8种可能) 并逐一进行假设验证( hypothesis testing) (计算 byte 0 与