1. 程式人生 > >iOS反編譯

iOS反編譯

上架至App Store的app,被apple加密了。想要反編譯要麻煩許多。但是在debug下產生的ipa或者是release下的ipa包或者是渠道包都能直接反編譯。
首先介紹針對Xcode匯出的ipa包的反編譯。
需要用到軟體 :class-dump 和 Hopper Disassembler。軟體下載地址如下: 
class-dump  連結: https://pan.baidu.com/s/1skR6ljv 密碼: tfgf
Hopper Disassembler  連結: https://pan.baidu.com/s/1pL4PQVx 密碼: vhvu

 class-dump:
   通過class-dump可以看到包裡面所有的.h檔案對應VC裡面的所有方法。首先下載安裝包,雙擊後看到如下內容,拖動如圖class-dump檔案到桌面。然後移動到usr/bin目錄內。(可以用終端命令移動 sudo mv ~/desktop/class-dump /usr/bin

)
這裡寫圖片描述
移動過程中如果提示 “Operation not permitted”, 原因是MAC的Rootless機制, Rootless機制是對抗惡意程式的最後防線, 解決辦法就是關閉Rootless : 重啟按住 Command+R,進入恢復模式,開啟Terminal,執行 csrutil disable 。
執行以上操作後,即可順利實現 sudo mv ~/desktop/class-dump /usr/bin, 這樣class-dump就安裝成功了。
此時在Terminal中就可以使用class-dump了。
新建一個資料夾, Terminal進入該資料夾,執行命令class-dump -H (此處填寫如下檔案路徑)
獲取檔案

終端截圖

