Mach-O 虚拟地址基地址
Mach-O
的vmaddr
=image base
- 说明
restore-symbol
调试时看到的:vmaddr
=虚拟地址
=虚拟地址基地址
IDA
中的:image base
=镜像地址基地址
=镜像基地址
- 多种查看方式
MachOView
restore-symbol
调试时:__TEXT
的Segment
的vmaddr
rabin2
rabin2 -I machoFile
identification
信息中的:baddr
rabin2 -S machoFile
sections
信息中的:__TEXT.__text
的vaddr
减去paddr
后的值
jtool2
jtool2 -l macoFile
list
中的:__TEXT
中的Mem
的起始地址
otool
otool -l machoFile
- 中的:
__TEXT
的Segment
的vmaddr
- 中的:
- 说明
举例
可以用相关工具,辅助验证基地址:
- WhatsApp的vmaddr=image base:0x100000000
- MachOView
- restore-symbol调试时:__TEXT的Segment的vmaddr
- rabin2
- rabin2 -I machoFile
- identification信息中的:baddr
baddr 0x100000000
- identification信息中的:baddr
- rabin2 -S machoFile
- sections信息中的:TEXT.text的vaddr减去paddr后的值
0 0x000062f0 0x249229c 0x1000062f0 0x249229c -r-x REGULAR 0.__TEXT.__text
0x1000062f0 - 0x000062f0
=0x100000000
- sections信息中的:TEXT.text的vaddr减去paddr后的值
- rabin2 -I machoFile
- jtool2
- jtool2 -l macoFile
- list中的:__TEXT中的Mem的起始地址
LC 01: LC_SEGMENT_64 Mem: 0x100000000-0x102eb0000 __TEXT
- list中的:__TEXT中的Mem的起始地址
- jtool2 -l macoFile
- otool
- otool -l machoFile
- 中的:__TEXT的Segment的vmaddr
- segname __TEXT
- vmaddr 0x0000000100000000
- 中的:__TEXT的Segment的vmaddr
- otool -l machoFile
- MachOView
SharedModules
- SharedModules的vmaddr=image base:0x0
- MachOView
- rabin2
- rabin2 -I machoFile
- identification信息中的:baddr
baddr 0x0
- identification信息中的:baddr
- rabin2 -I machoFile
- MachOView