《挑战不用macOS逆向iOS APP》之两百元成本的iOS逆向环境搭建 | 您所在的位置:网站首页 › ppa文件 › 《挑战不用macOS逆向iOS APP》之两百元成本的iOS逆向环境搭建 |
Intro 很多人在学习逆向iOS app的时候,都有两个痛点: iOS设备太贵需要macOS环境前者需要小几千的iPhone,后者需要至少大几千的Macbook 。本系列文章就是为了解决这两个痛点,全部操作在一百多块钱的iPhone6上完成,且电脑端在r0env/Win上进行演示,让我们康康,这几乎无成本的一套环境,究竟可以让我们走多远,走多深! 本篇文章是《挑战不用macOS逆向iOS APP》系列的第一课环境搭建主要为了实现在iOS APP逆向过程中一些环境方面的常规需求,具体实现目标如下: windows中iPhone基本信息获取/软件安装/投屏越狱设备分析推荐/工具推荐/unC0ver流程详解越狱后手机常用工具:日志/网络/包管理/免签名Frida/Objection/任意版本安装切换/动态分析ios砸壳/IPA静态分析基本流程/IDAF5函数定位linux中iphone手机信息获取:ID/名称/详情/签名/截屏/定位安装APP/IPA:安装/卸载/升级/备份/回复APP收发传输文件:usbmuxd OpenSSH=adb pull/push远程文件管理:磁盘映射/电脑上浏览手机文件夹升降级和激活:恢复模式/固件升降级/手机激活该系列为学员优秀作品系列,附件apk、代码等位于我的项目中,大家可以自取: https://github.com/r0ysue/AndroidSecurityStudy 1.Windows中iPhone基本信息获取/软件安装/投屏(1)基本信息获取Windows中操作iPhone官方推荐方式是使用iTunes,但是后续我们会安装未经签名的应用,因此这里我们推荐使用爱思助手进行操作。直接去官网下载安装爱思助手,打开并在手机上信任此电脑 软件安装:点开爱思助手的应用游戏可以直接安装,爱思上安装的软件有APP Store上架的也有未上架但有企业账号签名的,具体内容涉及IPA签名,会在后续文章解释。 直接使用爱思助手中的投屏,可以使用有线投屏,同一局域网下也可以使用无线投屏 手机端上滑点击屏幕镜像点击爱思投屏即可。 2.越狱设备分析推荐/unC0ver流程详解(1)越狱设备的分析与推荐查看爱思助手的越狱方式可以看到可以支持ios版本最高的是unc0ver方式可以支持到iOS14.8,而又由于iPhone越狱失败后重启设备失败的话需要恢复出厂设置,此时会自动更新到当前设备支持的最新iOS版本,而iPhone6最高版本是12.5.4,iPhone6s和iPhone7最新版本均是iOS 15,因此我们选择使用iPhone6作为越狱设备,这样即使越狱失败最新版本也依然在越工具支持版本之下。越狱方式对比,这里主要分析两种方式unc0ver和Checkra1ncheckra1n:比较复杂还要制作u盘但是胜在稳定unc0ver:过程简单但是成功比较看运气,需尝试多次才能成功 (2)checkra1n越狱详细流程(1)制作一个越狱u盘进入电脑BIOS选择VendorCo ProductCode 从u盘启动 选择ALT+F2进入Checkra1n刷机系统 上下左右空格键控制start开始越狱 next 进入刷机界面后根据提示操作 1.点击start2.同时摁住侧边键和home键3.摁住home键这个界面就是在刷入,ALL Done就是刷入成功了。 补充:中间可能会失败,没关系多来几次总能成功的,但是一定注意,手机不要买到带锁机,二手iphone卖家有时会隐藏ID锁,这种机子可以登录自己ID但是一旦越狱失败就寄了。。。 3.越狱后手机常用工具:日志/网络/包管理/免签名手机越狱成功后,会在桌面显示checkra1n图标,点击安装cydia,cydia是一个需要越狱后使用的三方软件仓库。这里我们主要安装以下几个工具: (1)cydia自带源工具安装cydia自带源的工具可以直接搜索安装 AppSync Unifield是IOS上的插件工具,作用是帮助我们安装未经苹果签名的IPA,安装后可以安装未经苹果签名的软件,安装具体流程如下:首先添加源:编辑->添加->输入cydia.angelxwind.net 然后进行插件安装:karen->插件->AppSync->安装->确认->重启 下载最新frida-server进行安装 这里使用r0env,自带pyenv支持多版本Frida/objection切换,这里安装最新版本作为演示 (1)安装最新fridapyenv install 3.9.5 pyenv global 3.9.5 pip install frida==16.0.5这里安装的时候不挂代理会很慢,挂代理后遇到了一个错误 错误原因是没有socks相关库 unset ALL_PROXY pip install pysocks再挂代理安装 export ALL_PROXY="socks://代理IP:port" pip install frida pip install frida-tools安装成功 ios砸壳工具也有很多,这里我们推荐使用frida-ios-dump,下边是安装使用详细过程: git clone https://github.com/AloneMonkey/frida-ios-dump cd frida-ios-dump/ apt-get install usbmuxd pip install -r requirements.txt --upgrade iproxy 2222 22 ./dump.py 高考蜂背(2)IPA静态分析基本流程及IDAF5函数定位因为本篇文章主题是环境搭建,因此这里仅演示简单流程 file 高考蜂背.ipa unzip 高考蜂背.ipa cd Payload/ cd Gkfb.app/ file * | grep -i mach ida64 ./Gkfb经过frida-ios-dump砸壳后我们拿到了IPA包对其进行解压,并检索内部mach-o可执行文件,随后用ida分析文件。 分析过程检索发现MD5格式函数,使用F5即可看到其伪代码 在linux中操作iPhone主要使用libimobiledevice库及依赖于它的一些开源工具,这里先下载安装该库 apt-get update add-apt-repository ppa:pmcenery/ppa apt-get install libimobiledevice-utils下面是该库的一些简单使用: (1)获取设备IDidevice_id 获取当前连接设备UUIDlinux上对iPhone中软件操作这里是使用的依赖于libimobiledevice库的工具ideviceinstaller,在安装完libimobiledevice库后我们可以直接使用apt安装该工具 apt-get install ideviceinstaller(1)安装软件ideviceinstaller -i xxx.ipa 安装软件usbmuxd是一个苹果提供的通信服务,用于建立通信通道,libimobiledevice库就是基于这个服务实现了许多功能,依赖该库的工具ifuse实现的文件系统挂载自然也是基于此服务,我们可以通过挂载文件系统实现手机端与电脑端的文件传输,从而实现android中adb push/pull的同样效果,我们也还可以通过OpenSSH服务实现文件传输,以下是二者具体实现: (1)基于usbmuxd实现adb pull/pushifuse是依赖libimobiledevice库将iOS设备挂载到本地系统的开源工具,安装完库后直接使用apt安装 apt install ifuseifuse --root [挂载点]:越狱后将整个iphone文件系统挂载过来将文件系统挂载过来后我们就可以进行自由的文件传输 (2)基于OpenSSH实现adb pull/pushOpenSSH在手机中已经安装过,安装后自动开启ssh服务,我们就可以使用linux的scp命令进行文件传输从本地push到手机 scp -P 22 1.txt [email protected]:/ 这里写-P是为了使用一些非标准端口时指定端口从手机pull到本地 scp -P 22 [email protected]:/2.txt ./ifuse是依赖libimobiledevice库将iOS设备挂载到本地系统的开源工具,安装完库后直接使用apt安装 apt install ifuse(1)挂载文件系统ifuse --root [挂载点]:越狱后将整个iphone文件系统挂载过来(1)进入恢复模式 ideviceenterrecovery 让设备启动到恢复模式,iOS设备的恢复模式允许用户刷写、升级或还原设备的固件。(2)固件升降级 idevicerestore [OPTIONS] PATH 将PATH路径上的固件包安装到ios设备 -u 指定设备ID -l 使用最新可用固件(3)手机激活 ideviceactivation activate其中,activation_record_path是包含激活记录的文件路径。这个文件可以从其它iPhone上备份,或者从开发人员手中获得。运行后,libimobiledevice将会将激活记录写入到手机中,从而完成激活过程。激活成功后,你的iPhone将可以正常使用。 《挑战不用macOS逆向iOS APP》系列的第一课环境搭建内容到这里就结束了,两百元成本的iOS APP逆向的基本环境已经搭建成功,后续会继续更新iOS App逆向的内容,需要购买设备和全套学习课程的可以私信vx:r0ysue 来下单。 |
CopyRight 2018-2019 实验室设备网 版权所有 |