区分主流语言的反汇编特征

 

1.       VC6.0 + C/C++

1.1.     特征码

signature = 64 A1 00 00 00 00 50 64 89 25 00 00 00 00 83 C4 A8 53 56 57

1.2.     程序的入口代码

 

1.3.     PE结构中链接器字段

   MajorLinkerVersion:           0x06

   MinorLinkerVersion:           0x00  -> 6.00

这个是用vc6.0编译的一个win32 console 的程序。

2.       VC8.0 + C/C++

2.1.     特征码(其中‘?’ 代表模糊匹配)

signature = E9 ?? ?? ?? ?? E9 ?? ?? ?? ?? E9 ?? ?? ?? ?? E9 ?? ?? ?? ?? E9 ?? ?? ?? ?? E9 ?? ?? ?? ?? E9 ?? ?? ?? ?? E9 ?? ?? ?? ?? E9 ?? ?? ?? ?? E9 ?? ?? ?? ?? E9 ?? ?? ?? ?? E9 ?? ?? ?? ?? E9 ?? ?? ?? ?? E9 ?? ?? ?? ?? E9 ?? ?? ?? ?? E9 ?? ?? ?? ?? E9 ?? ?? ?? ??

反汇编代码中截取的特征码部分如下:

 

2.2.     程序的入口代码

 

2.3.     PE结构中链接器字段

   MajorLinkerVersion:           0x0A

   MinorLinkerVersion:           0x00  -> 10.00

3.       delphi 6.0

3.1.     程序的入口代码

 

3.2.     PE结构中链接器字段

   MajorLinkerVersion:           0x02

   MinorLinkerVersion:           0x19  -> 2.25

4.       win32汇编

4.1.     程序的入口代码

1 .text:0040108E 6A 00                   push    0                 ; lpModuleName
2 .text:00401090 E8 33 00 00 00          call    GetModuleHandleA

4.2.     PE结构中链接器字段

   MajorLinkerVersion:           0x05

   MinorLinkerVersion:           0x0C  -> 5.12

原文地址:https://www.cnblogs.com/cber/p/4231110.html