iOS逆向学习之一(什么是越狱?)

1,031 阅读3分钟

iOS Jailbreak(iOS越狱)

在学习逆向之前,我们要了解什么是越狱?

越狱其实就是利用iOS的漏洞获取iOS系统的最高root权限,类似Android手机获取root权限一样,拥有root权限之后,我们可以对越狱设备进行任何我们想执行的操作。

越狱之后的设备可以进行以下的一些操作

  • 能够安装各种插件、修改手机主题
  • 修改App一些默认的行为
  • 安装非App Store的应用
  • 自由访问和管理iOS设备的文件系统

如何对手机进行越狱呢?

使用***PP助手***、***爱思助手***等软件对手机进行越狱。越狱成功之后的手机桌面上会多出来一个软件,叫做==Cydia==,==Cydia==其实就是越狱之后的App Store。

越狱分为完美越狱和不完美越狱,只有特定的系统才能进行完美越狱。

完美越狱的手机可以进行正常的关机重启,而且Cydia中安装的插件可以正常使用,而非完美越狱的手机,关机重启只有会一直停留在白苹果界面,并且Cydia中安装的插件不能正常使用。只有通过连接电脑,利用特定的软件进行开机,才能正常使用。

Cydia如何安装软件呢?

  1. 首先添加软件源
  2. 然后进入软件源,安装软件

有时候安装完插件之后,手机上可能会出现重启SpringBoard的界面,其实这个SpringBoard就是iOS的桌面。

学习逆向需要安装的补丁

1. Apple FileConduit“2”

它的作用是可以访问整个iOS设备的文件系统。可以在Cydia中添加如下软件源进行下载:

2. AppSync Unified

它的作用是可以绕过系统验证,随意的安装、运行破解的ipa安装包,相应的软件源如下:

3. iFile

它的作用是可以在iPhone上自由的访问iOS的文件系统,相应软件源如下:

4. iFunBox

这个是安装在mac上的软件,可以让我们在mac上访问iOS设备的文件系统。

5. pp助手

可以安装各种App,软件源如下:

安装包的差异

  • 通过Cydia安装的安装包是deb格式的
  • 通过pp助手安装的安装包是ipa格式的

在我们通过Cydia安装deb失败的时候,我们可以采取如下方式手动安装deb

  1. 先从网络上下载对应的deb格式的安装包
  2. 然后将deb安装包放到iPhone设备的/var/root/Media/Cydia/AutoInstall目录下
  3. 重启手机,Cydia就会自动安装deb

如何判断当前手机是否越狱了呢?

  • 第一种方式是通过pp助手、爱思助手,连接手机查看手机是否越狱
  • 第二种是通过代码来判断,之前说过,只要是越狱的手机,桌面上都会存在一个Cydia应用,所以可以使用如下代码进行判断。
if([[NSFileManager defaultManager] fileExistsAtPath:@"/Application/Cydia.app"]){
    NSLog(@"此设备已越狱");
}else{
    NSLog(@"此设备未越狱");
}

提升工作效率的工具

在正式学习越狱之前,需要安装几款可以提升我们工作效率的工具。具体使用方法可自行百度

  • Alfred(便捷搜索、工作流)
  • XtraFinder(增强型的Finder)
  • iTerm2(更加漂亮的命令行工具)
  • Go2Shell(从Finder快速定位到命令行工具)