美文网首页iOS开发之常用技术点
越狱环境搭建、连接流程分析

越狱环境搭建、连接流程分析

作者: 目前运行时 | 来源:发表于2018-09-30 11:31 被阅读14次

越狱和非越狱的区别

1.越狱的手机打开了一些系统的限制,你可以自由修改类似于主题啊、导航栏等等的。
2.越狱的手机安全性相对于要低一些,因为他可以安装插件什么的、这些插件可以修改某些app的沙河文件,但是一般不随便安装乱七八糟的插件不会出现这个问题。
3.越狱后的手机耗电会有所增加因为他会有一些常驻线程什么的
4.越狱后的手机可以装插件什么的 判断手机是否越狱的标志就是手机桌面上是否会有C
ydia,有这个东西就说越狱了。

完美越狱和不完美越狱

1.完美越狱:是指手机重启后一切的功能还正常,比如cydia什么的。
2.不完美越狱:是指手机重启后,越狱安装的功能都不正常了,比如cydia什么的,还有安装的一些助手什么的都会crash。

手机怎么越狱

1.我们可以先进去这个网站来查询一下我们当前的手机是否可以越狱,以及是否可以完美的越狱,网站如下:http://jailbreak.25pp.com/ios

image.png
我想说的是现在针对的是pp助手的,pp助手有mac版本的,但是我写简书的时间我手机的手机正好是10.2.1的我查了一下不能越狱这可怎么办,我当时就想去闲鱼上买一个吧,我看了一下最便宜的是200到400,不要买5因为从5s才开始支持arm64架构,后来我想算了这钱不是买不起,是舍不得妈的怎么办?后来我查了一些资料,我知道了有个爱思助手是可以一键越狱的而且支持在ios12以下,但是我又查了一下妈的没有mac版本的怎么办?哎 装一个虚拟机把,如果你当前的系统已经做了分区可以运行windows那么可以运行忽略我下面要说的 你直接装一个爱思助手就行了,我没有做分区来装windows我是装了一个虚拟机,他叫parallels,大致的样子大概长这样
image.png
装上他打开就进入了windows 我们下载一个爱思助手,那里边有个一键越狱,他让你干什么你就干什么就行,安装完成大概的样子就是这样的 手机界面
image.png
其中doubleH3lix是专门用来越狱的,打开这个软件点击按钮他会重启你就会越狱了,Cydia这个东西就相当于越狱后的appstore,你要添加必要的软件源,怎么添加源呢:更多软件源-》软件源-》点击又上角编辑-》点击左上角的添加,就会出现添加源的地址我们一般必须要输出的源有http://apt.25pp.com(也就是pp助手的源)
image.png
我们因为要做逆向我们需要装一些软件,大概装的软件步骤如下:
image.png
按照图来就能完美的解决
我们先确认我们必要添加那些源,大致如下:
image.png
我们要学习逆向 那么必须安装的软件或者插件有哪些呢?大致如下,建议最好按照顺讯进行安装:
image.png
其中mac上我们需要安装ifunbox和pp助手,其实如果你手机版本比较高还应该安装parallels和爱思助手(类似于pp助手),其中ifunbox是查看手机文件的,他相当于把手机当成了一个u盘,其实pp助手也能查看,自己看一下就知道了。ifunbox怎么查看iphone文件呢,大致是这样子的
image.png
iphone上装的插件或者软件有什么用呢?
其中apple file conduit “2” 是一个文件的补丁,如果不安装导致的后果是我们用ifunbox产看不到这个文件夹
image.png
这个文件夹很重要,接下来会说。其中appsync unified ,他的作用是可以绕过系统,随意的安装ipa包。还的装一个ifile 的app,他的作用类似于ifunbox,他是装在手机上的,可以通过手机查看手机文件,装这个app的时候本人遇到了很大的问题,首先,我在搜索看到显示不能安装
image.png
怎么办呢?
我们就得下载他的deb文件手动安装到我们的文件下,具体操作如下

第一步:


image.png

找到他的文件大致如下:


