在5s上如何越狱、砸壳、导出所有头文件,以及遇到的问题

0.037字数 868阅读 82

环境 5s iOS10.3.1系统

iOS10.3.1只能不完美越狱,也就是每次重启后得重新越狱一下,但步骤很简单,公司正好有此测试机也就没买其他设备,当然8系统最好

1.下载熊猫助手,safari打开http://m.pandahelp.vip/regular

2.在通用里信任描述文件,这里也不在啰嗦

3.在助手里搜索g0blin RC2然后安装

4.点击jailbreak一键越狱,重启后如果显示jailbroke yo则代表越狱成功(第一个百分比小于60%点击成功率更高,不成功就多试几次)

5.如遇cydia无网络连接,可以手机下载pp助手,然后在里面搜索乐网app,打开全局拦截,cydia即可联网使用

6.如果不想通过pp助手管理文件,则忽略此步骤,添加pp助手源,然后安装此源下 Apple File Conduit 2插件来解锁系统文件(每次重启后再次越狱都需要重新安装一下此插件)

详细教程地址 http://tieba.baidu.com/p/5546052733

然后准备开始ssh连接,这时候问题就来了,ssh怎么也是连接不上,研究了一天才找到解决方法

在10.3.1系统下越狱后自带dropbear插件,也是简单的ssh连接,但是由于官方dropbear一bug,导致电脑无法通过ssh连接手机,所以只能按照其他人的dropbear

1.先卸载dropbear,openssh,openssl插件

2.添加插件源 http://cydia.ichitaso.com/test

3.然后安装此源下的dropbear

4.搜索并安装openssh 然后重启手机,再次越狱,然后进行ssh连接即可,以后每次重启手机也就是重新越狱一次即可啥也不用做了

然后就可以正常愉快的连接ssh了

连接方法:

保持手机电脑同一局域网,查看手机wifi IP地址,密码默认为alpine 可以修改,手机默认有两个账户root,mobile密码都是alpine

ssh root@192.168.0.106

(https://upload-images.jianshu.io/upload_images/6866634-b223669f26600b17.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

ps -e 查看所有进程 拿到进程id 或者进程名字

image

上图即可拿到进程的目录,用于砸壳使用

1.Clutch砸壳

clutch.png
clutch2.png

2.dumpdecrypted砸壳

dumpdecrypted.png
dumpdecrypted2.png
DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib   可执行文件路径
  • 完成之后会在 当前目录生成砸壳后的文件

在iOS10上会报错 Abort trap 6

直接 google 报错信息
google iOS10 dumpdecrypted
在搜索到的内容中筛选信息得出猜测
应该是dumpdecrypted.dylib未签名
解决方案使用 ldid 工具的 ldid -S dumpdecrypted.dylib 命令给 dumpdecrypted.dylib 签名

得到砸壳后的可执行文件使用scp拷贝到电脑上,或者用pp助手等工具拷贝到电脑上

使用class-dump导出所有头文件 ,下载地址 http://stevenygard.com/projects/class-dump/

下载之后将class-dump文件拷贝到/usr/local/bin/目录里,这样以后使用就可以直接用class-dump命令,后面跟上参数

如果执行失败对class-dump添加执行权限

chmod +x /usr/local/bin/class-dump文件
  • 开始导出头文件
class-dump 可执行文件目录 -sSH -o 输出目录

头文件里的方法列表含有.m文件里的方法和变量和属性,只是看不到实现而已,具体实现会在以后的文章里讲到

附上class-dump参数说明

Usage: class-dump [options] 

where options are:
  -a show instance variable offsets
  -A show implementation addresses
  --arch  choose a specific architecture from a universal binary (ppc, ppc64, i386, x86_64, armv6, armv7, armv7s, arm64)
  -C  only display classes matching regular expression
  -f  find string in method name
  -H generate header files in current directory, or directory specified with -o
  -I sort classes, categories, and protocols by inheritance (overrides -s)
  -o 
 output directory used for -H
  -r recursively expand frameworks and fixed VM shared libraries
  -s sort classes and categories by name
  -S sort methods by name
  -t suppress header in output, for testing
  --list-arches list the arches in the file, then exit
  --sdk-ios specify iOS SDK version (will look in /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk
  --sdk-mac specify Mac OS X version (will look in /Developer/SDKs/MacOSX.sdk
  --sdk-root specify the full SDK root path (or use --sdk-ios/--sdk-mac for a shortcut)

推荐阅读更多精彩内容