iOS逆向DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib注入解密時報錯
dyld: Symbol not found: ___chkstk_darwin
Referenced from: dumpdecrypted.dylib (which was built for iOS 14.4)
Expected in: /usr/lib/libSystem.B.dylib
in dumpdecrypted.dylib
Abort trap: 6
原因:
我用的XCode版本為Version 12.4對應(yīng)的手機系統(tǒng)版本為iOS14,而目前用的越獄手機的系統(tǒng)版本為V 12.4.9對應(yīng)的XCode版本應(yīng)該為Version10,
iOS14版本生成的dumpdecrypted.dylib不支持低版本的iOS12
解決方案:
下載一個XCode 版本為10,重新編譯dumpdecrypted.dylib,步驟如下:
1、下載一個XCode版本10.3
2、終端命令
sudo xcode-select -s /Users/USERName/Desktop/Xcode.app/Contents/Developer
3、刪除原來的dumpdecrypted.dylib和dumpdecrypted.o,重新生成dumpdecrypted.dylib
make
結(jié)果如下:
`xcrun --sdk iphoneos --find gcc` -Os -Wimplicit -isysroot `xcrun --sdk iphoneos --show-sdk-path` -F`xcrun --sdk iphoneos --show-sdk-path`/System/Library/Frameworks -F`xcrun --sdk iphoneos --show-sdk-path`/System/Library/PrivateFrameworks -arch armv7 -arch armv7s -arch arm64 -c -o dumpdecrypted.o dumpdecrypted.c
`xcrun --sdk iphoneos --find gcc` -Os -Wimplicit -isysroot `xcrun --sdk iphoneos --show-sdk-path` -F`xcrun --sdk iphoneos --show-sdk-path`/System/Library/Frameworks -F`xcrun --sdk iphoneos --show-sdk-path`/System/Library/PrivateFrameworks -arch armv7 -arch armv7s -arch arm64 -dynamiclib -o dumpdecrypted.dylib dumpdecrypted.o
4、重新用新生成的dumpdecrypted.dylib注入解密即可
5、最后恢復(fù)原來的XCode配置
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
最后總結(jié)即如下
//先下載低版本XCode后運行如下命令
sudo xcode-select -s /Users/Username/Desktop/Xcode.app/Contents/Developer
//重新編譯生成dumpdecrypted.dylib后,再恢復(fù)原來XCode配置
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer