在反汇编的ELF文件中,我需要将我编写的代码与编译器从外部库(如capstone或您想要的任何文件)插入的代码区分开。当我转到名为的部分时,我就分解了,失去了很多电话。为了浏览ELF部分,我使用了ghidra。
如果没有剥离二进制文件,那么您应该能够仅通过函数名称来区分函数。例如,如果一个函数名为main
,那么它就是您编写的代码;如果它名为malloc
,则它位于libc内部。此外,如果二进制文件是动态链接的,则外部调用应在GHIDRA内部这样显示。但是,如果二进制文件是静态链接和剥离的,那么您只需要猜测即可。