检测 EXE 文件使用的编译器

检测 EXE 文件使用的编译器

有什么方法可以检测(或隐藏)用于构建可执行文件的编译器?

答案1

聚乙烯亚胺非常好

PEiD 可检测 PE 文件中最常见的打包程序、加密程序和编译器。它目前可检测 PE 文件中的 600 多种不同签名。

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

  1. 它具有极好的 GUI,界面非常直观和简单。
  2. 检测率是其他任何识别器中最好的。
  3. 特殊扫描模式先进的检测已修改和未知的文件。
  4. Shell 集成、命令行支持、始终在顶部和拖放功能。
  5. 使用递归进行多文件和目录扫描。
  6. 任务查看器和控制器。
  7. 插件接口,带有类似 Generic OEP Finder 和 Krypto ANALyzer 的插件。
  8. 使用额外的扫描技术来实现更好的检测。
  9. 启发式扫描选项。
  10. 新的 PE 详细信息、导入、导出和 TLS 查看器
  11. 全新内置快速拆卸器。
  12. 新内置的十六进制查看器。
  13. 外部签名接口,可由用户更新。

答案2

尝试 *nix 实用程序字符串。使用strings -a foo.exe 应该会产生一堆结果。重定向到一个文件并在您最喜欢的编辑器中检查。您可能会看到直接涉及特定编译器的一行,例如Borland C++ - 版权所有 2002 Borland 公司。您可能只能找到暗示使用了特定编译器的行,例如在包含路径或其他位置。

字符串也可用于 Windows,作为赛格威或作为microsoft sysinternals 包

答案3

当提出这个问题时,PEiD 仅仅过时了几年。

现在,你最好使用 Detect It Easy:https://github.com/horsicq/DIE-engine/releases或者https://horsicq.github.io/#detect-it-easydie

Detect It Easy 显示对使用 MSVC 编译的 curl.exe 的检测

Detect It Easy 显示使用 MinGW GCC 编译的 ffmpeg.exe 的检测

答案4

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

相关内容