iOS逆向工程了解

一、逆向工程

逆向工程,通過分析一個程序或者系統(tǒng)的功能、結(jié)構(gòu)或行為,將它的技術(shù)實現(xiàn)或設(shè)計細節(jié)推導出來的過程。

二、逆向工程的作用

1. 與安全相關(guān)的iOS逆向工程

  • 評定安全等級
  • 逆向惡意軟件(查毒和殺毒)
  • 去除軟件的使用限制(破解和盜版)

2. 與開發(fā)相關(guān)的iOS逆向工程

  • 逆向系統(tǒng)調(diào)用(如調(diào)用系統(tǒng)的鎖屏,關(guān)機等功能)
  • 借鑒別的軟件

三、逆向開發(fā)的一般流程

逆向工程開發(fā)要將系統(tǒng)分析和代碼分析有機結(jié)合。系統(tǒng)分析從整體上觀察目標工程的行為特征、文件的組織結(jié)構(gòu),從而找到所需逆向的點。然后從該入口進入代碼分析,利用各種強大的你想工具對程序本身的二進制文件進行分析,從而達到目的。

四、 逆向開發(fā)用到的工具

1.監(jiān)測工具:用于嗅探、監(jiān)測、記錄目標程序行為的工具。

常用的有Reveal,tcpdump,libNotifyWatch和PonyDebugger等。

2.開發(fā)工具:用于開發(fā)越獄代碼的工具

最著名的就是Theos,能夠編譯生成Tweak插件。還有可以基于Xcode開發(fā)的iOSOpenDev,同樣可以進行逆向開發(fā)。

3.反編譯器:主要是IDA

該工具橫跨Windows/Linux/Mac平臺,它將目標程序的可執(zhí)行文件作為輸入,然后輸出該程序的匯編代碼,甚至是偽代碼,強大的反編譯工具。

4.調(diào)試器:主要是基于命令行的GDB

Xcode的調(diào)試器是GDB或LLDB的圖像化包裝。

最后編輯于
?著作權(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)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,324評論 25 708
  • 轉(zhuǎn)自:http://openresty.org/posts/dynamic-tracing/ 關(guān)于作者 大家好,我...
    鯨息_Leon閱讀 1,313評論 0 2
  • 首先更新命令有:apt-get update ,apt-get upgrade ,apt-get dist-upg...
    simeon2015閱讀 696評論 0 0
  • 這是一座城、一座荒蕪的城 。 靈魂四處飄蕩,日日夜夜。沒有期限、沒有結(jié)尾。這是一座城、城里下著大雪,盛開的血紅罌粟...
    雨落余生閱讀 184評論 0 0
  • 是因為擁有熱嗎?心情異常煩躁。熱的馬路上行走的是車輪。熱的心里駐扎的是煩躁。燥熱的心狂且亂,不愿聽到任何人的聲音,...
    靜若青蓮閱讀 307評論 6 3

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