Objective-C

Mach-O バイナリ構造

基本構造は以下のような3つのセクションに分かれる。

Header バイナリを構造化して表示すると以下のようになる。

class-dump コード解析

class-dump /System/Library/Frameworks/Foundation.framework

と与えた際の挙動を解析。

1. class-dump.m

executablePath = /System/Library/Framewoks/Foundation.framework/Version/C/Foundation となっている。

2.CDFile.m

fileWithData:filename:searchPathState: で executablePath を開こうとする CDFatFile としてオブジェクト生成

3.classDump loadFile:

内部でMac-0としてオープンしようとしつつアーキテクチャに合わせて開く的な

CDMachO64File initWithData:offset:filename:searchPathState: でファイルをひらけたら

CDataCursorオブジェクト生成

参照

Share this post:
Child pages:

Comments