将EXE反编译为ASM

8

我希望利用业余时间制作一个基本的杀毒软件。基本上,我了解了EXE(Windows)文件的基本结构。我该如何从文件中提取ASM代码和PE头?


你认为为什么需要在杀毒软件中使用反汇编器? - zxcat
那么我要如何检测病毒部分呢?@zxcat,你会怎么做? - Athiwat Chunlakhan
2个回答

7
你可以安装Cygwin并使用objdump将exe文件反编译为汇编代码。确保在安装Cygwin时选择了binutils选项。安装完Cygwin后,你可以在bash shell中运行以下命令:
objdump -Slx yourpgm.exe

2
可以在虚拟机上运行Linux并使用objdump。听起来像是黑色幽默 ;) - zxcat

1

你可以使用一些免费的分布式反汇编器,例如:ollydbg diassembler

注意:PE头中只有一些MS-DOS存根可执行代码。


"PE头文件中只有一些MS-DOS存根可执行代码。但如果没有呢?你永远不知道病毒会选择在哪里隐藏,而且头文件也会被加载到内存中,对吧?" - j_kubik

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接