在radare2中调试时是否可以反转堆栈视图,以便更高的地址位于顶部?
在radare2中反转堆栈视图
逆向工程
雷达2
2021-06-21 23:32:19
1个回答
这是目前不可能的。最接近的是使用迭代 ( @@),并像这样打印堆栈:
[0x10000b4a1]> pxw 16 @@=rsp rsp-16 rsp-32 rsp-48
(对于更多行,您只需添加其他rsp-?元素)。
不幸的是,这种方法有几个缺点:
- 如果您需要可变数量的行,那是行不通的。您可以使用外部命令来生成元素(通过
@@c:或@@=``),或者为radare2 的迭代器代码(位于r_core_cmd_foreach、 in 中libr/core/cmd.c)做出贡献,该代码目前仅支持正方向(您需要添加对负步进的支持)。 - 对于某些 hexdump 格式(例如
px,这是面板视图中使用的默认格式),会在输出中添加一个标题,并且当使用迭代器时,会导致多个命令执行,标题会一遍又一遍地出现。 - 出于某种原因,这种迭代在面板视图中不起作用。
我建议打开一个功能请求(或实施它并为项目做出贡献),以支持反向打印方向。