如何检测给定的exe文件使用了什么PE加壳工具?

14

我发现了一个看起来被加密的应用程序。我使用十六进制编辑器打开它,发现其中包含“UPX1”部分和“3.00 UPX!”字符串。不幸的是,最新版的upx无法解压缩它,显示“未被UPX加密”。有没有办法找出其他PE压缩器/加密器被使用的情况?

3个回答

13

PEiD 是你需要的工具。它可以检测各种解包器,尝试解包任何被打包的exe(无论打包方案如何),进行简单的反汇编,检测源代码中存在的加密算法(而不是exe的加密方案,需明确),还有更多功能。但主要作用是识别exe的打包器、加密器和编译器。


根据维基百科,PEiD已经停止开发。但是,你仍然可以从http://www.aldeid.com/wiki/PEiD下载旧版本。 - Universitas

1

PEiD的开发和支持于2011年4月停止,但它仍然是最好的可用于Packer检测的工具。
你也可以使用ExeScan。它可以在这里下载。

ExeScan


1
在许多情况下,打包的可执行文件以启动程序开头,后跟标准的zip文件。这是可能的,因为ZIP头位于文件末尾,所以您可以在zip文件前添加任意数据,并且它仍然是zip文件。因此,请尝试解压缩它,看看是否有效。

不幸的是,这不是我遇到的情况。它不是一个zip文件,程序也不是标准的“自解压”存档,而是用一些其他PE打包工具打包的,并且还有一个UPX(就像我上面提到的,UPX头也存在)。 - migajek

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