最近闹得沸沸扬扬的FBI和苹果公司玩命对撕终于有了结果,嫌犯iPhone 5c被一家第三方公司破解了。一时间手机系统的加密与破解成了IT界的热点,那么常见的手机系统有哪些保护手段,黑客们又是怎样破解手机系统的?
系统加密——手机系统是这样保护我们的
随着智能手机普及和硬件性能提升,现在手机上保存着越来越多的个人信息。如何保护未经授权的访问,各大手机系统厂商也纷纷对手机访问做出各种保护措施。 其中对手机进行加密访问是最常见的保护手段,它的原理是在加载完系统组件进入手机桌面前设置一个保护密码(比如开机数字密码、指纹开机、手势密码保护等),强制用户必须输入合法的密码才能使用手机。为了防止恶意用户猜测密码,手机系统一般还提供附加保护措施,就是用户在输入多次错误密码后会激活其他保护,比如iOS 9以上用户可以设置输错密码10次后自动删除手机所有数据(图1)。
图1 iOS用户可以设置输错密码10次后销毁数据
在FBI和苹果公司这次对撕中,事件的起因就是由于嫌犯的iPhone 5c使用加密密码(并有可能开启附加保护),导致FBI无法对手机进行访问,也不敢轻易进行密码输入尝试以免导致手机数据被自动删除。当然其他手机系统也有类似保护手段,比如Android用户连续输入5次错误密码则要30秒后才能再次输入(如此反复),Windows Phone则5次输入错误后手机,自动锁定一定的时间。常见手机系统正是通过“密码+附加保护手段”方式来保护我们的手机不被随意访问的(图2)。
展开全文
图2 Windows Phone用户输错密码后要隔一段时间才能继续输入
绕过密码,手机系统破解背后
如上所述,常见手机系统是通过“密码+附加保护手段”方式来保护我们的手机。因此如果要“破门而入”,关键就是要如何绕过密码。一般常见破解方法主要有两种:
第一种是暴力破解,就是使用字典穷举方法对手机密码进行猜解。现在很多朋友手机都是使用数字密码,因此密码组合是有限的,通过不断尝试就可以猜到正确的密码。不过为了避免这种情况的发生,很多手机系统都对输错密码次数进行了限制,因此破解者也有对应的解决方法。据报道在这次FBI破解iPhone 5c过程中,第三方公司使用的就是类似方法。据说这家公司和一家名为Rook Security的安全公司合作,由后者通过独特的技术转录为iPhone做了无数个备份,然后用传统的穷举技术尝试解锁密码,一旦输错10次被锁定,就更换一个备份重新来过。而且读取设备可以保存穷举进度,这样借助电脑等高性能设备输入各种可能的组合密码,他们就可以在很短时间内破解iPhone 5c。
第二种则是通过其他设备直接读取手机存储信息。大家知道系统所有信息都是保存在系统存储设备上的,因此如果无法通过密码进入手机系统,我们就可以通过其他设备如电脑等绕过密码保护直接读取存储信息进行破解。比如对于Android用户,手机的开机密码实际上是data\system\gesture.key或者password.key文件,分别对应手势密码和字符密码。这样在USB调试模式为打开状态前提下,将手机和电脑连接后,通过ADB工具包连接到手机后删除上述文件后即可自动解锁手机(图3)。
图3 Android手机可以通过在电脑上删除特定文件方法解锁
对于iOS系统,同样也有类似工具进行破解。比如在此次FBI破解过程中,也有媒体爆料说,iPhone破解可能是借助Cellebrite公司一款名为UFED(万能取证设备?Universal Forensic Extraction Device)设备完成的。UFED采用物理萃取的方法,直接对芯片进行操作(原理也类似电脑对Android手机的读取),然后读取手机上所有存取信息进行绕开密码的破解(图4)。
图4 传说中用来破解iPhone的UFED
破解与反破解,如何更好保护手机
现在手机上保存着我们如此之多的信息,我们的手机又很容易丢失。面对各种针对手机的破解,我们该如何更好保护自己的手机?
1.尽量为自己手机设置复杂的密码。在现实手机破解威胁中,暴力破解是我们最常遇到的。因此尽量为自己手机设置复杂的密码是一个很好的保护手段,比如iOS 9.3用户可以在设置密码时选择“自定字母数字密码”,这样(默认4位数字密码)可以使用字母作为开机密码(同时开启输错密码抹除数据保护),这样极大增加暴力破解的难度(图5)。
图5 iOS可以使用自定字母数字密码
2.增强系统安全设置。如上所述,Android手机可以通过和电脑连接来轻易破解密码,但是这个操作前提是手机USB调试模式为打开状态(不过很多Android默认即开启此选项)。对于手机安全性要求较高用户,我们可以关闭USB调试模式,这样手机就无法通过ADB方式和电脑连接,杜绝手机和电脑连接造成泄密的风险,Android用户只要进入设置,去除USB调试前的勾选即可更好保护手机(图6)。
图6 关闭USB调试模式