《黑客大曝光:移动应用安全揭秘及防护措施》一3.3 越狱:发泄愤怒-阿里云开发者社区

开发者社区> 华章出版社> 正文

《黑客大曝光:移动应用安全揭秘及防护措施》一3.3 越狱:发泄愤怒

简介:

本节书摘来自华章出版社《黑客大曝光:移动应用安全揭秘及防护措施》一书中的第3章,第3.3节,作者 (美)Neil Bergman ,更多章节内容可以访问云栖社区“华章计算机”公众号查看

3.3 越狱:发泄愤怒

当我们谈到系统总体的安全性时,我们往往会想到目标系统遭受攻击以及他人攻击的方式或自身防御的方式。我们通常不会想到通过刷机来获得对系统的控制。就像它听起来那样有趣,对于移动安全而言,这是一个待解决的新问题。为了更多地了解移动设备,或者为了获得灵活性的需要,我们必须入侵系统。对于iOS,苹果公司努力地阻止用户获得设备的全部访问权限。对于苹果的每一次的行动,人们都有应对,就是那些源源不断出现的为你提供iPhone越狱功能的工具。
因此我们从讨论如何入侵你的每一部手机开始进入iPhone入侵这一领域。而开始的第一步,我们有必要了解术语“越狱(jailbreak)”的确切含义。越狱其实就是获取iOS设备的全权控制的过程。网上有许多免费的工具可以完成这一工作,或者在一些情况下也可以通过访问一些特殊的网站来实现。越狱成功的结果就是你可以在你的iPhone上使用自定义的主题,安装通用的应用或者对应用进行扩展,对设备进行配置使得能通过SSH或VNC进行远程访问,甚至可以直接在设备上编译程序。
事实上你可以相对简单地解放你的设备,用它来学习操作系统,或者其他,这无疑是件好事。越狱也有一些缺点,你应该记住。第一,越狱软件到底对设备确切做了什么,这总让人疑问重重。越狱的过程包括通过发掘系统的一系列弱点来接管设备。在越狱的过程中,攻击者可以在用户不知情的情况下较为简便地插入或修改一些东西。对于一些有名的越狱应用,尽管这种现象从未被观察到,但这也是值得注意的。第二,假冒的越狱软件至少出现过一次,它会诱惑用户注意一些非免费或者根本不好使的软件。越狱后的手机也可能失去一些功能,有些软件厂商已经在他们的应用中添加越狱检查,通过报告错误或者使应用程序在启动时退出(iBook就是这种情况的一个例子)。第三,你必须意识到一个事实,那就是代码签名验证已经失效。即用户能在他们的设备上运行任意代码(越狱的目标之一)。显然这所带来的不利之处在于未签名的恶意代码也能运行,同时也增加了这种情况发生在用户身上的风险。第四,在越狱的过程中还存在一些潜在的问题,如“变砖”或者设备不可用的情况;以及由于越狱使得设备的保修失效。因此,如果上述情况发生,则设备很有可能无法恢复正常使用。
认真地考虑越狱的优缺点是十分重要的。一方面,你可以最大程度地使用自己的设备。另一方面,你把自己暴露在各种可能对设备造成危害的攻击环境下。已知的安全方面的问题也很少有越狱过的手机,总的来说越狱的好处超过风险。因此,用户应该谨慎对待会存储敏感信息设备的越狱。例如,在对存储联系人信息、图片或者用来打电话的重要手机进行越狱之前,用户应该再三考虑。
 越狱社区可能是除了苹果公司之外对iOS安全性的提高做的最多的群体。它提供了对iOS平台不甚严格的访问限制,这使得人们对iOS进行了大量安全研究,并促进iOS的安全模型从其初期的不安全状态演变到当今的状态。越狱社区一直持续不断地努力工作,并且从科学的角度来看,每一个越狱新版本的发布都使人印象深刻,对此,我们应该表示感谢。
已经了解了设备的越狱是什么,越狱实现了什么,以及进行越狱时需要记住的优缺点,接下来,我们来了解越狱的本质。对iPhone进行越狱至少有以下几种方法。第一种方法就是在开机过程中获取对设备的控制,最后向设备推送一个自定义的固件镜像。这个方法能在一些老款设备(iPhone 3G/3GS/4G、iPod 4G和iPad 1)上使用。第二种方法可以看作是纯远程技术;它将一个文件加载到设备中,首先剥夺并获取用户态进程的控制权,然后再利用漏洞获取内核的控制权。使用第二种方法的案例见网站jailbreakme.com,这个网站在近年被用来运营多个远程越狱。第三种方法是在2012年初期开发用来适应近期更多的一些新产品,如使用iOS 5版本的iPhone 4S以及iPad 2/3,通常被叫做corona或absinthe越狱。最新的越狱工具叫做evasi0n,它是2013年发布,用来支持使用iOS 6.x版本的iPhone 5,iPod 5G,iPad 4以及iPad mini的越狱(感谢evad3r)。
基于开机启动过程的越狱
首先我们来看看基于开机启动过程的越狱。用这种技术来对一个设备进行越狱的所有步骤如下:
1)获取越狱设备的iOS版本及设备型号的固件映像(也叫做IPSW)。每一个设备型号都有一个不同的与之对应的固件映像。例如,同样使用iOS 5.0的iPhone 4的固件映像就与iPod 4的固件映像不相同。你必须将特定的设备型号与正确的固件映像相匹配。固件映像被置于苹果公司的下载服务器上,通过谷歌搜索就能找到。例如,如果我们在谷歌上搜索“iPhone 4 firmware 4.3.3”,那么第二条结果就包括了以下下载地址的链接。
appldnld.apple.com/iPhone4/041-1011.20110503.q7fGc/iPhone3,1_4.3.3_8J2_Restore.ipsw。
这就是在基于iOS 4.3.3的iPhone 4上进行越狱所需要的IPSW。
 这些文件往往会很大,所以要确保事先下载好。我们建议你在本地保存一个你工作经常所需的与设备型号和iOS版本的相对应的IPSW的集合。