終端執行成功後,開啟資料夾就可以看到包內的.h檔案
這裡寫圖片描述

   此處就有人會問了,方法名字不重要,關鍵是需要看到方法裡面具體的實現。 此時就要用到Hopper Disassembler這個軟體了。 不過此處宣告,並不能看到方法的原始碼,只能通過反編譯看到一些虛擬碼。
   Hopper Disassembler:
   下載解壓後,雙擊開啟
   ![這裡寫圖片描述](https://img-blog.csdn.net/20170214203600275?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvU2FuZHlMb28=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)

拖拽檔案到軟體介面內, 點右上角的if(b)f(x);按鈕,我們能看到這個方法的虛擬碼,大部分的時候我們能從虛擬碼中看出我們需要的資訊。如下圖:
這裡寫圖片描述

相關推薦

五分鐘學會ios編譯

將用以下幾個方面來闡述我的觀點: iOS app可以“有條件”地被反編譯 脫掉App Store給“二級制檔案”穿上的外衣 如何利用工具去反編譯 iOS app可以“有條件”地被反編譯 首先,告訴大家一個不幸的訊息,上架至App Store的app,被apple加密

iOS編譯

上架至App Store的app,被apple加密了。想要反編譯要麻煩許多。但是在debug下產生的ipa或者是release下的ipa包或者是渠道包都能直接反編譯。 首先介紹針對Xcode匯出的ipa

iOS 編譯入門

最近看了幾篇關於 APP 安全方面的文章,其實網上關於 iOS 反編譯相關內容的文章都大同小異,這篇部落格也就是對這方面內容做一個整理。 class-dump 作用:匯出應用的標頭檔案,算是逆向工程的入門級工具 安裝:開啟 .dmg 檔案,將 cl

iOS編譯-hook微信之艾特所有人

研究了一段時間反編譯逆向工程,只是略微瞭解了一些皮毛,最近忙的事情太雜,就簡單寫一下吧。在文章開始之前,首先感謝"蒸米"大神,在烏雲上的一些文章引領我進入反編譯的,其次也感謝"east520" (http://www.jianshu.com/p/189afbe3b429)這篇文章給的一些方法和啟示.下面說一下

IOS APP編譯

使用 方便 dump 需要 臨時 bug -h 路徑 release 一、針對於debug或者release的包: 1、用class-dump可以鏡像出所有類的.h文件,鏡像出所有的.m文件中的方法列表。非常簡單方便。 安裝後使用的命令為:class-dump -H 需要導

教你如何動態調試 iOS App(編譯App)

逆向工程 iOS 教你如何動態調試 iOS App(反編譯App) 開篇 通過本文你能了解 iOS 逆向的基本知識,對 iOS App 的安全有一定了解。然後能舉一反三,在自家 App 找到危險漏洞加以預防,保證用戶數據安全。 在安全領域,攻與防永遠存在。哪怕是 iPhone 有著強大的安全防護機制

iOS 破殼 編譯 黑客技術大揭祕

原地址 分享內容簡介: 在黑客的世界裡,沒有堅不可破的防護系統,也沒有無往不勝、所向披靡的入侵利器,有時候看似簡單的問題,破解起來也許花上好幾天、好幾個月,有時候看似很 low 的工具往往能解決大問題;我們以實現微信自動搶紅包為引子,逐步展開 iOS 黑客入侵常用的幾

關於iOS開發中編譯的那些事兒

現在僅討論程式碼層面的反編譯 1、反編譯工具 (1)class-dump 主要用來反編譯一個庫檔案或者app的方法名、屬性等宣告(即.h檔案,強大的是反編譯出來的.h不僅僅包含標頭檔案中的宣告,.m中的function方法名稱也同樣能夠反編譯出來)。class-dump的安

教你如何動態除錯 iOS App(編譯App)

開篇通過本文你能瞭解 iOS 逆向的基本知識,對 iOS App 的安全有一定了解。然後能舉一反三,在自家 App 找到危險漏洞加以預防,保證使用者資料安全。在安全領域,攻與防永遠存在。哪怕是 iPhone 有著強大的安全防護機制,也擋不住那些極客們一次又一次的好奇,開發了很

iOS class-dump編譯和程式碼混淆

參考連結 一、class-dump反編譯 1、由於/usr/bin/在OS X 10.11上沒有許可權了,將解壓後的class-dump,拖入到 /usr/local/bin/class-dump中 2、開啟終端,cd /usr/local/bin/c

IDA彙編/編譯靜態分析iOS模擬器程式

轉載自:http://blog.csdn.net/hursing 開刀的類名叫 PluginWidgetIOS,利用lldb可以得到: (lldb) image lookup -r -s PluginWidgetIOS   7 symbo

iOS;ipa檔案編譯

 網上又很多關於ipa反編譯的文章,不過好像就兩種,一種就是簡單的解壓,有的還說要下什麼軟體其實根本不需要,在mac命令終端上cd到檔案然後unzip檔案就可以了。然後在app檔案右鍵選擇顯示包內容,就可以看到ipa中的資原始檔圖片,plist檔案,xml檔案等。另一種就是

Eclipse Kepler(4.3)安裝jad編譯插件

index.php height features eclispe general 一個 版本 java_home pat 1.下載jad,地址:http://varaneckas.com/jad/(根據自己的系統選擇一個下載) 2.下載jad插件,地址:http://ja

APK防編譯技術

能夠 -a span ack -m tar data- 了解 net APK防反編譯技術 下載地址:地址 我們的APK實際上就是一個ZIP壓縮文件,裏面包括有一個classes.dex,我們編譯後生成的程序代碼就所有在那裏了,通過apktool等工具能夠輕

eclipse安裝JAVA編譯插件

-c image 需要 自帶 多好 反編譯工具 get 激活 bsp eclipse安裝JAVA反編譯插件 前言:在實際的開發中幾乎都會使用到一些框架來輔助項目的開發工作,對於一些框架的代碼我們總懷有一些好奇之心,想一探究竟,有源碼當然更好了,對於有些JAR包

eclipse安裝編譯插件

-1 erl htm .cn XML pan editor 刪除 org   轉載:http://www.cnblogs.com/java-class/p/4279261.html 下載jadClipse地址: 鏈接: http://pan.baidu.com/s/1

android編譯odex文件

lis 目錄 trac 依賴 andro xheditor span sys 放置 關於android的反編譯工具,相信大家並不陌生 如APK-TOOL,dex2jar APK-TOOL 用於反編譯出布局文件 下載地址http://code.google.co

編譯apk工具,apk編譯工具Jadx的使用

lib abc 最新版 選擇 dex2jar apk反編譯 elf .apk nbsp Android初學者會使用其他人的apk,這樣能知道別人是如何編寫的,在知道別人是如何編寫的前提下需要一款能實現反編譯軟件,再把軟件反編譯出來查看其中的代碼。 如何使用反編譯apk工具?

混淆、編譯unity3d動畫插件DFTweenLite得到源代碼

文件名 popu user link cto 代碼 con blog set 出處:http://blog.csdn.net/u010019717author:孫廣東 時間:2015.3.17 23:00我為什麽要得到這個源代碼。由於有潔癖!對於Itween

Android Cocos2dx引擎 prv.ccz/plist/so等優化緩存文件,手把手ida教你逆向project編譯apk庫等文件

反編譯 packer ng- ace yaffs2 ces spa 即將 放棄 前段時間在 Android play 上看到一個非常牛逼的 3D 動態天氣預報,效果真的非常炫。二話不說動手 dex2jar.bat/apktool 發現這並沒 有什麽卵用,在核心的地方看見