越狱环境的搭建

调试设备

iphone 6s plus,建议至少iPhone5S(因为从5S开始支持arm64架构),或者至少是iPad Air,iPad mini2等支持arm64架构的设备

设备环境要求

iOS9.1完美越狱,建议至少iOS8 完美越狱,版本也不能太高,要保证能够完美越狱

检查手机是否可以越狱:http://jailbreak.25pp.com/ios

iOS Jailbreak(iOS越狱)

什么是iOS Jailbreak? 利用iOS系统的漏洞,获取iOS系统的最高权限(Root),解开之前的各种限制;

Jailbreak 的优点

打造个性化,与众不同的iPhoe

自由安装各种实用的插件,主题,APP;

修改系统APP的一些默认行为

自由安装非AppStore来源的APP

付费APP秒变免费APP

未越狱iphone安装APP的途径(1.AppStore;2.真机调试;3.通过证书打包签名ipa安装)

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

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

Jailbreak的缺点

不予保修;

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

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

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

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

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

完美越狱和不完美越狱

完美越狱

越狱后的iPhone可以正常关机和重启

不完美越狱

iPhone一旦关机后再开机时,屏幕就会一直停留在启动画面,也就是白苹果状态;

或者也能正常开机,但已经安装的破解软件都无法正常使用,需要将设备与PC连接后,使用软件进行引导才能使用

一般来说,在苹果发布新的iOS固件后,针对该固件的不完美越狱会先发布,随后完美越狱才能发布

一般较新的系统版本,均为不完美越狱

越狱方法推荐

PP助手:http://jailbreak.25pp.com/

如何判断是否越狱成功?

1.桌面是否有Cydia


cydia

2.工具判断(比如PP助手)


pp助手

可以在Cydia中安装各种第三方的软件(插件,补丁,App)

Cydia安装软件的步骤
1.添加软件源(不同软件的软件源可能不同)

添加软件源

2.进入软件源找到对应的软件,开始安装

安装软件

SpringBoard

有时候通过Cydia安装插件后,可能会出现以下界面

iOS桌面

Apple File Conduit "2"

Apple File Conduit "2"补丁的作用,可以访问整个iOS设备的文件系统,类似的补丁还有:afc2,afc2add

apple file conduit “2”

软件源

http://apt.saurik.com

http://apt.25pp.com

软件源


AppSync Unified

appsync unified

iFile

iFile

PP助手

pp助手

Mac必备

mac必备

安装流程顺序图


流程图

安装包

通常情况下,通过Cydia安装的安装包是deb格式的(结合软件包管理工具apt)

通过PP助手安装的安装包都是ipa格式的

如果通过Cydia源安装的deb失败的话:

cydia安装失败

可以通过晚上下载deb格式的安装包,然后将deb安装包放到/var/root/Media/AutoInstall,之后重启手机,Cydia就会自动安装deb;

如下图是iFile-2.2.0-1所需的deb安装包

iFile deb包

如何在iOS代码中判断设备是否越狱

判断越狱设备

Mac远程登录到iPhone

iOS和Mac,OSX都是基于Darwin,所以iOS中同样支持终端的命令行操作,我们经常在Mac的终端上,通过敲一些命令行来完成一些操作,为了能够让Mac终端中的命令行能作用在iPhone上,我们得上Mac和iPhone建立连接,通过Mac远程登录到的iPhone的方式建立连接


mac远程iPhone

SSH-OpenSSH

SSH:Secure Shell的缩写,意为安全外壳协议,是一种可以为远程登录提供安全保证的协议,使用SSH,可以把所有传输的数据进行加密,中间人攻击方式就不能实现,能防止DNS欺骗和IP欺骗

ssh

OpenSSH

是SSH协议的免费开源实现,可以通过OpenSSH的方式让Mac远程登录的iPhone

使用OpenSSH远程登录

OpenSSH

登录步骤

SSH是通过TCP协议通信,所以要确保Mac和iPhone在同一个局域网下,比如连接着同一个WIFI,在Mac的终端输入ssh账户名@服务器地址,这里的服务器指的是手机,初始密码是alpine,登录成功后就可以使用终端命令操作iPhone,退出登录命令是exit

命令行登录

登录上去之后,最好修改一下root的登录密码,修改登录密码可以使用passwd 命令行执行

SSL和OpenSSL阐述

SSL:Secure Sockets Layer的缩写,是为网络通信提供安全及数据完整性的一种安全协议,在传输层对网络连接进行加密

OpenSSL:SSL的开源实现,绝大部分HTTPS请求等价于:HTTP+OpenSSL,OpenSSH的加密就是通过OpenSSL完成的

SSH的版本

SSH协议一共2个版本:SSH-1和SSH-2,现在用得比较多的是SSH-2,客户端和服务端版本需要保持一致才能通信

查看SSH版本(查看配置文件的Protocol的字段)

客户端:/etc/ssh/ssh_config

服务端:/etc/ssh/sshd_config

SSH的通信过程

三大阶段:

1.建立安全连接;

服务器提供身份证明
RSA key

如果客户端并无服务器端的公钥信息,就会询问是否连接此服务器

