iOS逆向工程之App脫殼-創(chuàng)新互聯(lián)

一、生成dumpdecrypted.dylib動(dòng)態(tài)庫

創(chuàng)新互聯(lián)建站主要從事網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)沙坪壩,10年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):028-86922220

首先我們要生成“砸殼”用的動(dòng)態(tài)庫dumpdecrypted.dylib,我們“砸殼”時(shí)主要用到這個(gè)動(dòng)態(tài)庫。該動(dòng)態(tài)庫的源碼在github上是開源的(Github地址),要想得到dumpdecrypted.dylib這個(gè)動(dòng)態(tài)庫,只需要從github上下載代碼,然后進(jìn)行編譯,生成dumpdecrypted.dylib即可。下方就是使用make命令對dumpdecrypted的源碼進(jìn)行編譯。

進(jìn)入到dumpdecrypted文件夾下,運(yùn)行make命令即可。

iOS逆向工程之App脫殼

編譯完成后,dumpdecrypted文件夾中就會多一個(gè)dumpdecrypted.dylib動(dòng)態(tài)庫,該動(dòng)態(tài)庫就是稍后我們砸殼使用的工具。

iOS逆向工程之App脫殼

二、“砸殼”前的準(zhǔn)備工作

接下來就是要在越獄手機(jī)上尋找要“砸殼”的app路徑了,首先使用ssh連接到你的越獄設(shè)備,然后在越獄設(shè)備中打開你要砸殼的App, 此處我們以微信為例。從AippStore中下載安裝的應(yīng)用都會位于/var/mobile/Applications中,下方的截圖就是我手機(jī)上從AppStore中下載的應(yīng)用的安裝路徑。當(dāng)然,下方是使用iExplore工具進(jìn)行查看的,下方內(nèi)容中,文件的拷貝我們都會用到iExplorer,當(dāng)然你也可以使用之前提到過的iFunBox。

iOS逆向工程之App脫殼

從上方的截圖中要找出微信所在的目錄是非常困難的,應(yīng)用少的話你可以點(diǎn)開一個(gè)個(gè)的看。向上面這種應(yīng)用比較多的情況的話,一個(gè)個(gè)文件夾點(diǎn)開是不太現(xiàn)實(shí)的,所以我們得通過另一種方式來定位“微信”App所在的目錄。

這種快捷定位“微信”所在目錄的方式就是“查看應(yīng)用進(jìn)程”的方式,首先你需要打開微信,然后運(yùn)行下方的命令,來查看文件目錄/var/mobile/目錄下的所有正在運(yùn)行的App進(jìn)行,具體要用到的命令如下所示:

 ps -e | grep /var/mobile

iOS逆向工程之App脫殼

上方截圖就是上述命令運(yùn)行后所輸出的內(nèi)容,從上述內(nèi)容中我們輕而易舉的就可以找到“WeChat”所在目錄。我們可以通過iExplore打開該目錄,更直觀的來看一下微信App所在的目錄,具體內(nèi)容如下所示. 上面這個(gè)進(jìn)程的絕對路徑我們要記下來,因?yàn)楹筮呍覛さ臅r(shí)候會使用到該路徑。

iOS逆向工程之App脫殼

接下來我們就要使用Cycript工具來尋找WeChat的Document路徑了,如果你的越獄設(shè)備上沒有安裝Cycript工具的話,那么請前往Cydia下載安裝Cycript工具。下方步驟就是使用Cycript工具來查看附加進(jìn)程的Document目錄的步驟。

1.使用Cycript注入目標(biāo)進(jìn)程中

cycript -p WeChat

上述命令執(zhí)行完畢后,會進(jìn)入到cycript模式中,如下所示。當(dāng)然,在iOS9.2.1上的越獄設(shè)備執(zhí)行上述命令會報(bào)錯(cuò),可能是目前Cycript這個(gè)強(qiáng)大的工具還不支持iOS9.2吧。所以我是在iOS7.2上做的該實(shí)驗(yàn)。

iOS逆向工程之App脫殼

