十 iOS逆向- hopper disassembler

  • hopper介紹,下載安裝
  • hopper的簡單使用
一 hopper介紹,下載安裝

Hopper是一個可以幫助我們靜態(tài)分析可執(zhí)行文件的工具。但對于我們iOS逆向這塊來說它能夠?qū)ach-O文件的機器語言代碼反編譯成匯編代碼、OC偽代碼或者Swift偽代碼。

官網(wǎng)地址:https://www.hopperapp.com
軟件下載: Hopper Disassembler_4.0.8

1.1 安裝步驟

1 下載Hopper Disassembler.dmg,點擊安裝,這個就不多講了,跟其他軟件安裝沒差別,安裝完成后,點擊圖標(biāo),打開工具


2 打開后頁面,因為是破解版的,點擊try The Demo就好了。
image.png

3 簡單說明一下面板各個區(qū)域的功能
面板簡介圖

要想知道每一個面板區(qū)域的詳細(xì)功能介紹,請看官方教程https://www.hopperapp.com/tutorial.html
一般強大的東西看起來都很簡潔,簡單?;竟δ芫驼f這么多,余下的自己慢慢研究吧,接下來講一講怎么用。

二 hopper的簡單使用

我們文初說了我們用它主要就是將Mach-O文件的機器語言代碼反編譯成匯編代碼、OC偽代碼。那我們解析來要分三步走。

步驟一 先搞個Mach-O文件

主要就是反編譯Mach-O,首先我們要找一個這樣的文件,我網(wǎng)上下載了一個微信的IPA (這里我找了個破解版的,如果你是從手機上copy的app,你需要先脫殼http://www.51ipa.com/network/chat/WeiXin-iPhone.html

微信IPA

下載下來后,解壓,找到weixin.app,然后查看包內(nèi)容,找到圖中二進制可執(zhí)行文件
image.png

步驟二 將Mach-O文件拖到Hopper Disassembler

Mach-O拖到Hopper Disassembler

我們看到微信可執(zhí)行文件是個胖二進制文件,支持ARM v7,AArch 64兩種架構(gòu)

步驟三 開始分析

我們選擇一個架構(gòu)開始分析,這里我選擇
ARM V7


開始加載

加載完成

簡單操作步驟就這三步,接下來最難的就是如何去分析了,要有目標(biāo)
1 你要分析要了解那一塊內(nèi)容
2 有什么線索能定位到分析區(qū)域,(class_dump,分析頭文件,找到大致方法啊等等)
3 大膽猜測逐步驗證。
我覺得簡單的可以先順著這個思路搞。

最后通過他這個分析輸出,其實就是找到Mach-O文件描述信息,然后分步解析,就像我們讀取XML格式文件一樣,Mach-O也是有固定格式的,Hopper Disassembler就類似于SAX這種XML解析器。


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容