使用一个PC和示波器克隆3G/4G SIM卡,破解过程只需十分钟。上海交大教授郁昱现场展示了如何成功复制SIM卡,以及一张克隆卡如何变更了支付宝的密码并潜在盗取账户资金。

破解SIM卡加密

今年二月,爱德华·斯诺登揭露了美国国家安全局NSA与英国情报机构政府通信总部GCHQ从世界最大的芯片制造商之一的公司偷了数以百万计的SIM卡加密密钥,然而研究人员此前似乎并不以为然。

郁昱是目前上海交通大学的专业侧信道分析和密码学研究教授,他去年一直在寻找如何破解3G和4G卡的加密。而这些使用了AES-128的被认为不可破解的密码,最终竟然是如此容易通过一些侧信道分析而获取。

尽管各种攻击2 g(GSM)算法(comp - 128 A5)出现于各种文献上,但是没有实际的攻击用来攻击已知的3G/4G(UMTS/LTE)SIM卡。3G/4G SIM卡采用了双向认证算法称为MILENAGE,而这又是基于AES-128,这是被NIST认证为一个数学上的安全分组密码标准。MILENAGE还使用将近一对128位加密进一步混淆算法。

侧信道攻击可以测量芯片中的耗能、电磁排放以及产热。而这项技术已经存在很多年了,同时还要求对目标设备的物理访问。

克隆卡应运而生

郁昱和团队组装使用了一个用于跟踪能量水平的示波器、用于监控数据流量的MP300-SC2协议分析仪、一个自制SIM卡读卡器和一个标准电脑。尽管配置很简单,他们还是在10到80分钟的时间内分别破解了来自8家厂商的SIM卡。

破解系统并不能直接读取加密秘钥,相反团队从秘钥中分离出了256部分,通过SIM卡将它们与电源状态对应。这确实需要大量的计算和一点点运气。一旦系统完善之后,破解秘钥并且克隆卡就变得相对容易了。

郁昱现场展示了如何成功复制SIM卡,他同时还展示了一张克隆卡如何变更了支付宝的密码并潜在盗取账户资金。

郁昱表示,手机用户和数码安全厂商都需要提升物理安全的意识。而对于这项“技术”,无疑情报部门会非常感兴趣。

演示视频:

PPT下载:

http://pan.baidu.com/s/1qWwuVVI

中国教授在BlackHat现场演示破解SIM卡AES-128加密的更多相关文章

  1. SIM卡基础知识

    一:了解Sim卡和GSM网络登录步骤的基本知识 (一)名词解释: SIM卡(Subscriber Identity Module),即用户识别卡,它是一张符合GSM规范的“智慧卡”,SIM卡有大小之分 ...

  2. simtrace之探秘SIM卡中的世界

    0×00 关于SIM卡 众所周知SIM卡是一张插在手机上的小卡,其全称为Subscriber Identity Module 客户识别模块.不过,这个世界上并没有多少人知道SIM卡中的操作系统是基于j ...

  3. Alpha版本冲刺现场演示和阶段验收的总结

    一共15个组.有13个组参加了今天的现场演示,分别是YZH.Radio Group.FZU5BOYS.静静看.Clean Code.Mod4.F4.For the Dream.Journey of C ...

  4. Android本机号码及Sim卡状态的获取

    SIM卡存储的数据可分为四类:第一类是固定存放的数据.这类数据在移动电话机被出售之前由SIM卡中心写入,包括国际移动用户识别号(IMSI).鉴权密钥(KI).鉴权和加密算法等等.第二类是暂时存放的有关 ...

  5. Android 读取SIM卡参数

    package com.water.activity; import java.util.List; import android.app.Activity; import android.os.Bu ...

  6. Android ExpandableListView使用+获取SIM卡状态信息

    ExpandableListView 是一个可以实现下拉列表的控件,大家可能都用过QQ,QQ中的好友列表就是用ExpandableListView实现的,不过它是自定义的适配器.本篇 博客除了要介绍E ...

  7. android 读取用户号码,手机串号,SIM卡序列号

    简介: IMSI:international mobiles subscriber identity国际移动用户号码标识,这个一般大家是不知道,GSM必须写在卡内相关文件中:MSISDN:mobile ...

  8. sim卡中的汉字存储格式

    Sim卡中的ucs2格式 Sim卡中的中文都是以ucs2格式存储的,ucs2和unicode只是字节序不同,unicode是小头在前,ucs2是大头在前. Ucs2与GB2312互换可以用VC中的Wi ...

  9. 【双模卡的相关知识】解SIM卡前需要知道的信息(SIM年分和厂商识别)

    <ignore_js_op> 二.SIM版本问题SIM卡的版本有两种说法,一是有些是制造厂制定的,二是电信公司的制定.下面以移动为例,目前我们手里的SIM有几种版本:v0.v1.v2.v3 ...

随机推荐

  1. java中拼写xml

    本文为博主原创,未经博主允许,不得转载: xml具有强大的功能,在很多地方都会用的到.比如在通信的时候,通过xml进行消息的发送和交互. 在项目中有很多拼写xml的地方,进行一个简单的总结. 先举例如 ...

  2. Window下Latex加速编译方法以及西农毕设论文模板推荐

    近些日子用Latex写了一遍文章,一共有11页,但是在window下编译需要2分多的时间,使用的是xeletex编译器. 经过查找,得到了以下方法: 如果坚持使用windows下的latex,使用以下 ...

  3. 【bzoj】2733: [HNOI2012]永无乡

    Description 永无乡包含 n 座岛,编号从 1 到 n,每座岛都有自己的独一无二的重要度,按照重要度可 以将这 n 座岛排名,名次用 1 到 n 来表示.某些岛之间由巨大的桥连接,通过桥可以 ...

  4. hdu 1014 Uniform Generator 数论

    摘取于http://blog.csdn.net/kenden23/article/details/37519883: 找到规律之后本题就是水题了,不过找规律也不太容易的,证明这个规律成立更加不容易. ...

  5. SpringBoot开发案例之整合Kafka实现消息队列

    前言 最近在做一款秒杀的案例,涉及到了同步锁.数据库锁.分布式锁.进程内队列以及分布式消息队列,这里对SpringBoot集成Kafka实现消息队列做一个简单的记录. Kafka简介 Kafka是由A ...

  6. android listview的HeadView左右切换图片(仿新浪,网易,百度等切换图片)

    首先我们还是看一些示例:(网易,新浪,百度) 显示效果都不错,可是手感就不一样了,百度最棒,网易还行,新浪就操作很不好,这里我说的是滑动切换图片.自己可以测试一下.不得不说牛叉的公司确实有哦牛叉的道理 ...

  7. RabbitMQ入门_05_多线程消费同一队列

    A. 多线程消费同一队列 参考资料:https://www.rabbitmq.com/tutorials/tutorial-two-java.html 消费一条消息往往比产生一条消息慢很多,为了防止消 ...

  8. Codeforces 96C - Hockey

    96C - Hockey 字符串处理 代码: #include<bits/stdc++.h> using namespace std; #define ll long long ; con ...

  9. MyBatis3-基于注解的示例

    在基于注解的示例中,可以简化编写XML的过程,全部采用注解方式进行编写,并在注解上写SQL语句,语句和XML的语句保持一致,并且可以省略掉XML文件不用引入的好处.但还有一点,基于注解的方式还没有百分 ...

  10. 深入理解Java中配置环境变量

    深入理解Java中配置环境变量 配置的目的: 本来只在安装JDK的bin目下能运行java.exe,javac.exe,jar.exe,javadoc.exe等Java开发工具包命令,我们现在想让在所 ...