LLDB:在指针位置反汇编函数(Obj-C / macOS)

问题描述 投票:0回答:1

在尝试调试用Objective-C编写的应用程序时,我经常看到寄存器包含指向函数的指针。问题是,我似乎无法实际实现。

例:

$register read
$rbx = 0x00007fffd1b326b8  (void *)0x001dffffd1b32731
$x/2xw $rbx
$0x7fffd1b326b8: 0xd1b32731 0x001dffff (flipped endian)
$x/2xw 0x001dffffd1b32731
$error: memory read failed for 0x1dffffd1b32600

显然,我不能在该地址设置一个断点,以便消除该选项,所以我的问题是:是否有可能获得应该在该内存地址的指令?

objective-c macos reverse-engineering lldb objective-c-runtime
1个回答
0
投票

如果您知道函数的地址,则可以使用disassemble -a命令查看该函数的程序集。

(lldb) disassemble -a 0x1234

要么

(lldb) disas -a 0x1234
© www.soinside.com 2019 - 2024. All rights reserved.