如何判断是否压缩了可执行文件(任何格式)

时间:2012-11-08 21:59:04

标签: compression executable

我的问题是,有没有可以检测压缩工具用于压缩可执行文件的工具?

可执行文件的可执行格式无关紧要。(http://en.wikipedia.org/wiki/Category:Executable_file_formats

我正在寻找一种可以识别用于压缩可执行文件的压缩工具的工具。

例如:说可执行文件是用UPX压缩的:Ultimate Packer For可执行文件,但我不知道使用了这个压缩器。我可以通过使用工具以某种方式确定压缩器是用来压缩它的吗?

如果您有任何建议或可以指出我正确的方向,将不胜感激!我想找到一种可以检测各种压缩机的工具。

2 个答案:

答案 0 :(得分:0)

在Unix上,使用file命令。它尝试通过将文档与各种签名进行匹配来确定文件中的数据类型。它不是特定于可执行文件或压缩,它们只是它可识别的一些文件类型。

答案 1 :(得分:0)

一个开始是:尝试用gzip之类的东西来压缩它。已压缩的东西不会压缩很多,或者根本不会压缩,或者可能会扩展。如果可执行文件压缩了一个公平的位,那么它首先没有被压缩。快速检查表明,我的大多数可执行文件都压缩了近两倍。

然后至少你会知道它是否被压缩了。

从那里,您可以尝试使用the candidates压缩可执行文件,并在前缀可执行文件(即解压缩程序)中查找公共序列。