检测用于EXE文件的编译器


Answers:


12

PEiD很好

PEiD检测PE文件的最常见的打包器,加密器和编译器。目前,它可以在PE文件中检测600多个不同的签名。

与已有的其他标识符相比,PEiD在某些方面很特别!

  1. 它具有出色的GUI,界面非常直观和简单。
  2. 检测率是其他任何标识符所提供的最佳率之一。
  3. 特殊的扫描模式,用于高级检测已修改和未知的文件。
  4. Shell集成,命令行支持,始终在最前面和Drag'n'Drop功能。
  5. 递归进行多个文件和目录扫描。
  6. 任务查看器和控制器。
  7. 带有通用OEP Finder和Krypto ANALyzer等插件的插件接口。
  8. 额外的扫描技术可用于更好的检测。
  9. 启发式扫描选项。
  10. 新的PE详细信息,导入,导出和TLS查看器
  11. 全新内置的快速反汇编程序。
  12. 内置十六进制查看器。
  13. 外部签名接口,可由用户更新。

4
“ PEiD为PE文件检测最常见的编译器。” 这就是自述文件所说的-实际上它并没有告诉我们如何实现
mbx 2011年

@Sathya注意,现在包含的链接已失效。
DuckMaestro

@DuckMaestro更新了witi的替代链接
Sathyajith Bhat

如果无法检测到编译器,则将显示“找不到任何东西[Overlay] *”之类的信息 -如果您是首次使用该工具,将会感到困惑。
mbx 2014年

“前面的网站包含有害程序”-Google Chrome。这是一个更好的链接。
本N

8

尝试* nix实用程序字符串。使用strings -a foo.exe 应该产生大量结果。重定向到文件并在您喜欢的编辑器中进行检查。您可能会看到直接包含特定编译器的一行,例如Borland C ++-Copyright 2002 Borland Corporation。您可能只能找到暗示使用了特定编译器的行,例如在include路径等中。

字符串也可以作为cygwin的一部分或作为microsoft sysinternals软件包的一部分用于Windows 。


它没有向我显示编译器名称只是一些dll名称项目
Eduardo Xavier 2014年


1

它不是免费的,但IDA Pro具有很好的编译器检测功能。当然,它不是主要功能,但它是一个不错的附加功能。


0

如果您找到一种方法来检查EXE文件的前十二个字节,则在显示相应ASCII字符的十六进制转储中,它们通常会指示所使用的编译器。


1
我想知道是否有人或某些软件可以找到该exe是否使用特定的编译器版本(Visual Studio 2010 Professional或Enterprise或Express)构建
Remus Rigo

这通常是不正确的。PE文件的第一部分是DOS存根,它通常是一个打印类似“此程序无法在DOS模式下运行”之类的程序。
lesderid 2011年

-1

您可以使用“ dependency walker”来检查它链接到的运行时库。MSVCP100是Microsoft Visual C ++ 2010 x86

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.