IOS逆向分析—终极详细(一)
前言
本文是个人完成对IOS上APP分析的整个过程,当然对于不同的机型还会遇到不同的情况,谨以此文供大家参考,如有错误,望大佬们多多指教一、逆向分析是什么?
逆向工程(又称反向工程),是一种技术过程,即对一项目标产品进行逆向分析及研究,从而演绎并得出该产品的处理流程、组织结构、功能性能规格等设计要素,以制作出功能相近,但又不完全一样的产品。逆向工程源于商业及军事领域中的硬件分析。 上面是正儿八经的介绍。我做这个就是为了工作需要,要分析其它的视频类APP,所以就开始了苦逼的折腾iPhone的过程。二、越狱
1.所有方法
我知道的方法大致分为以下两种
- 在windows下使用爱思助手一键越狱(目前我就找到这个软件可以一键越狱);对于安卓手机的话,PP助手也可以,但是不幸的是在2021年的2月28日,PP助手下架了ios上的所有商品。(我特么的就是这个之后开始做的,搜资料的时候就觉得自己特别水逆,大家好多就直接用PP助手都搞定了)。另外我为什么要说在windows下使用呢?因为我尝试过在mac上用爱思助手,可是版本不支持,就越狱不了(估计是这玩意经常更新的就是windows平台上的,个人感觉mac上的就是辣鸡)
- 直接下载越狱软件,经常用的是unc0ver,当然还有checkra1n、红雪、绿毒、Absinthe等等。后面说的有些是很古老的版本了,这些里面从谷歌搜索出来的结果来看,目前unc0ver还是用的多一些,因为它已经支持到了越狱14.3(截止发稿时)
2.尝试的方法
共尝试了三种方案unc0ver、checkra1n以及爱思助手(windows下)。 写这些主要是给大家把我踩的坑告诉大家,一方面一起开心一下,另一方面如果其它方式都不行必须用这些方法的时候,说不定有用。如果不想看这个苦逼过程的可以直接跳过到下一节。- unc0ver:根据官网提示给出了三种使用unc0ver的越狱方法。altstore方式,该方式安装完全能够成功,越狱显示也是成功了,我是用的iPhoneXs(ios14.0)进行的越狱。首先根据官网提示安装altsotre,安装成功后,在iPhone上登陆unc0ver的官网,然后点击open in altstore按钮(官网上也有写这一步,只不过我当时看懵逼了,我以为是在mac上操作,死活找不到这个按钮,因此特此说明)。
在这个过程种出现了一个问题:
cannot activate more than 3 apps and app extensions. Make sure “Offload Unused Apps” is disabled in Settings > iTunes & App Stores, then install or delete all offloaded apps.
解决方案:
删除app,主要是需要ios设置信任的app,如果之前有安装,那么就要删除完全。另外还要设置disable offloaded unused app。就可以了
安装成功后,点击越狱按钮就可以了,进行到这一步我十分的开心,以为这个好easy,结果后面在连接手机成功,并且开始砸壳app的时候,这个过程给我好好上了一课。个人感觉还是越狱没有很成功(当然手机的机型以及系统型号应该都有关系,由于手头上的手机比较少,未作比较,所以这只是个人主观猜测),所以导致越狱后的手机的Developer文件夹是没法使用的,这个文件夹下面有很重要的东西。所以只能到此作罢,尝试别的方法。 - checkra1n:这个对设备有要求,要求12.0以上的系统,而且它还破解不了14.0。我手头是一台14.0的手机和一台11.1的手机,这就相当尴尬。不过这个软件下载下来之后,mac连接手机是能直接识别的,感觉做的还不错,可以尝试一下。
- 在windows下下载爱思助手,越狱了两台手机,se1以及Xs,两台都成功了,但是由于se1太过老旧,因此越狱后的效果并不好,且后续的砸壳操作也无法执行。
3.成功的方法
重点来了!!!
重点往往十分朴素
Windows下下载爱思助手,将手机使用usb连接电脑,一键越狱。
没错,有时候越狱就是这么简单
越狱成功的标志一般情况下是cydia商店可以使用,但从我的这几天折磨的经历来看,不光要可以使用,还要其它的各种情况均正常,才能后达到我们越狱的目的。
成功以后记得安装Apple File Conduit “2”以及AppSync Unifiled,另外在Mac端安装iFunBox,以此查看iphone中的文件
三、mac终端连接iPhone
使用OpenSSH
安装OpenSSH,安装完成后,尝试连接同一个wifi,但是并不能ping通而且也不能够ssh连接成功。最终使用了不同的wifi,就能够ping通而且连接成功,初始密码是alpine。
ssh root@手机ip
这个手机ip就是点击iphone的设置-》无线局域网,然后点击你连接的wifi的名称后面跟着的圈i,往下滑动就能看到ip地址
另外一种方式通过usb连接。首先下载usbmuxd工具包,然后用usb线连接手机。进入python-client目录,执行以下命令将本地22222端口转发到远程22端口。
python tcprelay.py -t 22:22222
出现下面这句就说明成功了:
Forwarding local port 22222 to remote port 22
最后,执行
ssh root@localhost -p 22222
特别提示:千万记得使用python3以下进行调用,因为用python3试过,真的是不行,主要是里面的py文件是按照3一下的标准写的。另外千万不要听那些网页说了P一定要大写,我用大写尝试了也不行,小写才可以。
总结
下一章讲解破壳以及分析过程,敬请期待!!!
好好学习,天天向上!!!
喜欢的给个三连!!!
感谢大家!!!