最近给大家发了一个PEiD查壳工具,可能对于新手并不知道这个东西是干什么的。
正好给大家操作一下它的使用。
PEiD是现在最流行的查壳工具,所谓的“壳”说白了就是给程序套上的一层“护罩”,大概可分为两种:压缩壳和保护壳。
保护壳就是可以保护程序不会被反编译工具直接查看到代码,起到混淆的作用。
压缩壳就是可以使源程序体积减小,同样也可以实现加密的效果。
所以,壳也分为很多种,比如常见的UPX、ASPack等等。
当然,壳可以加,也可以“脱”。呵呵。
好了,废话不多说,下面我就用PEiD演示一下怎么查壳,并脱壳,还原程序原本的样子。
有的时候,我们想反编译某个程序,会发现如下提示:
提示“损坏的资源(可能是压缩或加密文件)”。
这样的程序几乎都是被加过壳的。
在这里,我做演示的程序是PEiD自己(因为它自己也是被加过壳的,正好我就用它自己做演示了。呵呵)。
首先,打开PEiD查壳工具:
然后,把要查壳的程序(在这里也就是PEiD)拖放到上面打开,会看到如下结果:
没有提示说这个软件是使用什么工具或什么语言编写的,那么很明显,这个程序就是被加过壳的。
注意红色箭头所标注的地方,直接查出壳的类型:“PECompact 2.x -> Jeremy Collake”。
也就是添加的“PECompact 2.x”版本的壳。
这个壳属于压缩壳,怎么脱呢?直接使用对应类型的脱壳工具就行了。
在这里,我们使用“PECompact 2.x”的脱壳工具对其进行脱壳。
我在这使用的是“PECompact 2.x-3.x 脱壳机”,打开工具:
选择浏览要脱壳的程序,在这里我用的是PEiD做的演示,浏览文件,或者直接将文件拖拽入工具:
然后选择“脱壳”:
然后我们会发现,在你脱壳的程序目录下,会创建一个同名文件:
下面一个“unpackaged”就是我们脱壳后,得到的源程序文件,运行一下可以正常运行:
打开PEiD,检测一下脱壳后的程序,查看结果:
程序的查询结果是“Microsoft Visual C++ 7.0”。
OK,这就表示我们脱壳成功了!哈哈。
还有,注意源程序和脱壳后程序的体积,会发现相差很多,这就是典型的压缩壳。
教程中使用的工具大家可以在“我的小站 - 孤影科技”的软件工具下载版块找到。
这个使用工具脱壳很简单,我稍后会给大家抽时间录一个手动脱壳的视频教程,教程没有什么技术含量,不过还是希望大家赞一下啦。算是个鼓励吧。呵呵。
不懂的或者需要工具的也可以留言邮箱。