dumpdecrypted.dylib安装及使用

2020-03-01  本文已影响0人  村口大白杨
1、下载dumpdecrypted

下载地址:https://github.com/stefanesser/dumpdecrypted

2、打开终端,执行make命令(要cd到下载好的dumpdecrypted.c所在文件夹),将dumpdecrypted.c编译成dumpdecrypted.dylib动态库
cd /Users/xxx/Downloads/dumpdecrypted-master
make
3、执行codesign命令为dumpdecrypted.dylib签名(可随意选择一个有效证书)
security find-identity -v -p codesigning
终端打印信息:钥匙串中安装的证书
codesign --force --verify --verbose --sign "iPhone Developer: Reck Wang (8GXXXXXXXG)" dumpdecrypted.dylib
终端打印信息:签名成功
4、把签名后的dumpdecrypted.dylib拷贝到我们iPhone的/var/root路径下(如果是root用户,建议放/var/root目录)
5、终端进入dumpdecrypted.dylib所在的目录,使用环境变量DYLD_INSERT_LIBRARIESdumpdecrypted.dylib注入到需要脱壳的可执行文件(可执行文件路径可以通过ps -A查看获取)
DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib 可执行文件路径

/var/root路径下的.decrypted文件就是脱壳后的可执行文件

iFunBox
使用otool -l查看是否脱壳成功,cryptid = 0脱壳成功:
可能会遇到的问题:
~ root# DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib /var/containers/Bundle/Application/58A37639-F5A4-41FE-B975-F3E11B11B360/ting.app/ting
dyld: could not load inserted library 'dumpdecrypted.dylib' because no suitable image found.  Did find:
    dumpdecrypted.dylib: required code signature missing for 'dumpdecrypted.dylib'
Abort trap: 6

解决办法:
错误是由于dumpdecrypted.dylib未签名导致,需要执行以下命令:

security find-identity -v -p codesigning
codesign --force --verify --verbose --sign "iPhone Developer: Reck Wang (8GXXXXXXXG)" dumpdecrypted.dylib
~ root# DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib /var/containers/Bundle/Application/58A37639-F5A4-41FE-B975-F3E11B11B360/ting.app/ting
dyld: Symbol not found: ___chkstk_darwin
  Referenced from: dumpdecrypted.dylib
  Expected in: /usr/lib/libSystem.B.dylib
 in dumpdecrypted.dylib
Segmentation fault: 11

解决办法:
原因是Xcode SDK版本与越狱手机 iOS SDK 版本不一致(我的越狱手机版本是iOS10.0.2,本机的Xcode版本是Xcode 11)。 此时我们需要下载一个老版本的Xcode9者Xcode10。然后打开终端执行如下命令(我的Xcode10是放在桌面的):

sudo xcode-select -s /Users/xxx/Desktop/Xcode10.app/Contents/Developer

然后cddumpdecrypted所在目录,删除原来生成的dumpdecrypted.dylibdumpdecrypted.o文件,重新执行make命令。

上一篇 下一篇

猜你喜欢

热点阅读