image.png
如果你老人家找不到或者下载不是这些个文件,建议你老人家给我要哈
第二部找到我们手机的文件安装到这个文件夹下:
image.png

但是如果你自己操作的话你会发现Media文件下没有Cydia文件夹,那怎么办,本人当时就是大胆的猜测,我就在那个文件下创建的Cydia/AutoInstall文件,把这些东西拖进去的,手机重启,我本来打算自己可以很高兴的会收到满意的结果,结果发现,我点什么都crash,当然除了DoubleH3lix 还有爱思加强版,我去当时哥们也蒙了,虽然桌面上出现了ifle但是都crash有什么用,淡定了一下,查了很多资料,无意间也许是上帝明明之中自有安排我点了一下DoubleH3lix,点击一下那里面的唯一的一个按钮,结果他重启了,在点Cydia什么的都正常了,后来我想在试试,我有关机重启了发现Cydia还是crash,我这回点击了DoubleH3lix那里面的唯一的一个按钮提示我失败,重启Cydia还是crash,wa这怎么办,当时都蒙了,后来我经过无数次的尝试,发现我等手机稍微凉了一下在点击DoubleH3lix那里面的唯一的一个按钮就会成功,我反复试了几次都是可以的。其实这一切的原因都是我们没有完美越狱的结果,所以你能完美越狱就完美越狱吧,如果不能完美越狱那就不要重启手机


image.png
他是回到手机桌面。(个人理解相当于windows的f5)
安装软件基本就是这些。

用mac电脑控制手机进行登录ssh

其中我们的iphone和mac都是基于unix开发的,所以我们的命令行工具对于iphone也同样的适用,其中iphone有一个root用户这个用户的权限是最高的,还有一个mobile的权限,这个权限不如root大,首先我们来登录一下(需要安装open ssh插件)
登录root的命令为:

ssh root@ip

解释:
1.其中的ssh我们这里理解为一个安全的链接防止我们在登录的时候一些其他的人篡改了我们的命令或者其他的
2.我们在做这个前题是最好我们的电脑和我们的手机链接同一个wifi,其中的ip为:


image.png
image.png

这种方式获得,开始链接,如果我们在终端中输入命令,会出现卡着一直不动的现象,这样解决:


image.png
本人亲自试过了,真实有效。
这时候他会在终端大致会出现这样的一段代码,问你选择yes/no,现在你不需要知道为什么选择yes和no 那就先选择yes,接下来输入密码,密码是什么?开始的都是alpine,大致如下:
image.png
输入之后我们会发现我们进入了root账户,我们cd../,切换到var文件下,我们可以通过touch 1.txt文件来创建文件夹,可以通过ifunbox看到我们创建成功了。
退出的命令是exit

登录mobile账户是一样的命令为:

ssh mobile@ip

其他的操作是一样的。
修改密码:如果我们在root账户下我们可以修改mobile的密码,也可以修改root用户的密码,命令如下:

// 在root用户下
修改root密码
passwd 
修改mobile用户
passwd mobile

连接过程分析

  • 先来查看一下ssh的版本
    ssh一般都是两个版本,我们的一般用的都是第二个版本
    怎么查看,我们先来查看一下我们mac端的:
    这里的mac上需要切换到我们的ssh文件夹
cd /etc/ssh

然后我们ls -l一下:

image.png

我们在执行

cat ssh_config

其中需要说明的是我们在客户端需要查看ssh_config,在服务端需要查看sshd_config,其中我们的mac相当于客户端,iphone相当于服务端
我们执行完命令可以看到:


image.png

