使用一个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. 【Coursera】Security Introduction -Eighth Week(2)

    Review -Terminology(术语): Confidentiallity & Integrity 泄密 & 欺骗 Confidentiallity: Prevent unau ...

  2. 机器学习-数据可视化神器matplotlib学习之路(二)

    之前学习了matplotlib的一些基本画图方法(查看上一节),这次主要是学习在图中加一些文字和其其它有趣的东西. 先来个最简单的图 from matplotlib import pyplot as ...

  3. Codeforces Round #303 (Div. 2)E. Paths and Trees 最短路

    E. Paths and Trees time limit per test 3 seconds memory limit per test 256 megabytes input standard ...

  4. maven 下载不到jar包时候,更改阿里源

      maven 源 下载太慢,更改国内的阿里源会快一些 <repositories> <repository> <id>alimaven</id> &l ...

  5. disable某种警告

    消除警告: #pragma warning(disable:4786) ZC: 需要消除哪种警告,就在上面填写相应的编号 1. 在 VC6中使用vector<string>时,报类似下面的 ...

  6. 《F4+2》β冲刺第二天

    β冲刺第二天 1.每个成员今日完成的任务: 马仲山:系统代码和开发总结文档的完善 马婧(12):完善需求文档 马婧(13):完善设计文档 马世芳:对部分功能实现进行测试 张俊逸:针对测试出现的问题完善 ...

  7. 《A_Pancers》第一次作业:团队亮相

    一.团队及团队成员介绍 1> 队名:A_Pancers 2> 团队成员组成: 201571030310/龙正圆(小组长) 201571030329/杨环宇      20157103030 ...

  8. crond 的注意点

    本来在控制台调试的好好的程序,一通过crond运行, 就执行不了. 一般需要注意: 1) 环境变量 当前目录 会变成用户的Home 2)  /var/log/messages 可以看出 crond 调 ...

  9. How to implement connection pool in spark streaming

    在spark streaming的文档里,有这么一段: def sendPartition(iter): # ConnectionPool is a static, lazily initialize ...

  10. 20170228VBA提取邮件部分信息

    Sub 获取OutLook收件箱主题和正文() On Error Resume Next Dim sht As Worksheet Dim olApp As Outlook.Application D ...