我正在尝试学习手动解包 upx 打包的 elf 文件。我找到的示例适用于 Windows,主要是 Ollydbg,正如我所见,第一步是查找pushad
和popad
说明。我有一个 64 位可执行文件,所以我假设我必须寻找所有寄存器的推送和弹出。
到目前为止,我实现的是我可以使用 获取入口点readelf -h
,并gdb
在此地址处设置断点。随着layout asm
我可以按照反汇编指令了。正如我在popad
说明中所了解的,解包已完成,我可以获得原始入口点。但是,因为在 64 位上没有popad
,我不确定原始入口点在哪里。所有寄存器都会被弹出还是只有几个?
我也不知道如何修复导入。