IOS安全、逆向、反编译1-越狱知识讲解[通俗易懂]

IOS安全、逆向、反编译1-越狱知识讲解[通俗易懂]之前开发了一个对安全性要求比较高的APP,所以对安全、逆向和反编译有了一些认识,最近有时间就想系统的把这些知识做一个整理。今天就开始把我的学习过程记录下来。iOS越狱环境搭建在学习iOS越狱之前,我们当然需要一台iOS设备,由于现在基本上都是64位系统为主,所以最好是使用ARM64架构的设备,因此首先我们的手机至少需要iPhone5S或者之后的iPhone设备,平板至少是iPadAir、…

大家好,又见面了,我是你们的朋友全栈君。

之前开发了一个对安全性要求比较高的APP,所以对安全、逆向和反编译有了一些认识,最近有时间就想系统的把这些知识做一个整理。今天就开始把我的学习过程记录下来。

iOS越狱环境搭建

在学习iOS越狱之前,我们当然需要一台iOS设备,由于现在基本上都是64位系统为主,所以最好是使用ARM64架构的设备,因此首先我们的手机至少需要iPhone5S或者之后的iPhone设备,平板至少是iPad Air、iPad mini2以及之后的产品。其次设备的系统至少需要iOS8越狱,版本不要太高,最好是完美越狱。目前我手头使用的是一台完美越狱的iPhone6(iOS8系统), 所以后面的文章都用这台设备为例介绍相关知识。

1、怎么判断设备是否可以越狱呢?

我们可以到这个网站http://jailbreak.25pp.com/ios上面,选择对应的设备和系统,查看是否可以越狱。

2、怎么进行越狱

同样的我们可以在上面的网站看到越狱教程,按照教程操作就可以,推荐使用PP助手。

3、iOS越狱介绍

iOS越狱(Jailbreak)是利用iOS系统的漏洞,获取iOS系统的最高权限,解开之前的各种限制。

iOS设备越狱后,我们可以获得下面功能。

  • 打造个性化、与众不同的iPhone

    例如自由安装各种实用的插件、主题、APP,修改系统APP的一些默认行为。

  • 自由安装非AppSore来源的APP

    例如通过PP助手下载App,“付费APP”秒变“免费APP”。

  • 灵活管理文件系统,让iPhone可以像U盘那样灵活

  • 给开发者提供了逆向工程的环境

当然,越狱后的设备也会有一些不好的地方。

  • 不予保修

  • 费电,越狱后的iOS系统会常驻一些进程,耗电速度约提升10%~20%

  • 在新的iOS固件版本出来的时候,不能及时地进行更新

    由于每个新版本的固件,都会修复上一个版本的越狱漏洞,使越狱失效。如果需要保持越狱状态,要等待新的越狱程序发布时,才能升级相应的固件版本。

  • 不再受iOS系统默认的安全保护,容易被恶意软件攻击,个人隐私有被窃取的风险

  • 如果安装了不稳定的插件,容易让系统变得不稳定、变慢,甚至出现“白苹果”等问题

iPhone越狱成功后,手机桌面会有Cydia,这就是越狱成功的标志,当然也可以将手机连上PP助手查看越狱状态。

4、完美越狱和不完美越狱的区别

完美越狱后,越狱后的iPhone可以正常关机和重启。如果是不完美越狱,iPhone一旦关机后再开机时,屏幕就会一直停留在启动画面,也就是“白苹果”状态。

一般说来,在苹果发布新的iOS固件后,针对该固件的不完美越狱会先发布,随后完美越狱才可能发布,一般较新的系统版本,均为不完美越狱。为了学习时方便,建议将设备进行完美越狱。

5、Cydia介绍

Cydia可以认为是越狱后的“App Store”,可以在Cydia中安装各种第三方的软件(插件、补丁、APP),它的作者是Jay Freeman (saurik)。

我们可以通过Cydia添加软件源,然后在软件源中找到相应的软件进行安装。有时候通过Cydia安装完插件后,可能需要重启SpringBoard或者重启手机,SpringBoard指的是手机桌面。

