使用可以otool
來檢視,otool -l 二進位制檔案路徑 | grep -b 2 crypt
cmd lc_encryption_info
cmdsize 20
cryptoff 16384
cryptsize 49463296
cryptid 1
— cmd lc_encryption_info_64
cmdsize 24
cryptoff 16384
cryptsize 53149696
cryptid 1
複製**
確保iphone和mac在同乙個網段,我的iphone的ip位址為192.168.1.22.openssh的root密碼預設為alpine
。
$ ssh [email protected]
dankal-device-5s:~root#
複製**
這個時候已經順利獲取了iphone的root許可權,root相當於windows中的管理員,許可權最高,可讀寫。
ssh相關的問題請看之前寫過的「ios10.2 ssh連線越獄裝置」,這裡就不多闡述。
dankal-device-5s:~root#ps -e
pid tty time cmd
1 ?? 0:26.19 / sbin / launchd
21 ?? 0:01.77 / usr / sbin / syslogd
42 ?? 0:17.65 / usr / libexec / logd
44 ?? 0:00.08 /system/library/privateframeworks/mobilesoftwareupdate.framework/support/softwareupdated
......
1391 ?? ?? 0:00.17 / usr / local / bin / dropbear -f -r -p 22
1392 ttys000 0:00.04 -sh
1401 ttys000 0:00.01 ps -e
1020 ttys001 0:00.02 login -fp mobile
1021 ttys001 0:00.06 -sh
複製**
dankal-device- 5 s: ~root #cygcript - p 1190
cy#複製**
通過cycript與程序互動動態獲取應用的沙盒路徑,輸入以下任一行**。
複製**
出來顯示的字串即為沙盒品路徑。
$ cd / users / bingo / downloads / dumpdecrypted-master
$ make
`xcrun --sdk iphoneos - find gcc` -os -wimplicit -isysroot`xcrun --sdk iphoneos --show-sdk-path` -f`xcrun --sdk iphoneos --show-sdk-path` / system /庫/框架-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 /庫/框架-f`xcrun --sdk iphoneos --show-sdk-path` / system / library / privateframeworks -arch armv7 -arch armv7s -arch arm64 -dynamiclib - o dumpdecrypted.dylib dumpdecrypted。ø
複製**
結束後會在當前目錄中生成dumpdecrypted.dylib,這裡有坑,下面會說。
scp拷貝貝檔案到越獄裝置的沙盒路徑下,沙盒目錄剛剛用cycript動態獲取到了,如果裝置不支援scp或者出現問題,可以參考「讓越獄裝置支援scp檔案傳輸」,或者使用itools等工具實現檔案傳輸,在此不再闡述。
dumpdecrypted.dylib 100%193kb 242.3kb / s 00:00
複製**
開始敲殼 以上都是準備工作,接下來可以正式砸殼了。
dumpdecrypted.dylib的具體用法是:dyld_insert_libraries=to/path/dumpdecrypted.dylib to/bundlepath
dankal-裝置- 5個s: 〜根#cd的/ var /移動/容器/資料/應用/ e2abb23b-ec66- 4 da4-ad3e-e14e20d680b5 /檔案
dyld:無法載入插入的庫'dumpdecrypted.dylib',因為找不到合適的影象。沒有找到:
dumpdecrypted.dyli b:所需的**簽名丟失了 「dumpdecrypted.dylib」
中止陷阱:6
複製**
很明顯砸殼失敗了,這跟說好的不一樣!為什麼別人砸殼成功了,而我卻砸失敗了?重複試了幾次都不成功。
於是開始找問題,首先懷疑我的裝置的cpu架構不對,開啟itools可以明顯看到是iphone 5s,arm64,已越獄,沒毛病,如果是32位處理器的話應該是越獄不成功的。
再找問題,懷疑是yalu02越獄的時候出了問題,重啟再越獄了一遍,還是一樣的問題。
繼續尋找,裝置不支援嗎?網上搜尋「iphone5s砸殼失敗」,很失望,沒有相關的資料,搜到的全是真的手機殼的相關問題。
dumpdecrypted對系統ios 9.3.2以上的版本砸殼失敗,會報錯killed: 9
,解決方案
masbog拷貝最新的dumpdecrypted.dylib到裝置上的也許一些使用者需要最新的.dylib與ios 10.2 sdk ... masbog.com/dumpdecrypt…和一些ios 10.2教程:擁抱:
/usr/lib
下
$ scp dumpdecrypted.dylib [email protected]:/ usr / lib
dumpdecrypted.dylib 100%193kb 410.8kb / s 00:00
複製**
ios 10+:
dankal-device- 5 s: ldid -s /usr/lib/dumpdecrypted.dylib
複製**
最終一砸
馬赫ø解密自卸車
[+] 在記憶體中檢測到64位arm二進位制檔案。
找到[+]偏移到 cryptid :@ 0 x1000a0ca8(從0 x1000a0000)= ca8
[+]在位址00004000處找到長度為53149696位元組的加密資料- 型別 1。
[+]閱讀標題
[+]檢測標題型別
[+]可執行是 乙個 fat影象-搜尋為 右架構
[+]正確拱是在偏移58195968中檔案
[+]開放wechat.decrypted 用於寫入。
[+]複製檔案的未加密開頭
[+]將解密的資料轉儲到檔案中
[+]複製未加密的檔案剩餘部分
[+] 在偏移3780 ca8 處將lc_encryption_info-> cryptid設定為 0
[+]關閉原始檔案
[+]關閉轉儲檔案
dankal-裝置- 5個s:的/ var /移動/容器/資料/應用/ e2abb23b-ec66- 4 da4-ad3e-e14e20d680b5 /檔案根#
複製**
檢視成果 砸殼完畢,會自動在當前目錄生成砸殼後的二進位制檔案wechat.decrypted
$ ls
00000000000000000000000000000000 ksid mmresourcemgr safemode.dat db.globalconfig
複製**
https: iOS逆向之砸殼和匯出IPA包
越獄iphone iphone 越獄iphone 使用cydia 搜尋 openssh,安裝即可 iphone 在越獄iphone上安裝frida,cydia搜尋安裝即可 電腦 終端cd 到目錄下,執行sudo pip install r requirements.txt upgradecd電腦 越...
著名黑客 還想越獄就不要公升級到iOS 10 2
越獄對於 ios 10 來說還是一片空白,目前儘管網上流傳著一系列 ios 10 的越獄 但對於越獄工具的發布日期一直都沒有確切的訊息。說到越獄最新的 ios 系統,著名的 ios 黑客 luca todesco 無疑有一定的發言權,此人多次在網上發布越獄成功的 但由於一直沒有發布越獄工具,他也多次...
iOS 減少ipa包的大小
1 捨棄架構armv7 valid archs arm64 arm64e armv7s 2 配置編譯選項 generate debug symbols release 設定為no 3 編譯器級別優化 optimization level release 設定為fastest,smallest os ...