1. 程式人生 > >iOS逆向系列-逆向APP

iOS逆向系列-逆向APP

進行 rev server 使用 cts 作用 執行流程 png 進一步

逆向App流程

界面分析

通過Cycript、Reveal。

代碼分析

開發者編寫的所有代碼最終編譯鏈接到Mach-O文件中。
技術分享圖片

如果我們要分析App的代碼也就是說要分析Mach-O中的代碼。靜態的代碼分析常用的工具MachOView、class-dump、Hopper Disassermbler、ida等。

動態調試

靜態分析還是不能解決問題,還需要動態調試,將程序運行起來運行到內存中進一步分析代碼的執行流程。也就是對運行中的APP進行代碼調試。
常用的動態調試工具 debugserver、LLDB。

代碼編寫

通過以上的分析,我們已經對APP的功能很清楚了。然後我們就可以編寫代碼註入到APP裏面去。必要時還需要重新簽名、打包App。

靜態分析 class-dump

class-dump作用就是把Mach-O文件的Class信息給dump出來(把類信息給導出來),生成對應的.h頭文件。
官方地址:http://stevenygard.com/projects/class-dump/
下載完工具包後將class-dump文件復制到/usr/local/bin目錄。這樣就可以識別class-dump命令了。
Mac的命令存儲在/usr/bin與/usr/local/bin中,目前Mac不允許用戶向/usr/bin做修改,我們將命令可以添加到/usr/local/bin中。

class-dump使用

對Mach-O執行如下命令

class-dump -H Mach-O文件 -o 導出頭文件存放的文件目錄

技術分享圖片

靜態分析 Hopper

iOS逆向系列-逆向APP