使用dumpdecrypted
通过DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib
命令进行脱壳时,出现了dyld: Symbol not found: ___chkstk_darwin Referenced from: dumpdecrypted.dylib Expected in: /usr/lib/libSystem.B.dylib in dumpdecrypted.dylib
错误
原因是
Xcode SDK
版本要与越狱手机 iOS SDK
版本一致(我使用的越狱手机版本是iOS 9.1
、本机的Xcode
版本是Xcode 11
)。
此时我们需要下载一个老版本的Xcode9
者Xcode10
。然后打开终端执行如下命令sudo xcode-select -s /Users/xxx/Desktop/Xcode_9.4.1.app/Contents/Developer
(我的Xcode_9.4.1
是放在桌面的)。
然后cd
到dumpdecrypted
所在目录
删除原来生成的
dumpdecrypted.dylib
和dumpdecrypted.o
文件,然后执行make
命令此时生成了新的
dumpdecrypted.dylib
库文件,将新生成的库文件添加到手机的/var/root
目录下。
然后我们再次通过DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib
命令进行脱壳
脱壳成功!
ting.decrypted
就是脱壳以后的文件。最后别忘记了切换回原来的
Xcode
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer