我们试着用FBI的方法破解了一台安卓机
钛媒体注:上周,苹果公司与FBI围绕破解iPhone密码的争议终于告一段落,FBI称找到了不需要苹果公司帮助而破解iPhone密码的方式。究竟FBI是通过什么方式破解了iPhone密码?会不会对我们的手机安全带来威胁呢?下面就用FBI的方法原封不动地测试Android系统的安全性能与破解难度。
FBI和苹果的撕逼大戏可谓高潮不断,如今FBI已经斥资请入第三方破解了该犯罪枪手的iPhone 5c,由此又带来一系列问题:iPhone到底安不安全?执法部门是否应该公布破解方法?
不妨往另一个方向思考。如果枪手用的是Android手机呢?鉴于Android仍是智能手机市场的另一大阵营,使用Android系统的公司也更多,我们做了一个实验,把FBI的方法原封不动地用来测试Android系统的安全性能与破解难度。
我知道你可能看不下去太技术向的东西,所以先把结论放上来:
1. 总的来说, 安装了iOS和Android最新版本的设备对离线攻击的抵御能力是类似的,前提是厂商和用户对设备做了正确的配置。老旧版本的系统可能稍微脆弱一点,不用十秒就能被破解了。此外,系统配置和软件缺陷也会降低两大阵营手机的安全性。
2. 不过,在线上攻击方面,我们找出了一些差别,这是由用户和远程管理配置两方面原因带来的。 一开始,Android的默认设置对线上攻击的抵御力更强,但我们用于测试的Nexus 4却不允许用户设置锁屏密码的最大输入次数(其他设备可能有所差异)。iOS设备的安全功能更全面,但用户必须事先手动开启这些功能。
3. 远程控制软件也可能降低Android系统的安全性,这取决于具体的软件。此前,FBI尝试重设iPhone 5c的密码以失败告终,然而我们这次实验里却用这种方法破解了Android系统。
给小白的背景科普
在智能手机上进行数据加密会产生一串密钥,这是手机结合用户的解锁密码(一般是四位或六位密码)和专属该设备的一长串复杂数字生成的。攻击者可以选择直接破解这串密钥,或者分别破解解锁密码和设备编号以及它们的组合。总之,破译这串密钥一点也不轻松,但有时候,从加密手机里获取数据根本就不需要破解它的密码。
你可以尝试在目标手机里安装一个定制的应用程序来提取信息。2011年3月,谷歌就实现了远程安装程序,清理被流氓软件感染的手机,不知道现在的Android系统是否还允许这一功能。
许多应用会用到Android的备份API。因此,手机上安装的应用只要备份了数据,就能够直接从备份的站点上读取。如果目标数据存储在可移动的SD卡上,那么SD卡是可以加密的。但是,目前只有最新版本的Android系统允许用户加密SD卡,也不是所有应用会把数据在SD卡上进行加密。
一些手机有指纹识别器,这种时候拿一张手机主人的指纹照片就行了。
另一些手机还修改了操作系统,让用户能够在正常操作之外读取设备数据,这可能削弱安全性。
如果以上方法都不奏效,那只好硬碰硬破译密码了。
“强力”攻击
在所谓的“强力”(brute force)攻击中,攻击者能够把所有可能的密码组合都试一遍,直到试到正确的组合,强行破解手机。
“强力”攻击主要分为两种,离线的和线上的。在一些情况下,离线攻击更简单,只需把数据从设备上复制下来,存到更强大的电脑上,然后用一些专用的软件或其他技术来尝试所有的密码组合。但是,因为这种方法太认死理,要不就是尝试所有的加密密钥,要不就是分别找出用户的密码和设备号。
安卓机上生成加密密钥的简要机理。
举个栗子, 如果要强力破解一串标准的128位AES密钥,你得尝试的密码共有一千万的十次幂个(10的38次方)。就算你用超级计算机,也得花上亿万年才能破解出来。
相对来说,猜密码可能稍快一点:六位数字的PIN也就一百万种组合而已。如果密码里还包括字母和特殊符号,也不过是几千亿种组合嘛。但是别忘了,后面还跟着一串不比密钥简单的设备号。
线上攻击是指直接攻击手机。因为设备号能够直接从OS中读取,这种方法需要尝试的密钥组合远比前一种要少。但是,用户能够设定手机来防御这类线上攻击,比如在错误的密码输入之后设置延时,这样就延长了破解所需的时间,甚至设定在输入错误多少次之后直接删除数据。苹果的iOS系统就有以上功能,能够在密码输入错误后自动加入延时,用户也能自己设置在密码输入错误十次后抹除设备数据。
实验开始
不同手机厂商会对自家的Android设备进行不同的配置。鉴于Nexus用的是谷歌的标准配置,我们这次就用了一台装有Android 5.1.1、允许全盘加密的Nexus 4来进行试验。
实验前,我们让手机处于锁屏状态。Android允许使用PIN、密码和手势密码,本实验对三种方式都做了尝试。我们手动设置了手机的密码,但解密过程是随机进行尝试的。
首先,在五次密码输入错误后,Android在下一次输入密码前加入了三十秒的延迟。跟iPhone不同的是,Android的延迟时间不会随着失败次数的增加而延长。在四十次尝试之后,我们发现每输入五次错误才会出现一次三十秒的延时。手机会记录密码连续输入的次数,但也的确删除了数据(或许其他厂商的Android手机会采取跟iOS类似的加长延时方式。)
有了这些延时,强力破解六位PIN(也就是一百万种组合)所需的时间得以延长,但最糟糕的情况下也不过是多了69天。如果密码是六位字母,那么即使只用小写字母,这些延长的时间加起来可长达58年。
输入密码错误十次后,手机显示需要重启设备。输入错误二十次、重启了两次后,Android系统开始计算错误次数,到达一定次数会触发设备抹除数据。攻击继续进行下去,到了第30次,设备抹除了所有数据,恢复了出厂设置。
在离线攻击情况下,Android和iOS并无多大差异,但到了线上攻击差异就显著了。在iOS系统中,一旦达到了特定次数的密码输入错误,锁屏和启动过程都能抹除用户数据,但用户必须事先开启该功能。在Android系统中,密码输入错误达到特定次数后,只有启动过程会删除用户数据。然而,我们此次用到的Nexus 4并不能设置锁屏密码错误的限制次数。尽管如此,Android和iOS都能开启远程管理,这样就都能在错误达到一定次数后删除数据。
还能开挂?
FBI和苹果的案子里涉及的iPhone 5c的主人实为其中一名枪手的雇主,上面装有移动设备管理(MDM)软件,让公司跟踪手机并远程实现其他功能。在Android手机上,这样的MDM应用往往作为“设备管理员”安装在设备上,在iOS系统中则要用管理工具Apple Configurator来进行设置。
我们用来测试的MDM成功地重设了密码,然后用新的密钥派生函数来生成了新的密钥。
我们给这次实验的Nexus 4开发了自己的MDM应用,经检验能够跳过用户来重设密码,我们便能直接用新密码来解锁手机。要远程实现这点,手机必须开机并连接网络,MDM程序也必须设置成允许通过MDM服务器远程控制重设密码。
如果攻击者想要得到厂商或软件公司的帮忙来进行破解,Android阵营的情况比iOS更为复杂。 一般来说,操作系统软件都有一个专属的数字码,只有拥有正确数字码的公司能够对操作系统进行升级,这就可能给攻击者留下了乘机而入的“后门”。对于iOS系统,管好苹果公司就可以了,但生产销售Android手机的公司可谓浩如烟海。
谷歌是Android操作系统的主要开发者,也为其推出的旗舰手机Nexus背书。三星为三星手机背书。一些手机运营商也可能参与其中。另外,许多用户用的是Android的定制版本,开发不同版本软件的这些公司都值得FBI发愁。
虽然坊间已在谣传各种破解iPhone的方法,但苹果方面也宣称,一旦破解方法泄露便能反过来对漏洞进行“反破解”,进一步加密iOS系统,且看FBI花的一百万美金能够支撑多久。
本文转自d1net(转载)
我们试着用FBI的方法破解了一台安卓机相关推荐
- FBI如何费尽心力破解了苹果,以及,iOS系统究竟有多安全? | 硬创公开课
分享嘉宾:李嵩Song,西雅图Newsky Security公司联合创始人兼CTO,先后毕业于上海交通大学,西雅图华盛顿大学(University of Washington),专注移动和物联网安全. ...
- Pycharm Professional(专业版2018.2.1)最简单方法破解,亲测有效(转)
Pycharm Professional(专业版)最简单方法破解,亲测有效 简介 PyCharm是由JetBrains打造的一款Python IDE,VS2010的重构插件Resharper就是出自J ...
- 联通物联卡为什么没有网络_联通物联卡突然没有信号,试着用这几方法!
原标题:联通物联卡突然没有信号,试着用这几方法! 如果一个企业正处于项目的紧要关头,设备的核心物联卡突然没有信号,对于公司来说是难以接受的.按理来说物联卡采用专属网络信道,没信号的情况很少出现,尤其是 ...
- Office for Mac版本 提示更新已在进行中,请稍后再试,更新异常的解决方法
Office for Mac版本 提示更新已在进行中,请稍后再试,更新异常的解决方法 参考文章: (1)Office for Mac版本 提示更新已在进行中,请稍后再试,更新异常的解决方法 (2)ht ...
- Charles最新破解版苹果iphone安卓android手机抓包分析教程笔记
Charles最新破解版苹果iphone安卓android手机抓包分析教程笔记 中间遇到各种问题导致最终没法看到抓包信息,一个坑一个坑的埋,终于成功抓包小程序. 梳理了下可以尽量减少栽坑的安装过程,如 ...
- android rom 刷数据吗,安卓手机如何刷入rom包 安卓机刷入rom包方法
安卓机刷入rom包方法流程: 一.鉴别ROM包是卡刷还是线刷包 想要刷机最先当然是要下载一个ROM包,那么在下载之前应该搞清楚刷机包是线刷还是卡刷包.一般在下载的时候作者都会标注ROM包是使用线刷还是 ...
- DxO ViewPoint破解版|DxO ViewPoint 3.1.12破解版下载(附注册机)
点击下载来源:DxO ViewPoint破解版|DxO ViewPoint 3.1.12破解版下载(附注册机) DxO Viewpoint是世界上最好的照片比例校正软件之一.DxO Viewpoint ...
- XMind 8 破解补丁 XMindCrack.jar注册机激活教程
XMind 8 破解补丁 XMindCrack.jar注册机激活教程 Xmind 8 update7破解版(附破解教程|激活补丁|序列号) 思维导图 XMind 8 Update 7 Pro 破解版 ...
- “仅三天可见” 的朋友圈有方法破解啦!
点击上方"逆锋起笔",公众号回复 PDF 领取大佬们推荐的学习资料 之前微博上出现过一个热搜话题:超一亿人朋友圈仅三天可见. 微信创始人张小龙在年度演讲里说,这个开关,是微信里使用 ...
最新文章
- 减少过程中的浪费(2/2)
- FM之NUMERIC_CHECK
- LeetCode175 组合两个表
- GCC编译选项 -OX[转]
- 反射获取成员变量并改值
- Visual Studio 2013 error MS8020 Build tools v140 cannot be found 解决系统 不同部分软件 所依赖编译器版本不同的矛盾
- c函数scanf(),printf()等常用格式字符串
- 新颖训练方法——用迭代投影算法训练神经网络
- iOS开发图片合成,多张图片合成一张图片
- Spring Data JPA 的动态查询和一对多及多对多查询
- 3D游戏编程与设计5——与游戏世界交互
- 华为鸿蒙系统老手机能用吗_华为使用自家“鸿蒙”系统,旧手机的安卓系统可以更新成那个系统吗?...
- 计算商品总金额以及购物券总金额
- 2Opinion Word Expansion and Target Extraction through Double Propagation(2020-10-18)
- 出差总结-2017-11-24
- 初中数学结合计算机教学设计,初中数学教学设计中多媒体技术的运用
- 腾讯云系统镜像和使用镜像创建云主机
- C语言 按照指定位数将十进制转换成二进制
- 各型号电脑U盘启动快捷键查询
- 计算机文化基础(高职高专版 第十一版)第四章答案
热门文章
- ai 临摹图片换背景_AI临摹绘制插画图片
- yii2 后台权限验证获取用户身份_Yii2搭建后台并实现rbac权限控制完整实例教程...
- Java学习总结:27
- mysql如何实现实时存储_OpenResty + Mysql 实现日志实时存储
- Thorntail 2.2.0提供从WildFly Swarm自动迁移的特性
- sql语句中left join和inner join中的on与where的区别分析
- jQuery学习(第一天)
- 创新类编辑推荐:Sequence iBPMS平台
- 轻松记账工程冲刺第二阶段10
- Maven 学习Tips