radare2 2.3.0-git 16814 @ linux-x86-64 git.2.2.0-5-g61a903315
在我的会话期间,我需要将局部变量重命名为更易于理解的名称,例如
var int local_110h @ rbp-0x110
:> afvn local_110h commandLine
是否存在命令来检查此变量中的内容以及最终指向的内容?
px @ commandLine
px @ [commandLine]
但这不起作用:
:>px @ commandLine
Invalid address (commandLine)
|ERROR| Invalid command 'px @ commandLine' (0x70)
通过rbp可以正常工作。
px @ rbp-0x100
#1 楼
您应该使用afvd
。 [0x00402a00]> afv?
...
...
| afvd name output r2 command for displaying the value of args/locals in the debugger
...
...
仅执行
afvd
会打印出函数中所有局部变量的值,如果使用变量名执行它,则会得到radare2结果是:[0x00402a00]> afvn local_110h commandLine
[0x00402a00]> afvd commandLine
pxr $w @rsp+0x110
您将得到
pxr $w @rsp+0x110
,它是radare2命令。您可以在其前面添加一个点
.
要执行它:[0x00402a00]> .afvd commandLine
0x7fffdc9e9258 0x28ffedf4ccd19d64 d......(
例如,如果只需要地址,则可以使用radare的内部grep。 />
有关radare的grep的更多信息,请执行
~?