越獄各種不完美,所以補刀都需要自己補,不,所以修補都需要自己補
無法下載的各種插件可以在這個網(wǎng)站上下載:
https://www.ios-repo-updates.com/repository/electra-s-ios-utilities/package/org.coolstar.tweakinject/
Google搜出一段英文:
The bottom line is, the Substrate Compatibility Layer package tries to make /Library/MobileSubstrate/DynamicLibraries as a symlink to ../../usr/lib/TweakInject ie. /usr/lib/TweakInject. So if you have that /Library/MobileSubstrate/DynamicLibraries folder there already, the package cannot overwrite it, and we face this problem. Need to move everything from DynamicLibraries/ into /usr/lib/TweakInject/, remove the DynamicLibraries, and re-create it as a symlink to /usr/lib/TweakInject.
說的很清楚,就是沒有轉(zhuǎn)換成代碼很容易讓人抓瞎,而且還有之前部分回答的示例:
mv /Library/TweakInject /Library/TweakInject.bak && ln -s /Library/MobileSubstrate/DynamicLibraries /Library/TweakInject
這個方法 不適用 Electra iOS11.4,是錯的,不要用~~
這里對ln做一些知識補充:
具體用法是:ln -s 源文件 目標(biāo)文件。
當(dāng) 我們需要在不同的目錄,用到相同的文件時,我們不需要在每一個需要的目錄下都放一個必須相同的文件,我們只要在某個固定的目錄,放上該文件,然后在其它的 目錄下用ln命令鏈接(link)它就可以,不必重復(fù)的占用磁盤空間。例如:ln -s /bin/less /usr/local/bin/less
-s 是代號(symbolic)的意思。
這 里有兩點要注意:第一,ln命令會保持每一處鏈接文件的同步性,也就是說,不論你改動了哪一處,其它的文件都會發(fā)生相同的變化;第二,ln的鏈接又軟鏈接 和硬鏈接兩種,軟鏈接就是ln -s ** **,它只會在你選定的位置上生成一個文件的鏡像,不會占用磁盤空間,硬鏈接ln ** **,沒有參數(shù)-s, 它會在你選定的位置上生成一個和源文件大小相同的文件,無論是軟鏈接還是硬鏈接,文件都保持同步變化。
TweakInject成功的樣子:
TweakInject: Loading for binary XXX
Injecting /Library/TweakInject/XXX.dylib
因為沒有突破沙盒權(quán)限,但是TweakInject又是在Library目錄下尋找的,所以你需要把沙盒之外的地方放置的dylib鏈接到Library目錄下,它這樣找的時候就能通過軟鏈接在沙盒限之外找到它所需要的文件:(確保你把xxx.dylib已放在/usr/lib/TweakInject目錄下)
ln -s /usr/lib/TweakInject /Library/TweakInject
這個時候查看結(jié)果是這樣的:
ls -l /Library/TweakInject
output: lrwxr-xr-x 1 root admin 20 Nov 12 18:32 /Library/TweakInject -> /usr/lib/TweakInject
當(dāng)然安裝之后dylib本身在 /Library/MobileSubstrate/DynamicLibraries目錄下,這個要把這個目錄先刪除再通過鏈接的方式創(chuàng)建
rm -r /Library/MobileSubstrate/DynamicLibraries
ln -s /usr/lib/TweakInject /Library/MobileSubstrate/DynamicLibraries
查看Dynamics的結(jié)果也是一樣的:
iPhone5:/Library/MobileSubstrate root# ls -l DynamicLibraries
lrwxr-xr-x 1 root wheel 20 Nov 12 18:09 DynamicLibraries -> /usr/lib/TweakInject