同理服务器也是一样的只不过我们需要先登录root账户

  • 流程分析
    通信的过程大致分为三个阶段:
    建立安全连接 - 客户端确认 - 数据传输
    其中建立安全连接,服务端需要把公钥传递给客户端,客户端进行保留,下次再发进行验证,具体过程大致如下:


    image.png

    可以看到公钥是通过sha256算法进行生成的。
    我们现在的登录方式还是密码账号登录他是ssh一种登录的方式,其中ssh还有一种是免密码登录的方式,这种方式更加的安全,我们需要将客户端的公钥写进我们服务端,添加到授权文件的尾部。


    image.png
    我们怎么创建我们mac的公私钥如下:
    image.png
    我们按照上面的方式已经创建了客户端的公钥和私钥,并且把客户端的公钥的内容追加到服务器的授权文件上,我们查看服务端的授权文件
    image.png
    我们也可以用第二种办法,具体如下:
    image.png

    如果发现,我们设置免密登录过后还是需要输入密码,我们就要添加权限可能是权限不够


    image.png
    image.png
    值得说明的是删除文件的一些命令为:
    image.png
    注意点:我们在创建私钥或者公钥的时候,直接一路回车就可以了,我们在输入 ssh-keygen的时候会要求我们输入密码什么的 当时我就是输入了结果发现配置好了还是需要输入密码,当时弄了好久后来删除了公钥和私钥,重新生成才发现问题。
    题外话:怎样验证一定就不要密码了?
    1.在创建私钥和公钥的时候不要输入密码(一定切记)
    2.查看我们的本地的公钥id_rsa.pub和我们服务端的authorized_keys里面的内容是否一样,用cat命令进行查看。
    3.看我们客户端的known_hosts是否包含我们服务端的公钥,一般如果有的话会出现我们服务端的ip
    4.加权限,权限就是我上面说的那是三个chmod
    5.满足以上的条件就是一定不要密码,免密支付的

搭建本地服务器,通过本地搭建直接通过usb操作手机。

说明:我们现在虽然可以免密登录了,但是大家应该知道我们之前说过我们的手机和电脑是连在同一个wifi的情况下的,也就说我们现在的是通过wifi的模式连接iphone的,所以我们当网络不好的时候我们输入命令比较卡的原因就是如此。

端口

我来形象的比喻一下,端口就比如银行的柜台窗口,有的窗口是收款的有的端口是办卡的,我们的端口有2的16次方个,也就是(65535个),其中80端口是我们http的,22端口就是ssh的,更多端口查询(https://baike.baidu.com/item/%E7%AB%AF%E5%8F%A3%E5%8F%B7/10883658#4_3

image.png

通过usb进行登录

mac上有个usbmuxd(它会开机自动启动),可以将mac的数据传递到iphone上。他的位置在/System/Library/PrivateFrameworks/MobileDevice.framework/Resources/usbmuxd


image.png

usbmuxd的使用

1.下载他的资源包(https://cgit.sukimashita.com/usbmuxd.git/snapshot/usbmuxd-1.0.8.tar.gz),必须是1.0.8版本的,我们需要他里边的一个python的文件(tcprelay.py脚本),然后我们将iphone的22端口映射到我们本地的10010端口(我们这里用10010端口来进行展示,目前他没有被系统占用,你也可以用其他的),具体如下操作,用图片来展示

image.png
  1. 稍等一会我们可以登录我们本地的10010端口,我们就可以登录我们的手机


    image.png

    我已经成功的操作成功,如下:


    image.png

解决iphone不能创建中文文件等的问题

说明:正常情况下我们是不能创建中文文件的,一旦输入中文就会回退,介于这种情况我们用一些办法来进行修改。


image.png

按照这个步骤进行操作,但是你会发现还是不能创建,这时候你需要把你的终端退出 在重新进入就好了,测试结果


image.png
但是你发现展示出来的时候还是显示不了,这个我查找了很多的资料都没有解决这个问题,如果你解决了请告诉我一声。

用shell脚本文件执行

我们发现我们每次都需要写这个命令,我们其实可以创建两个shell脚本来进行展示,到时候我们直接执行我们的shell脚本就可以了,操作如下:


image.png

大家可以看到我写了两个脚本。其中一个叫usb.sh 另外一个叫 login.sh
其中usb.sh 如下:

image.png

其中login.sh 如下:


image.png

具体操作如下:
1.打开终端:source usb.sh
2.切换另外一个窗口。source login.sh
我们可以看到结果如下:


image.png

相关文章

网友评论

    本文标题:越狱环境搭建、连接流程分析

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