2)下载你即将要使用的越狱软件。有很多越狱软件可供选择。最流行的一些越狱软件包括Redsn0w、greenpois0n以及limera1n。
本节将使用Redsn0w这一工具,你可以从以下链接进行下载:
Blog.iphone-dev.org/。
3)用USB数据线将设备与运行越狱软件的电脑连接。
4)点击越狱按钮,启动越狱应用程序,见图3-1。

image

5)通过越狱应用的用户接口,选择事先下载好的IPSW,见图3-2。越狱软件会对IPSW进行自定义,这个过程需要花费一段时间。
6)开启设备的“设备固件更新(DFU)”模式。为了开启这个模式,得先将设备关机。之后,同时长按开机键和HOME按钮10秒。第10秒的时候松开开机键,继续按着HOME按钮。继续长按HOME按钮5~10秒,然后松开HOME键。设备的DFU模式开启时设备的屏幕不会亮,因此很难确定设备是否真的开启该模式。幸运的是,越狱软件如Redsn0w会在进程中引导用户,并当设备转换到DFU模式时会提醒用户,见图3-3。
如果你按上述去做却遇到了问题,可以在YouTube视频网站上寻求帮助。这个网站上有许多视频引导用户操作设备进入DFU模式。
7)一旦进入到DFU模式,越狱软件将自动运行越狱进程。这时等待直到越狱进程结束。越狱进程将把固件镜像加载到设备中,重启之后设备的屏幕上会有一些文字输出。重启后,按照往常一样的方式启动设备,手机“桌面”上会出现一个令人激动的“图标”—Cydia。Cydia见图3-4。

image

image

image

 第二代AppleTV能按照本节所介绍的类似步骤进行越狱。FireCore推出的Seas0nPass应用经常被用来对第二代AppleTV进行越狱。

  1. 远程越狱
    设备开机时的越狱是获得设备的所有访问权限的必要步骤。然而,其复杂的操作限制了一部分想对自己设备进行越狱操作的用户。用户必须获得固件镜像,并将其加载到越狱应用中,然后将设备转换到DFU模式。这给技术能力较弱的用户带来了挑战。对于具有更高的技术能力的用户,虽然这不是一个需要克服的巨大的障碍,但它比远程越狱更费时费力。远程越狱的案例见网站jailbreakme.com,这个过程就像在iPhone的Safari浏览器中加载一个特别制作的PDF一样简单。特制的PDF负责剥夺和使用浏览器的控制权,然后即可获得对操作系统的控制,最终为用户提供不受限制的设备访问权限。

在2011年7月,iOS黑客Nicholas Allegra(aka comex)通过jailbreakme.com网站发布了一个针对iOS 4.3.3及更早版本的远程越狱技术的3.0版本。这一款特殊的越狱技术被称为“JailbreakMe 3.0”或简写为JBME3.0。使用该技术越狱一个设备的过程只需加载一个网站的主页到Mobile Safari浏览器,见图3-5。在主页中,用户只需点击安装按钮,然后转眼间,设备就被越狱了。
 这种越狱技术最初是非常方便的,但是因为它不支持iOS的最新版本如iOS 5.x和iOS 6.x,因此现在的实用性不高。

image

  1. corona/absinthe
    用corona或absinthe这些越狱工具对iOS 5.x设备进行越狱是一件很简单的事情。最主要是有一个第四代设备如iPhone 4、iPod 4、iPad1,或运行iOS 5.1.1的iPhone 4S、iPad 2、iPad 3。你只需将你的设备与电脑相连,启动Absinthe应用,点击越狱按钮,然后等待奇迹的发生,如图3-6所示。

image

  1. evasi0n
    evasi0n这一越狱工具是2013年发布的。在将近一年后,evasi0n又使我们可以对基于iOS 6.x的设备(如iPhone 5、iPod 5、iPad 4以及iPad mini)进行越狱。evasi0n的使用方法与其他越狱工具类似。连接设备,启动越狱进程,然后等待完成。有一点小小的不同是在进程运行到三分之二的时候,必须解锁设备的屏幕并手动点击图标来完成越狱。

在图3-7中可以看到evasi0n应用的界面。你只需点击越狱按钮便能开始进行越狱。
如图3-8所示,evasi0n将提示用户解锁设备并点击新的越狱图标(只需点击一次)。
图3-9展示了你需点击的越狱图标。点击一次就使越狱进程继续进行。
最后,图3-10展示了越狱成功时的evasi0n应用界面。这个时候你能解锁设备并找到可爱的Cydia图标。

image

image

image

image

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:

华章出版社

官方博客
官网链接