iOS逆向, 基礎(chǔ)工具之class-dump

class-dump

顧名思義就是來(lái)dump頭文件的工具, 簡(jiǎn)單好用
下載地址
先下載class-dump.dmg, 然后把里面的class-dump復(fù)制出來(lái)就可以用了, 如果希望直接運(yùn)行可執(zhí)行文件那么加到/usr/bin里.

但是macos的限制, /usr/bin不讓寫文件, 可以參考這里修改權(quán)限.

然后直接復(fù)制到/usr/bin下,

chomd 777 /usr/bin/class-dump

直接調(diào)用 class-dump使用即可.

另一種在自己的用戶目錄下配置(推薦)

在當(dāng)前用戶新建一個(gè)bash_profile

mkdir ~/bin

mv ../class-dump ~.bin

open -e .bash_profile 輸入 export PATH=?$HOME/bin/:$PATH

source ~/.bash_profile

就可以了(后面theos的一些配置也可以放在bash_profile里, 還是比較方便的).

在dump有swift類可能會(huì)報(bào)錯(cuò)

Error: Cannot find offset for address 0x6800f3c2 in stringAtAddress:

swift的解決方案

運(yùn)行實(shí)例

class-dump 
class-dump 3.5 (64 bit) (Debug version compiled Sep 17 2017 16:24:48)
Usage: class-dump [options] <mach-o-file>

  where options are:
        -a             show instance variable offsets
        -A             show implementation addresses
        --arch <arch>  choose a specific architecture from a universal binary (ppc, ppc64, i386, x86_64, armv6, armv7, armv7s, arm64)
        -C <regex>     only display classes matching regular expression
        -f <str>       find string in method name
        -H             generate header files in current directory, or directory specified with -o
        -I             sort classes, categories, and protocols by inheritance (overrides -s)
        -o <dir>       output directory used for -H
        -r             recursively expand frameworks and fixed VM shared libraries
        -s             sort classes and categories by name
        -S             sort methods by name
        -t             suppress header in output, for testing
        --list-arches  list the arches in the file, then exit
        --sdk-ios      specify iOS SDK version (will look for /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS<version>.sdk
                       or /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS<version>.sdk)
        --sdk-mac      specify Mac OS X version (will look for /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX<version>.sdk
                       or /Developer/SDKs/MacOSX<version>.sdk)
        --sdk-root     specify the full SDK root path (or use --sdk-ios/--sdk-mac for a shortcut)

一般用法

找到對(duì)應(yīng)的xxx.app文件, 然后定位app的可執(zhí)行文件

cd SpringBoard.app
plutil -p info.plist | grep CFBundleExecutable
  "CFBundleExecutable" => "SpringBoard"
class-dump -S -s -H SpringBoard -o ~/hfiles/SpringBoardHeaders

至此SpringBoard的所有頭文件就dump出來(lái)了


SpringBoard.png

至于如何導(dǎo)出SpringBoard.app, 首先是需要一臺(tái)越獄的設(shè)備, 使用SSH或者其他文件管理從手機(jī)中導(dǎo)出, 這里不多贅述, 會(huì)有其它文檔詳細(xì)介紹, 這里只記錄工具的配置和基本使用.

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市掀序,隨后出現(xiàn)的幾起案子帆焕,更是在濱河造成了極大的恐慌,老刑警劉巖不恭,帶你破解...
    沈念sama閱讀 211,194評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件叶雹,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡换吧,警方通過(guò)查閱死者的電腦和手機(jī)浑娜,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)式散,“玉大人筋遭,你說(shuō)我怎么就攤上這事。” “怎么了漓滔?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,780評(píng)論 0 346
  • 文/不壞的土叔 我叫張陵编饺,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我响驴,道長(zhǎng)透且,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,388評(píng)論 1 283
  • 正文 為了忘掉前任豁鲤,我火速辦了婚禮秽誊,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘琳骡。我一直安慰自己锅论,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,430評(píng)論 5 384
  • 文/花漫 我一把揭開(kāi)白布楣号。 她就那樣靜靜地躺著最易,像睡著了一般。 火紅的嫁衣襯著肌膚如雪炫狱。 梳的紋絲不亂的頭發(fā)上藻懒,一...
    開(kāi)封第一講書(shū)人閱讀 49,764評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音视译,去河邊找鬼嬉荆。 笑死,一個(gè)胖子當(dāng)著我的面吹牛酷含,可吹牛的內(nèi)容都是我干的员寇。 我是一名探鬼主播,決...
    沈念sama閱讀 38,907評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼第美,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼蝶锋!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起什往,我...
    開(kāi)封第一講書(shū)人閱讀 37,679評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤扳缕,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后别威,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體躯舔,經(jīng)...
    沈念sama閱讀 44,122評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,459評(píng)論 2 325
  • 正文 我和宋清朗相戀三年省古,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了粥庄。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,605評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡豺妓,死狀恐怖惜互,靈堂內(nèi)的尸體忽然破棺而出布讹,到底是詐尸還是另有隱情,我是刑警寧澤训堆,帶...
    沈念sama閱讀 34,270評(píng)論 4 329
  • 正文 年R本政府宣布描验,位于F島的核電站,受9級(jí)特大地震影響坑鱼,放射性物質(zhì)發(fā)生泄漏膘流。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,867評(píng)論 3 312
  • 文/蒙蒙 一鲁沥、第九天 我趴在偏房一處隱蔽的房頂上張望呼股。 院中可真熱鬧,春花似錦画恰、人聲如沸彭谁。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,734評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)马靠。三九已至奄抽,卻和暖如春蔼两,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背逞度。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,961評(píng)論 1 265
  • 我被黑心中介騙來(lái)泰國(guó)打工额划, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人档泽。 一個(gè)月前我還...
    沈念sama閱讀 46,297評(píng)論 2 360
  • 正文 我出身青樓俊戳,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親馆匿。 傳聞我的和親對(duì)象是個(gè)殘疾皇子抑胎,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,472評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容