逆向原理
動態(tài)調(diào)試 通過界面調(diào)試Cycript\Xcode LLDB!
靜態(tài)分析 利用之前學習的匯編代碼,分析三方APP的源碼!
代碼注入 注入的其實是動態(tài)庫!HOOK代碼 改變原來程序的執(zhí)行流程!
重簽名 ?安裝在非越獄手機上面
Class-dump
- 下載地址http://stevenygard.com
- 也可以安裝monkeyDev其自帶Class-dump,下載地址:https://github.com/AloneMonkey/MonkeyDev/wiki/%E5%AE%89%E8%A3%85
- 注:如過是自己安裝的Class-dump 要cd到其所在文件夾運行指令。
usr目錄介紹
1.打開終端切換目錄到最上層目錄:
cd /
la ?? //查看所有文件包括隱藏文件
cd /usr ?? //unix system resource 系統(tǒng)文件 為隱藏文件
ls ?//進入usr文件夾 查看目錄
2.至此目錄中會出現(xiàn)兩個文件夾 bin 和 local咖城,下面來介紹寫兩個文件的區(qū)別:
- bin中文件是系統(tǒng)預裝的可執(zhí)行文件烟零,其會隨著系統(tǒng)的升級而改變腐宋,所以一般自己常用的可執(zhí)行文件不放在里面阐斜。
- cd 進local 里面也有個bin在這個bin里面可以放自己的可執(zhí)行程序翰守,如果想自己安裝Class-dump那么推薦裝到local -> bin 中,其不會因為系統(tǒng)升級問題受到影響剥纷。
3.終端輸入以下代碼
echo $PATH
系統(tǒng)搜索順序是根據(jù)這路徑來的坪稽,搜到哪個就用哪個曼玩。
/opt/MonkeyDev/bin:/Users/xiaobai/.rvm/gems/ruby-2.2.2/bin:/Users/xiaobai/.rvm/gems/ruby-2.2.2@global/bin:/Users/xiaobai/.rvm/rubies/ruby-2.2.2/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/xiaobai/.rvm/bin
4.上面是我的mac搜索路徑鳞骤,可以看出首先第一個搜索的就是monkeyDev下面的bin文件。
Class-dump獲取app頭文件
1.下載pp助手下載越獄包(這邊就不展示了)黍判。
2.打開方式zip歸檔工具打開->Payload->xxxx.app.
3.右擊顯示包內(nèi)容->找到MachO文件一般跟app同名白底的不帶后綴的(不確定可以看下包大小比較大就是了)豫尽。
4.新建頭文件存儲文件夾(appHeader)打開終端cd到本目錄。
5.輸入以下代碼
class-dump -H xxxx -o appHeader/
注:-H 頭文件的意思 xxxx為MachO文件的名字不帶后綴 -o為output意思 如果沒有-o及后面的代碼 則會print出來 appHeader為文件輸出路徑
6.運行效果:
7.完成顷帖,如上圖最后導出的頭文件有11602個美旧,大家一看就只到是啥軟件了吧。
8.頭文件較多可以安裝Visual Studio code查看因為Visual Studio code加載還是比較快的贬墩,但是放在xcode里面看頭文件會比較卡(土豪高配忽略本條)榴嗅。