lldb读取内存指针

时间:2015-05-28 16:41:44

标签: memory reverse-engineering lldb

可以在另一个地址指向的位置轻松读取内存。

例如,$ r0 = 0x15942600在此内存地址有AC B8 EC 14

现在要读取0x14ecb8ac的内存,我将不得不这样做:

mem read $r0
mem read 0x14ecb8ac

任何方式轻松做mem read ($r0)以便我可以轻松读取内存?

我试过这个:

(lldb) mem re $r1
0x007db594: 7c d5 e7 15 00 00 00 00 e4 b5 7d 00 70 f6 9a 36

(lldb) mem read 0x15e7d57c
0x15e7d57c: 74 69 63 72 63 74 37 35 00 00 63 61 00 00 49 39

(lldb) mem read '*(char **)$r1'
error: invalid start address expression.
error: address expression "*(char **)$r1" evaluation failed

1 个答案:

答案 0 :(得分:3)

感谢@MarkPlotnick,这是有效的,

mem read '*(int **)$r1'

如果需要读取特定偏移量的mem地址,可以执行以下操作,

mem read '*(int **)($r1+4)'

针对针对ARMv7和ARM64的Xcode调试进行了测试和测试