美文网首页
iOS逆向 - 10.2.1越狱环境搭配

iOS逆向 - 10.2.1越狱环境搭配

作者: 大王叫我来巡山_Cong | 来源:发表于2018-06-15 12:51 被阅读83次
    越狱.jpg

    越狱(Jailbreaking)是什么?

    • 用于获取苹果公司便携装置操作系统 iOS 最高权限的一种技术手段,用户使用这种技术及软件可以获取到 iOS 的最高权限,甚至可能可以进一步解开运营商对手机网络的限制。

    • 用途

      • 解除 iOS 上的限制,安装 App Store 以外以及未经 Apple 许可的社群软件以及自由软件,甚至自行编译软件。

      • 改装操作系统

      • 使用命令行 shell 程序

      • 访问 root 内部的文件,可写入

      • 提取重要文件(如移植系统功能等需要破解提取文件)

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

    • 完美越狱不会因为手机的重启而导致越狱失败。

    • 不完美越狱是指 iOS 系统设备在越狱后,并没有完全破解了其操作系统的权限;有部分信息或功能应用不佳;比如;关机以后必须去连接越狱软件来引导开机;或者重启会导致越狱的失效;这样的越狱称为“不完美越狱”。

    iOS 10.2.1 的不完美越狱

    • 爱思助手一键越狱。

    • 或者使用 Impactor + saigon。

    • 一次越狱不成功就多试几次。

    越狱后的环境搭建

    • 手机越狱过程中,会安装一个叫做 Cydia 的软件。相当于越狱后的 App Store。

    • 想在电脑上登录越狱设备,需要配置 SSH 远程登录。

      SSH 是一种网络协议,用于计算机之间的加密登录,它有多种实现方式,根据 iOS 系统的版本要做不同的版本设置。

      iOS 8 和 iOS 9 的越狱设备可以通过安装 OpenSSH来登录访问。

      iOS 10 的系统有一个相对轻量级的 SSH 服务 dropbear,直接使用。

      这里就只说 dropbear 的配置。

      • 连接默认密码是 alpine。

      • 首先,在 Cydia 中安装 MTerminal 和 adv-cmds ,在 MTerminal 执行 ps aux | grep dropbear 命令。(USB 连接)

      • 如果想在 Mac 上直接 SSH 登录,需要添加以下命令
        /usr/local/bin/dropbear -F -R -p 22

        在 Mac 上直接 SSH 登录

        ssh root@设备的 ip 地址(同一网络环境下)

      • USB 登录设备

        WiFi 情况下登录,如果网络不稳定,输入命令时会出现卡顿,这里提供一种通过 USB 端口转发的方法登录,保证连接的稳定和流畅。

        brew install libimobiledevice
        iproxy 10010 22 (不要关闭)
        ssh root@localhost -p 10010 (这个是另起一个终端输入)

        如果觉得麻烦,可以建立一个 .sh 文件来快捷登录

      • 用户角色

        zzz$ (mobile):操作普通文件,不能操作系统文件。

        root# (root):系统中权限最高的用户,对系统文件具有完全控制权。

    • Mac 需要装的软件

    • iOS 需要装的插件(Cydia 中安装)

      • iFile (文件管理器)

      • Apple File Conduit "2"(安装了就能在 iFunBox 中查看系统文件)

      • Appsync (直接修改一个应用的结构或文件会破解应用本身的签名信息,安装修改后应用会出现 “Failed to verify code signature of XXX” 错误,按安装了appsync,让系统不再检验应用的签名)

      • scp (iOS 10后没有 scp 这个工具了,如果想用,就通过 iFunBox 把源码复制到设备的 /usr/bin/ 目录下)
        链接: https://pan.baidu.com/s/1cxalD6geBgceDpEjOpBAbQ 密码: 4q7j

        然后设备中输入以下命令

        因为要更改权限,所以要在 root 用户下执行
        cd /usr/bin/
        ldid -S scp
        chmod 777 scp
    

    越狱设备的文件系统目录

    • Applications

      存放所有的系统 App 和来自 Cydia 的 App,不包括从 App Store 下载的 App。

    • Developer

      供开发者使用。

    • Library

      系统资源,用户设置。例如,Logs 是系统日志,Ringtones 是系统自带铃声,Launch Daemons 是启动 daemon 程序。其中比较重要的目录是 /Library/MobileSubstrate,里面存放了所有基于 Cydia Substrate 的插件(需要在 Cydia 中安装 Cydia Substrate)。

    • System

      • /System/Library/Carrier Bundles

        里面是运营商的一些配置。

      • /System/Library/Frameworks 和 /System/Library/PrivateFrameworks

        里面是系统中各种公开和未公开的 Framework。

      • /System/Library/CoreServices/SpringBoard.app

        桌面管理器,是用户和系统直接交互的部分。

      • /System/Library/PerferenceBundles

        里面存放的是系统设置中的一些设置项。

    • User

      用户目录,实际指向 /var/mobile 。

      • /User/Media/

        里面存放的是相册等。

      • /User/Library/

        里面存放的是短信、邮件等。

    • bin

      存放用户二进制文件,例如 mv 、ls 等。

    • dev

      设备文件。每个设备在 /dev 目录下都有一个对应的文件(节点)。

    • etc

      存放系统脚本、hosts 配置、SSH 配置文件等,实际指向 /private/etc。

    • sbin

      存放系统级二进制文件,例如 reboot 、mount 等。

    • usr

      用户工具和程序

      • /usr/include 中存放标准 C 头文件。

      • /usr/lib 中存放库文件。

    • var

      一些经常改动的文件,包括 keychains 、临时文件、从 App Store 下载的应用。

    其中遇到的问题

    安装 Apple File Conduit "2" 的时候报错

    subprocess pre-installation script returned error exit status 1

    sub-process/usr/libexec/cydia/cydo returned anerror code(1)

    如图:


    错误的图片.png

    解决方法
    使用 iFile 然后去 private -> etc -> hosts 修改名字就行了。

    感谢您的阅读,有什么错误请留言,看到了第一时间回复。

    此内容部分借鉴 iOS应用逆向与安全(有兴趣的同学可以上天猫搜索购买)。

    加入我们 一同进步.png

    相关文章

      网友评论

          本文标题:iOS逆向 - 10.2.1越狱环境搭配

          本文链接:https://www.haomeiwen.com/subject/wxzpeftx.html