在破解iOS應用的過程當中,須要常常使用 otool 開獲取程序自己的信息(好比:是否啓用了PIE),獲取加密信息,編輯器
可是CLI的程序在直觀性上仍是不如GUI的,加密
下面描述使用MachOView來查看到相關信息。spa
一、加載可執行文件。.net
運行 MachOView 後,會提示選擇文件,選擇將要分析的文件,插件
會在後臺進行分析,等待分析完畢,以下圖:blog
二、插件頭信息。get
在左側窗口點擊「Mach Header」,以下圖:後臺
則右側窗口中會顯示出頭信息,以下圖:下載
能夠看到這個程序沒有 PIE。程序
三、查看加密信息。
在左側窗口展開「Load Commands」,並選中「LC_ENCRYPTION_INFO」,以下圖:
則右側窗口顯示對應的加密信息,以下圖:
能夠看到加密的偏移地址爲:8192 = 0x2000
加密塊的大小爲:21749760 = 0x14BE000
因爲沒有啓用 PIE,基地址固定爲:0x1000
所以使用 GDB dump 加密數據的起始地址爲:(0x1000+0x2000=0x3000)~(0x1000+0x2000+0x14BE000=0x14C1000)
四、修改加密標誌。
將程序的加密數據替換掉後,還須要修改加密的標誌,
不少文章中描述修改「加密標誌」的方法爲:從某個地方開始向前找「1」,不夠精確。
而MachOView會給出「加密標誌」在文件中的地址,以下圖:
能夠看到「加密標誌」的偏移地址爲:0xABC。
使用十六進制編輯器(好比:0xED)打開文件,並定位到地址「0xABC」, 以下圖:
而後修改對應的值(1--->0),以下圖:
OK,Done。
另,MachOView 下載地址:http://download.csdn.net/detail/proteas/5828827