如果在建立安全连接过程中,出现了以下错误信息:

服务器身份证信息发生变更

这个时候,只需要删除掉之前服务器的公钥信息就行,命令行操作是:

ssh-keygen-R 服务器ip地址,也可以直接打开known_hosts 文件删除服务器的公钥信息(vim ~/.ssh/know_hosts)

2.客户端认证;

SSH-2提供了2种常用的客户端认证方式

基于密码的客户端认证(使用账号和密码即可认证)

基于密钥的客户端认证(免密码认证,最安全的一种认证方式)

密钥认证

首先在客户端生成一对关联的密钥(Key Pair):一个公钥(Public Key),一个私钥(Private Key)

ssh-keygen

一路下去回车键即可,

生成的公钥:~/.ssh/id_rsa.pub;

生成的私钥:~/.ssh/id_rsa

然后把客户端的公钥内容追加到服务器的授权文件(~/.ssh/authorized_keys)尾部

ssh-copy-id root@服务器主机地址

需要输入root用户的登录密码

ssh-copy-id会将客户端~/.ssh/id_rsa.pub的内容自动追加到服务器的~/.ssh/authorized_keys尾部

追加授权文件,可以使用ssh-copy-id将客户端公钥的内容自动追加到服务器的授权文件尾部,也可以手动操作;

复制客户端的公钥到服务器某路径

scp ~/.ssh/id_rsa.pub root@服务器主机地址:~

scp是secure copy的缩写,是基于SSH登录进行安全的远程文件拷贝命令,把一个文件copy到远程另外一台主机上

上面的命令行将客户端的~/.ssh/id_rsa.pub拷贝到了服务器的~地址

SSH登录服务器

ssh root@服务器主机地址

需要输入root用户的登录密码

在服务器创建.ssh文件夹

mkdir .ssh

追加公钥内容到授权文件尾部

cat ~/id_rsa.pub >> ~/.ssh/authorized_keys

删除公钥

rm ~/id_rsa.pub

SSH-2 默认会优先尝试秘钥认证,如果认证失败,才会尝试密码认证
3.数据传输;

注意:如果配置了免密码登录后,还需要输入密码,需要在服务器端设置文件权限:

chmod 755 ~

chmod 755 ~/.ssh

chmod 644 ~/.ssh/authorized_keys

22端口

端口就是设备对外提供服务的窗口,每个端口都有个端口号(范围是0~65535,共2^16个),有些端口是保留的,已经规定了用途,比如21端口提供FTP服务,80端口提供HTTP服务,22端口提供SSH服务(可以查看/etc/ssh/sshd_config的Port字段),如需知道更多,请自行查询资料

端口

通过USB进行SSH登录

usb

usbmuxd的使用

下载usbmuxd工具包(下载v1.0.8版本,主要用到里面的一个python脚本:tcprelay.py)

https://cgit.sukimashita.com/usbmuxd.git/snapshot/usbmuxd-1.0.8.tar.gz

将iPhone的22端口(SSH端口)映射到Mac本地的10010端口

cd ~/Documents/usbmuxd-1.0.8/python-client

python tcprelay.py -t 22:10010

加上-t参数是为了能够同时支持多个SSH连接

注意:要想保持端口映射状态,不能终止此命令行(如果要执行其他终端命令行,请新开一个终端界面)

不一定非要10010端口,只要不是保留端口就行

端口映射完毕后,以后如果想跟iPhone的22端口通信,直接跟Mac本地的10010端口通信就可以了

新开一个终端界面,SSH登录到Mac本地的10010端口(以下方式2选1)

ssh root@localhost -p 10010

ssh root@127.0.0.1 -p 10010

localhost是一个域名,指向的IP地址是127.0.0.1,本机虚拟网卡的IP地址

usbmuxd会将Mac本地10010端口的TCP协议数据,通过USB连接转发到iPhone的22端口

远程拷贝文件也可以直接跟Mac本地的10010端口通信

scp -P 10010 ~/Desktop/1.txt root@localhost:~/test

将Mac上的~/Desktop/1.txt文件,拷贝到iPhone上的~/test路径

注意:scp的端口号参数是大写的-P

iOS终端的中文乱码问题

默认情况下,iOS终端不支持中文输入和显示

解决方案:新建一个~/.inputrc文件,文件内容是

不将中文字符转化为转义序列

set convert-meta off

允许向终端输出中文

set output-meta on

允许向终端输入中文

set meta-flag on

set input-meta on

如果是想在终端编辑文件内容,可以通过Cydia安装一个vim(软件源http://apt.saurik.com)

Vi

设置ssh别名

在mac上面操作

cd .ssh

vim config

在config中输入 Host test HostName 192.168.39.168 User root Port 10010 #这个是iproxy 转发的端口 IdentityFile ~/.ssh/id_rsa.pub

登录:ssh test 就可以了登录了

脚本Shell

login
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,686评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,668评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,160评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,736评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,847评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,043评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,129评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,872评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,318评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,645评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,777评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,470评论 4 333
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,126评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,861评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,095评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,589评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,687评论 2 351

推荐阅读更多精彩内容