移动终端安全
2011年4月27日
移动终端分类
按终端移动性/便携性
笔记本电脑,上网本
普通手机,智能手机
按接入方式
WLAN
GSM/3G
移动终端的安全威胁
安全算法、网络协议存在的漏洞
终端用户的使用习惯和安全意识
终端操作系统和应用存在的漏洞
主要内容
WLAN安全
GSM/3G安全
终端自身安全
主要内容
WLAN安全
GSM/3G安全
终端自身安全
安全
安全
WLAN的认证与加密算法
WEP安全问题
算法改进
安全
WLAN的认证与加密
身份认证
加密
WEP=
OPEN
SHARE
+
RC4
完整性
+
CRC32
40bit
104bit
安全
1. 2 WEP安全问题
加密:RC4 完整性:CRC32
安全
1. 2 WEP安全问题
IV空间较小,重复使用
WEP中RC4弱密钥问题
CRC-32(消息篡改)
单向认证(中间人)
无抗重放机制
安全
1. 2 WEP安全问题
IV空间较小,重复使用
已知C1、C2和P1,则
如果我们仅仅知道C1、C2,我们就得到了P1、P2的异或值,使用字典攻击方式可以对P1、P2的值进行猜测。
安全
1. 2 WEP安全问题
WEP中RC4弱密钥问题
弱密钥? DES,RC4,IDEA
IV明文传送,224=16777216, 9000多个弱密钥
数据包开头字节固定
FMS攻击,IV={B+3,256-1,*},B+3为要破解密钥字节索引
Hdr
Data
0xAA
Scott R. Fluhrer , Itsik Mantin , Adi Shamir, Weaknesses in the Key Scheduling Algorithm of RC4, Revised Papers from the 8th Annual International Workshop on Selected Areas in Cryptography, -24, August 16-17, 2001
安全
1. 2 WEP安全问题
CRC-32(消息篡改)
线性运算
C = RC4⊕{M,CRC(M)}
C’= RC4⊕{N,CRC(N)}
= RC4⊕{N⊕M⊕M,CRC(N⊕M⊕M)}
= RC4⊕{M,CRC(M)}⊕{N⊕M,CRC(N⊕M)}
= C ⊕{N⊕M,CRC(N⊕M)}
= C ⊕{Δ,CRC(Δ)}
安全
1. 2 WEP安全问题
单向认证(伪基站)
安全
1. 2 WEP安全问题
无抗重放机制
在WEP协议中,每帧中包含初始向量IV,但是帧中并没有规定序列号。帧的先后次序不能得到明确的区分,这使得攻击者通过被动攻击检测传输的信息流,重传合法用户曾经发布过的信息。
安全
改进算法
WPA(Wi-Fi Protected Access)
TKIP(Temporal Key Integrity Protocol)
MIC(Message Integrity Code)
抗重放
安全
改进算法
WPA(Wi-Fi Protected Access)
破解
MIC密钥恢复
日本研究员 ErikTews
Chopchop攻击
ARP欺骗
Deauth攻击,暴力破解
字典
HashTable
安全
改进算法
WPA2
CCMP(CCM Protocol)
AES-CCM (Counter mode with CBC-MAC)
CTR模式加密
CBC-MAC完整性校验
安全
主要内容
WLAN安全
GSM/3G安全
终端自身安全
GSM的安全体系
GSM安全问题
3G系统中的改进
安全体系
安全体系
算法
鉴权算法A3 (产生的鉴权响应)
密钥生成算法A8 (产生密钥Kc)
加密算法A5(加密算法)
密钥
Ki,用户主密钥
Kc,会话密钥
识别号
IMSI:国际移动用户标识号
TMSI:临时移动用户标识号
IMEI:国际移动设备身份码
协议
鉴权/认证
匿名保护
安全体系
认证、会话密钥产生、加密
Mohsen Toorani, Ali Asghar Beheshti Shirazi, "Solutions to the GSM Security Weaknesses," ngmast, -581, 2008 The Second International Conference on Next Generation Mobile Applications, Services, and Technologies, 2008
安全问题
A3/A8算法缺陷(COMP128结构)
SIM卡克隆(Ki,IMSI)
A5加密算法缺陷
非端到端加密
没有完整性检验
匿名性保护缺陷
单向认证(伪基站,中间人)
安全问题
A3/A8算法缺陷(COMP128-1结构)
SIM卡克隆(Ki,IMSI)
碰撞
旁路分析(电源分析等)
邱志聪. GSM网络上的身份认证技术研究 [D]. 2004.
Karsten Nohl
安全问题
A5加密算法(流加密算法)
A5/1 – 较强的版本
有出口限制
A5/2 – 较弱的版本
没有出口限制
A5/3 – 基于Kasumi
用于3G
算法未公开
A5/1: 2009年12月,德国工程师Karsten Nohl ,NVIDIA GPU集群,
2个月,2TB彩虹表,
A5/3: 2010年1月,以色列Weizmann科学院, Adi Shamir等人,
“related-key sandwich attack”,2个小时
安全问题
非端到端加密
只在手机和基站间加密,核心网中明文传送
没有完整性检验
不能防篡改
匿名保护缺陷(TMSI)
移动台第一次注册和漫游时,仍需要明文发送IMSI
网络端可以要求用户发送IMSI以获得用户真实身份
安全问题
单向认证(伪基站,中间人)
商用移动通信移动台的安全风险和防护.
3G中的安全改进
使用更高强度的加密算法
增加密钥长度至128位
消息完整性保护
在消息上增加一个戳,这个戳只有知道预分配密钥K的那个节点才能够产生。
双向认证
采用和GSM系统相同的认证-响应协议,对用户进行认证。
对网络的认证采用了基于序列号的方法,防止重传攻击。
增强的用户身份认证(匿名保护)
不以明文传输IMSI /TMSI,防止了用户IMSI/TMSI在无线信道上传输时被窃听。
主要内容
WLAN安全
GSM/3G安全
终端自身安全
3.移动终端自身安全
3.移动终端自身安全
终端物理安全
用户隐私的安全
操作系统及应用程序的安全
黑客攻击
手机病毒,木马…
3.移动终端自身安全
终端物理安全
问题
遗失或被盗
SIM卡克隆
解决
PIN码/PUK码
IMEI(*#06#)
使用追踪定位软件
手机送修,把卡取下
3.移动终端自身安全
用户隐私安全
隐私
电话号码簿
通话记录,短消息,上网记录
个人文档,照片,视频 等
保护
键盘锁
做好备份
使用加密软件
网站最好不要设置自动登录
远程删除
3.移动终端自身安全
移动操作系统与应用
Charlie Miller
Pwn2Own
iPhone 4
20 seconds!!
3.移动终端自身安全
移动操作系统
智能手机市场
3.移动终端自身安全
手机病毒
与PC病毒不同
操作系统类型较多
各种型号手机所支持的功能各不相同
手机病毒行为
破坏
跟踪
窃听
获取用户信息
3.移动终端自身安全
手机病毒
传播途径
3.移动终端自身安全
第一个手机病毒
June 20, 2004
Symbian OS
Spread vector – Bluetooth
Infected file –
3.移动终端自身安全
最近的一个病毒
Android愚人节病毒
IMEI、手机号、地理位置信息等用户隐私数据,并上传到
向所有联系人发送下面这条愚人节短信
3.移动终端自身安全
Walk&Text
操作系统安全的解决方法
不要随意访问网页和安装软件(官网)
安装手机杀毒软件
可信计算
软件+硬件
3.移动终端自身安全
总结
移动终端安全
依赖于算法的选择和协议的设计(5个安全服务)
算法要公开
算法要与时俱进
需要软硬件共同保障
终端用户的安全意识
2011年4月27日
谢谢!
1.具备普通手机的全部功能,能够进行正常的通话,发短信等手机应用。 2、具备无线接入互联网的能力,即需要支持GSM网络下的GPRS或者3G网络。 3、具备PDA的功能,包括PIM(个人信息管理),日程记事,任务安排,多媒体应用,浏览网页。 4、具备一个具有开放性的操作系统,在这个操作系统平台上,可以安装更多的应用程序,从而使智能手机的功能可以得到无限的扩充。
*
根据前面提到的接入方式,以及安全威胁的来源,我们将内容分为这几部分。
*
*
目前WLAN有以下这几种认证和加密方式,最上面的WEP协议是最早使用的,也是漏洞百出的。改进后有WPA和WPA2两种协议.
图中左边一列是认证方式,WEP有三种,。。。
根据认证方式,WPA,WPA2分个人版和企业版。企业版认证使用+EAP认证,需要有认证服务器。而个人版比较简单,只需使用预共享密钥。
加密算法上,WEP使用RC4流加密算法,该算法本身就有一些漏洞,再加上WEP协议中对RC4使用上的问题,使得WEP相当脆弱。。。。
关于消息完整性,。。。
具体细节下面讨论
*
接下来先看一下WEP中的一些问题,这张图是WEP数据的发送和接收过程。加密算法是RC4,密钥由一个三字节的初始向量IV,和40bit或104bit的共享密钥构成。有数据包要发送时,先做CRC校验,然后拼接在数据包后面,最后与RC4密钥流异或得到密文流。
*
WEP存在不少问题,我们介绍下面几个方面,下面一个一个来看。
*
IV是24比特,这个空间不大,很快就会使密钥重复。假设我们得到两个由相同IV加密得到的密文,那么我们把密文异或就能得到。。。。。
*
弱密钥是指当使用密钥空间的某些密钥,就是密钥与输出之间存在超出一个好密码所应具有的相关性。
RC4由于存在部分弱密钥,使得子密钥序列在不到100万字节内就发生了完全的重复,如果是部分重复,则可能在不到10万字节内就能发生重复,因此,推荐在使用RC4算法时,必须对加密密钥进行测试,判断其是否为弱密钥。
已知的存在弱密钥的算法有DES,RC4以及IDEA等,IDEA的设计者之一来学嘉教授去年有到我们实验室做报告。
RC4本身存在弱密钥问题,而它使用的IV作为密钥的一部分,却是通过明文传送的,这使得WEP更脆弱。总共224个密钥里就有9000多个弱密钥。
另外,被加密的数据包的第一个字节是固定的,我们就可以异或下得到密钥流的第一个字节。
针对
*
由于CRC校验和RC4算法都是的异或运算都是线性的,这就导致了消息篡改的攻击。
假设有一个密文C,我们现在来修改它,使得我们生成的新密文依然能通过校验,如果我们的明文是N,则对应的密文就应该是C’,那么下面来推下如何从C构造出新的密文。
可以看到,要把加密的消息篡改成我们的消息,是需要知道原来明文的。当然如果,你只是向随意修改,让终端或基站收到无用数据的话,我们可以任意选择Δ,生成密文,它总能通过完整性校验。
*
单项认证,中间人攻击。
*
WEP中虽然有IV,但协议中并没有规定IV要如何生成,这是留给生产厂商自己实现的,所以这个不能作为序列号,用于抗重放。
*
WPA两个核心的东西,就是TKIP,MIC。
。。。
MIC保护机制,如果在60秒内收到了第二个受损的数据包,接入点通常会再停止监听一分钟,然后再为WLAN分配密钥,要求所有的客户端开始使用一个新的“密钥对”来生成MIC密钥和每个数据包的加密密钥。
*
前面看到了,WPA中的完整性校验使用了一个密钥,针对这个有一种攻击方法,应该是去年还是前年由日本研究员提出的。他利用一种叫Chopchop的攻击方法,恢复出MIC密钥。可用于ARP欺骗和DNS欺骗等攻击。
Deauth就是强制让合法终端与AP断开连接,当合法终端断开连接后,会自动尝试重连,这个过程中,攻击这就可以捕获四次握手过程的数据包。然后用字典进行暴力破解。或者用网上做好的Hash表,一般几十G,速度会快一点。但这种攻击只适合使用简单密钥,即包含于字典中。
*
*
*
这是张GSM的网络结构图,包括手机,基站,基站控制器,交换中心,以及一些存储中心,管理和维护中心,以及网关,连PSTN或Internet。
*
我们来看下GSM有哪些安全要素,首先是算法,有A3,A8,A5。。。。
这张图展示了这些安全要素的分布
那么,GSM是怎样使用这些密钥和算法的呢,看下一张图
*
这张图,包括了GSM的认证,会话密钥的长生,以及数据的加密。
认证的时候,基站会发过来一个挑战码,也就是随机数,然后使用Ki通过A3算法,产生一个响应,再发给基站,基站那边再进行验证。
而GSM每次会话,都需要产生一个会话密钥,它是通过A8算法产生的。一般SIM卡中A3和A8使用的是同一个实现结构。
当通话时,有语音要加密时,手机就把会话密钥,和该数据帧的帧号作为输入通过A5算法,产生密钥与数据帧异或,得到密钥流。
*
接下来我们来看下GSM中存在的一些问题。
*
这两个问题其实是一个问题,正是A3/A8算法的缺陷,导致了SIM卡克隆的出现。
一般SIM卡克隆,需要获取IMSI号和Ki。
对 Comp128 算法的攻击,在一开端大家想到的确定是穷举,不过这个 GSM 的设计者也想到了,SIM 卡里面有个逻辑是一共只能查询 2^16 次左右,之后卡会自杀。
与传统数学分析不同,旁路分析是利用加密设备所泄露出来的旁路信息(所耗费的时间,电能的消耗,电磁信息等)
*
1999年12月:一定条件下A5/1算法能被攻破
2003年8月:GSM A5/2算法被攻破,很实用
*
*
PIN码 Personal Identification Number
4位数字组成,一般初始密码为1234或0000,只能输错三次,如果开启,使用该SIM卡
PUK码 PIN Unblocking Key 8位十进制数字,用途就是解除PIN锁定,PUK码只有10次输入机会,10次都输错的话,SIM卡将会被永久锁死,也就是报废。
IMEI国际移动设备身份码,把此号码记下来并保存好,当你的手机被盗后就可以将此号码提供给你的服务商,他能将你丢失的手机锁住,即使别人将你原有的SIM卡换掉,此手机也不能使用。不过IMEI可以修改。
*
这个人是Charlie Miller,有名的黑客,对Iphone产品比较有研究,连续四次在Pwn2Own大赛上获奖。在上个月的Pwn2Own黑客大赛上,他仅用了20秒就攻下了iPhone4,领取1,5000美金。
*
*
Palm Web OS,虎头蛇尾。当年palm的系统在智能手机、掌上电脑上还是很风光的,可时光荏苒风光不在。Palm已经被世界现排名第一的电脑制造商惠普公司收购。
BlackBerry OS,黑莓手机在国外很火,不过之前却一直没能在国内正式销售。
iPhone OS:这款操作系统随着iPhone的热卖而兴起。
*
bada系统是三星在2010年2月发布的自主研发操作系统的手机操作系统,相对于传统的智能手机操作界面来说,Bada和“时尚”结合一起后,让人增添了不少的期待。Bada同样是基于Linux的一种开放式平台。
*
这是近几年各种智能手机操作系统的市场比例,Symbian还是占大头,微软的windowsPhone以及Linux还算比较稳定,另外可以看到,Iphone,Rim和Android增长最猛。黑客攻击以及病毒的目标肯定会是最流行的操作系统。
*
*
*
这是最早被发现的一个手机病毒,准确的讲应该是蠕虫,它感染的symbian系统的一个可执行文件,并通过手机上的蓝牙进行传播,被感染的手机,开机的时候总会显示Caribe,除此之外,应该没什么破坏性。
刚才那个是第一个病毒,现在介绍一个最近的一个手机病毒,Android愚人节病毒,就发生在这个月的1号,Android手机要是感染这个病毒,它会搜集用户的IMEI,手机号,地理位置信息的用户数据,并上传到一个网站。另外,因为是愚人节嘛,它还会向通讯录里的所有联系人发送下面这条愚人节短信。这条短信是说,我刚刚从网上下了一个Android的盗版软件,我很愚蠢,大家别像我这样当一个偷盗者。
这个病毒这是通过一个叫做Walk&Text的Android应用进行感染的。
所以大家平时从其他网站下那些破解版呀,绿色版之类的软件确实应该小心。
上面的例子我们可以发现,大部分病毒都是因为下载和安装了第三方应用程序而感染的,所以最直接的防范措施就是不要随意访问网页和安装第三方软件,下东西最好从官方网站下载。
再一个方法就是装反病毒软件,现在防病毒厂商也都有推出移动版本的杀毒软件。
我们会发现仅仅依靠软件来实现安全,似乎还不够。所以就有了可信计算,可信计算通过软硬件一起来配合构建一个可信的系统。
*