objdump

    1热度

    2回答

    我们在计算机建筑学教授给我们,询问密码的示例程序。任务是在比较输入的密码并决定是否正确后更改跳转操作码。 我写了一个程序,它可以在给定的二进制文件的特定位置更改任何字节。 这里的pasword程序的代码: int main(int argc, char* argv[]){ char *pw = "12441233"; char pass[32]; printf("E

    3热度

    1回答

    我有一个共享的obj文件说a.so,并且我想了解一个特定的函数(比如fname)是否内联。我尝试了以下4种方法并获得了不同的答案: 1) nm a.so | grep fname - >这并不表示任何o/p表示函数是内联的。 请让我知道这是否足够检查一个函数是否内联。 2) objdump -d a.so | grep fname - >这没有给出任何o/p意味着函数被内联。如果我在这里得

    46热度

    4回答

    我已经在我的系统上安装了一个二进制文件,并希望查看给定函数的反汇编。最好使用objdump,但其他解决方案也是可以接受的。 From this questions我知道如果我只知道边界地址,我可能会反汇编部分代码。从this answer我学会了如何将我的拆分调试符号恢复为单个文件。但即使在单个文件上运行,甚至拆卸所有代码(即没有开始或停止地址,但参数为objdump),我仍然没有在任何地方看到该

    0热度

    2回答

    我们的系统有一个开源库。棘手的是我们有两个库,一个是我们自己的修改,另一个是原始的。这两个副本都在源代码树中,但是应该在运行时调用自定义的副本,而将原始的副本用于构建时用于其他目的。 现在我怀疑,在我们的系统升级过程中,定制的一个隐藏了原来的隐藏。由于系统的复杂性,修改源代码以进行一些跟踪是可行的,但是很尴尬。我认为如果我只是objdump顶级图书馆得到线索。 以下是详细信息: 1) The cu

    4热度

    1回答

    所以基本上我有一些在Linux 32位上编译的ELF二进制文件。 我想在我的Mac 64位上分析它。 我正在尝试使用自制程序安装的gnu utils,如gobjdump和greadelf。 然而,当我试图解析器采用了gobjdump精灵二进制文件,我得到这个错误: gobjdump: hello: File format is ambiguous gobjdump: Matching forma

    2热度

    1回答

    我有一个ARM二进制文件,我需要准确地找到它的函数的序言结尾和结尾开始的地址。换句话说,我需要职能机构的界限。举例来说,如果我有,其装配的功能是一样的东西: 0x00000320 <+0>: push {r7, lr} 0x00000322 <+2>: sub sp, #16 0x00000324 <+4>: add r7, sp, #0 0x00000326 <+6>: str r0, [

    1热度

    2回答

    有没有办法在不实际运行代码的情况下获取特定类的所有成员变量的大小? (即没有sizeof(),offset_of()操作) 是否objdump或otool有一些选项可以从中间目标文件(甚至是最终的ELF文件)中提取此信息? 编辑: “我现在想干什么?”: 我两者之间建立注意到我们的软件是一个特定的类实例的大小激增的。这个类非常大,有很多很多成员变量。有问题的类在两个构建之间没有改变,但是它的成员变

    2热度

    1回答

    我有一个包含ARM v8二进制代码的文件。我想反汇编这个文件,并得到它包含的实际汇编代码。 假设文件名是tmp.o我运行: /opt/linaro/A64-tools/bin/aarch64-linux-gnu-objdump -b binary -m AARCH64 -D tmp.o 这给了我正确的拆卸。但是,分支指令的偏移量假定此代码位于地址0x00000000中。 如果我知道这些代码将坐

    2热度

    1回答

    我跟着http://tinyhack.com/2014/03/12/implementing-a-web-server-in-a-single-printf-call/写一个只有printf()调用的web服务器。 我遵循文章的指导。 Howerver,我发现我的程序的可执行文件在objdump的帮助下不包含.fini_array部分。 注意到.fini_array是由Linux Standard

    2热度

    1回答

    给出一个动态链接的ELF二进制文件,比如说/bin/less。 二进制内部,存在要由共享库提供的函数的调用,例如strcpy() 如何可以找出从共享库/共享对象获得strcp功能? 换句话说,我想获得func_name/shared_obj_name.so对。 接听this post,迈克尔·斯莱德说: ELF文件没有指定哪些符号来自哪个库;它 只是添加一个共享库列表链接到ELF二进制文件,并允许