IOS脫殼+反編譯

dumpdecryptedios砸殼

1.ios設備越獄使用愛思助手

2.打開Cydia搜索安裝OpenSSH,Cycript

3.下載dumpdecrypted

git clone https://github.com/stefanesser/dumpdecrypted.git  #git 下載源碼
sudo xcode-select --switch /Applications/Xcode.app
cd dumpdecrypted  #cd到dumpdecrypted目錄
make   #編譯

對 dumpecrypted.dylib 簽名

## 列出可簽名證書, 找到 mac 上面已經安裝的證書
security find-identity -v -p codesigning

#簽名
codesign --force --verify --verbose --sign "Apple Development: xxxxx(xxxxx)" dumpdecrypted.dylib

4.通過ssh鏈接Ios設備

ssh root@設備的ip地址     (這裏是一個🌰:ssh [email protected])
默認密碼是:alpine

5.Cycript安裝

http://www.cycript.org/ 安裝地址

1.解壓
2. mv cycript_0.9.594 /opt 
3.添加環境變量
vim ~/.bash_profile

export cycript_src=/opt/cycript_0.9.594/
export PATH=$PATH:$cycript_src
 :wq

source .bash_profile

如果你終端使用了Term2+oh my zsh
vim ~/.zshrc
配置source bash_profile的地址


如果出現異常

dyld: Library not loaded: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/libruby.2.0.0.dylib
  Referenced from: /opt/cycript_0.9.594//Cycript.lib/cycript-apl
  Reason: image not found

說明我們電腦上缺少libruby動態庫

brew install [email protected]

將你[email protected]所在目錄下的lib/libruby.2.6.dylib
複製到cycript_0.9.594/Cycript.lib目錄下
並且改名libruby.2.0.0.dylib

6.查看要脫殼應用所在目錄

 ps -e |grep app  
 如
 #16170 ??         0:05.58 /var/containers/Bundle/Application/1F14598E-DE7F-4344-8FD6-CA126CCAA594/pinduoduo.app/pinduoduo

使用Cycript找出目標應用的 Documents 目錄路徑
cycript -p pinduoduo

iPhone:~ root# cycript -p pinduoduo
cy# [[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask][0]
#"file:///var/mobile/Containers/Data/Application/2812611C-1D62-4D65-93E5-E7C8096A9D0E/Documents/"

注意: 執行過程中, 在 iPhone 上面打開運行一下 App, 不然上面的執行一直卡在那裏不動.

7.脫殼

拷貝 dumpdecrypted.dylib.

拷貝 dumpdecrypted.dylib 這個之前編譯簽名好的文件到iPhone 上面該 APP 的 Documents 目錄有兩種方法.

第一種方法, 直接在 mac 上面拖拽 dumpdecrypted.dylib 到 iFunBox 顯示的這個目錄中, 這種方法比較簡單且快.

第二種方法, 使用 scp 命令進行操作.

scp ~/dumpdecrypted.dylib [email protected]:/var/mobile/Containers/Data/Application/2EFA08B6-DD7B-41A6-92C9-C6115CA6DDA1/Documents/

192.168.99.231 是 iPhone 設備的 ip 地址.

3. 退出 cycript, 回到命令行模式

ctrl + d

4. cd 到 Documents 目錄

cd /var/mobile/Containers/Data/Application/2EFA08B6-DD7B-41A6-92C9-C6115CA6DDA1/Documents/

5. 砸殼

終端在 Documents 目錄下面, 執行下面命令即可:

DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib /var/containers/Bundle/Application/2837EC87-7C28-45C5-9309-24FACD3A97C9/WeChat.app/WeChat

最後生成了 WeChat.decrypted

使用 iFunBox 或者 scp 命令將 WeChat.decrypted 文件導出到 mac 的任意目錄即可.

2.frida-ios-dump

地址https://github.com/AloneMonkey/frida-ios-dump

cd frida-ios-dump-master
sudo pip install -r requirements.txt --upgrade

mac 運行

iproxy 2222 22
然後會自動顯示等待連接:waiting for connection
此時cmd+N新建終端,輸入
ssh -p 2222 [email protected]
默認密碼:alpine

查看手機上安裝的app和對應的bundle id

在 /frida-ios-dump-master 文件夾運行
 python3 dump.py -l
  PID  Name          Identifier                  
-----  ------------  ----------------------------
17574  Cydia         com.saurik.Cydia            
17582  拼多多           com.xunmeng.pinduoduo       
17622  郵件            com.apple.mobilemail        
    -  App Store     com.apple.AppStore          
    -  FaceTime 通話   com.apple.facetime          
    -  Safari 瀏覽器    com.apple.mobilesafari      
    -  Shadowrocket  com.liguangming.Shadowrocket
    -  Substitute    com.ex.substitute.settings  

例如拼多多
 python3 dump.py com.xunmeng.pinduoduo    

脫出來的文件在你運行命令的當前目錄

把ipa改成zip,主程序拖入ida即刻

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章