6、建议安装的插件(最好按照下面的顺序安装)

手机上的插件

  • Apple File Conduit “2”

    这个插件的软件源是http://apt.saurik.com或者http://apt.25pp.com,作用是可以访问整个iOS设备的文件系统,类似的补丁还有:afc2、afc2add。当然只要安装这一个就可以了。

  • AppSync Unified

    这个插件的软件源是http://apt.25pp.com,作用是可以绕过系统验证,随意安装、运行破解的ipa安装包。

  • iFile

    这个插件的软件源是http://apt.thebigboss.org/repofiles/cydia,作用是可以在iPhone上自由访问iOS文件系统,类似的还有Filza File Manager、File Browser。

    这里需要说明一点的是,我在安装这个插件时怎么都安装不上,最后的解决方法如下。

    通常情况下,通过Cydia安装的安装包是deb格式的(结合软件包管理工具apt),通过PP助手安装的安装包是ipa格式的。如果通过Cydia源安装deb失败,可以先从网上下载deb格式的安装包(例如这里的iFile2.2.0-1.zip),然后将deb安装包放到/var/root/Media/Cydia/AutoInstall,重启手机,Cydia就会自动安装deb。

  • PP助手

    这个插件的软件源是http://apt.25pp.com/,作用是可以自由安装海量APP。

Mac上的软件

  • iFunBox

    作用是管理iPhone上的文件系统。

  • PP助手

    作用是自由安装海量APP、卸载APP、备份APP为ipa安装包(iOS9开始,不再支持备份APP)。

7、一些方便的工具(非必要,只是知识开发起来更方便)

  • XtraFinder

    增强型Finder

  • iTerm2

    完爆Terminal的命令行工具

  • Go2Shell

    从Finder快速定位到命令行工具

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/140723.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 比较列存储索引与行索引

    比较列存储索引与行索引

    2021年11月24日
  • 什么是QT[通俗易懂]

    什么是QT[通俗易懂]QT是什么?它能做什么?Qt是一个1991年由QtCompany开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。简单来说,QT可以很轻松的帮你做带界面的软件,甚至不需要你投入很大精力。QT学习需要避免的坑QT分为4.0版本和5.0版本他们之间的差别很大,不通用!!!不通用!!!不通用!!!所以要么你学习4.0要么你学习5….

  • 透视投影矩阵_透视投影矩阵推导知乎

    透视投影矩阵_透视投影矩阵推导知乎透视投影矩阵TheOpenGLPerspectiveProjectionMatrix关于透视投影矩阵的使用BuildingaBasicPerspectiveProjectionMatrixTheOpenGLPerspectiveProjectionMatrix首先,重要的是要记住OpenGL中的矩阵是使用列主顺序(而不是行主顺序)定义的。在所有的OpenGL书籍和参考文献中,OpenGL中使用的透视投影矩阵定义为:我们可以简单地转置矩阵,我们可以得到下面的以行向量为顺序的

  • iOS UITableView的Section Footer加入button「建议收藏」

    iOS UITableView的Section Footer加入button

  • hmacsha256算法原理_一次解析

    hmacsha256算法原理_一次解析需要支持HMACSHA256算法,GitHub找到源码具体地址https://github.com/aperezdc/hmac-sha256/blob/master/hmac-sha256.c移植到目标平台,稍作处理测试ok了,原理:1.输入密钥key和固定的数据(0x36)进行异或操作生成一个64B的数据kx;2.使用kx+输入数据执行sha256算法得到32B的out;3.使用…

    2022年10月22日
  • 漫谈原生JS添加元素的两种方法

    漫谈原生JS添加元素的两种方法漫谈原生JS添加元素常规方法常规方法是首先创建一个目标元素并赋值给某个变量,但是元素里面内容较多,需要innerHTML赋值,将含有内容的变量赋值给目标元素的变量,最后,将这个目标元素的变量通过appendChild把节点放到指定位置。varli=document.createElement(“li”);varspan=document.createElement(“span”);li.appendChild(span);varelement=document.querySe

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号