组装jmp到不存在的行

时间:2018-11-14 14:27:31

标签: assembly x86 reverse-engineering att

Assembly code showing JMPQ

对于显示“ jmpq * 0x400850”的行,实际上没有这样的行具有0x400850。在这种情况下,由于我不能跳到提到的地方,我是否只跳过此命令并转到下一行中的命令?

所以答案告诉我在终端中键入“ objdump”,所以我键入了

    objdump -d ./bin-lab-ref > output.txt

,终端上没有输出。 在这种情况下我该怎么办?

1 个答案:

答案 0 :(得分:2)

指令jmpq *0x400850(,%rax,8)跳转到地址0x400850(,%rax,8)上存储的值,而不是地址0x400850(,%rax,8)本身。可能在此地址处有一个跳转表,rax从跳转表中选择一个条目来跳转。

检查0x400850周围的内存,以查找跳转表具有的条目以及跳转的位置。您可以使用objdump -s转储可执行文件的映像。