2.獲取該進(jìn)程的Document目錄

[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectoryinDomains:NSUserDomainMask][0]

輸入上述內(nèi)容,然后點(diǎn)擊回車,就會輸出WeChat進(jìn)程的Document目錄,輸出結(jié)果如下所示。下方的紅色部分就是WeChat的Document目錄的絕對路徑。

iOS逆向工程之App脫殼

找到上述目錄后,使用iExplore進(jìn)入到該目錄下,將上面我們生成的dumpdecripted.dylib動(dòng)態(tài)庫拷貝到該目錄下即可,如下所示:

iOS逆向工程之App脫殼

三、開始砸殼

上述“砸殼”的準(zhǔn)備工作就緒后,接下來我們就要開始砸殼了。進(jìn)入到WeChat的Document目錄中,執(zhí)行下方的命令進(jìn)行砸殼。

DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib /var/mobile/Applications/3DC16044-E5BB-4038-9E31-CFE3C7134A7B/WeChat.app/WeChat

在上述命令中,DYLD_INSERT_LIBRARIES后邊這個(gè)動(dòng)態(tài)庫就是我們上面生成的動(dòng)態(tài)庫,后邊這個(gè)路徑就是WeChat執(zhí)行文件的絕對路徑,運(yùn)行上述命令后,就開始砸殼了,下方截圖就是我們砸殼的過程。
   iOS逆向工程之App脫殼

砸殼過程完成后,會在我們的Document目錄下生成一個(gè)WeChat.decrypted文件,如下截圖所示。該文件就是脫殼后的文件,我們可以將該文件拷貝到我們的Mac上,以備使用。

iOS逆向工程之App脫殼

四、導(dǎo)出脫殼App的頭文件

將上面生成的WeChat.decrypted脫殼文件拷貝的我們的Mac上,接下來就是我們class-dump出廠的時(shí)刻了。接下來我們要使用class-dump導(dǎo)出該脫殼文件的所有頭文件。具體步驟如下所示。

1.前奏

WeChat.decrypted文件后,我執(zhí)行了下方的命令來導(dǎo)出其頭文件,下方的命令在沒有加殼的app中是好使的,直接就可以導(dǎo)出相應(yīng)App的頭文件,如下所示:

class-dump -S -s -H WeChat.decrypted -o ./Headers

執(zhí)行上述命令結(jié)束后是下方這個(gè)結(jié)果, 并沒有導(dǎo)出想要的頭文件,Google了一下,是ARM的架構(gòu)不對,所以就沒導(dǎo)出成功。

iOS逆向工程之App脫殼

2.開始導(dǎo)出頭文件

從上述截圖中我們可看到,Headers文件夾中并沒有生成相應(yīng)的頭文件。是我們解密的文件有問題嗎?于是乎,我使用了Hopper打開了解密后的文件,是可以正常打開的,于是乎又Google一下,原來是我們在導(dǎo)出頭文件時(shí)指定的ARM架構(gòu)不正確,于是乎使用class-dump的--arch配置項(xiàng)來指定了armv7的架構(gòu),這樣的話,頭文件就導(dǎo)出成功了。

class-dump --arch armv7 -S -s -H WeChat.decrypted -o ./Headers

操作步驟和結(jié)果如下圖所示, 導(dǎo)出成功,你可以慢慢的分析了。

   iOS逆向工程之App脫殼

五、Hopper

上面使用了class-dump來操作我們脫殼的文件,木有問題。那么接下來來看一下在Hopper上的效果如何,下方就是使用Hopper打開“脫殼”文件的效果。當(dāng)然,你也可以使用IDA Pro來查看,當(dāng)然此處我們使用的是Hopper。從下方的截圖來看,結(jié)果是Perfect的。

iOS逆向工程之App脫殼

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

新聞名稱:iOS逆向工程之App脫殼-創(chuàng)新互聯(lián)
當(dāng)前鏈接:http://muchs.cn/article34/codhse.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、微信小程序網(wǎng)站營銷、定制開發(fā)、服務(wù)器托管網(wǎng)站收錄

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)