strcpy
)。我尝试使用f
命令列出r2可以识别的所有标志,但是列表很大,以这种方式查找特定符号的地址并不方便。 如果有的话,什么是最好的方法。
#1 楼
f
命令用于列出所选标志空间中的所有标志。默认情况下,所有可用的标志空间均已选中。为了选择'symbols'标志空间并仅列出其中的标志,请使用:[0x004049a0]> fs symbols
[0x004049a0]> f
0x00402a00 261 main
0x004049a0 41 entry0
0x0061e600 8 obj.__bss_start
0x00413c8c 9 sym._fini
0x0061e610 4 obj.optind
0x004022b8 26 sym._init
0x0061e620 8 obj.program_invocation_name
0x0061e600 0 loc.__bss_start
0x0061f368 0 loc._end
0x00412960 38 sym._obstack_memory_used
0x0061e5f8 8 obj.obstack_alloc_failed_handler
0x00412780 17 sym._obstack_begin
0x0061e640 8 obj.stderr
0x004128f0 106 sym._obstack_free
0x004128c0 48 sym._obstack_allocated_p
0x0061e618 8 obj.optarg
0x004127a0 21 sym._obstack_begin_1
0x004127c0 245 sym._obstack_newchunk
0x0061e608 8 obj.stdout
但是,我列出所有符号的首选方法是使用
i
命令,该命令实际上使用“ rabin2”(man rabin2
)来检索有关二进制文件的信息。使用i?
获得有关该命令的帮助。为了列出所有符号,请运行
is
。 /> [0x004049a0]> is~strcpy
vaddr=0x004023c0 paddr=0x000023c0 ord=013 fwd=NONE sz=16 bind=GLOBAL type=FUNC name=imp.strcpy
如果只需要地址,请使用:
[0x004049a0]> is~strcpy[1]
0x004023c0
有关标志和标志空间的更多信息在这里找到
在此处可以找到有关符号的更多信息