软件安全-UPX加壳

加壳的全称应该是可执行程序资源压缩,压缩后的程序可以直接运行。
其原理是将可执行程序按照一定算法进行压缩,达到程序源代码的加密效果,执行时在先脱壳内存中解压缩,还原,再执行原程序部分。从而达到防修改与防反编译的效果,而因为源代码在磁盘中以压缩形式存储,虽然脱壳操作加重了CPU的负担,但减少了磁盘的读写,所以在大多数情况下还能提高程序运行速度;这种技术也常被应用到病毒免杀中,给病毒加壳后,杀毒软件往往很难识别。
壳也能提供一些保护功能,比如时间限制,使用次数和注册等。

UPX

UPX (the Ultimate Packer for eXecutables)是一款先进的可执行程序文件压缩器,压缩过的可执行文件体积缩小50%-70% ,这样减少了磁盘占用空间、网络上传下载的时间和其它分布以及存储费用。 通过 UPX 压缩过的程序和程序库完全没有功能损失和压缩之前一样可正常地运行,对于支持的大多数格式没有运行时间或内存的不利后果。 UPX 支持许多不同的可执行文件格式 包含 Windows 95/98/ME/NT/2000/XP/CE 程序和动态链接库、DOS 程序、 Linux 可执行文件和核心。
其主要用途如下:
UPX是一个著名的压缩壳,主要功能是压缩PE文件(比如exe,dll等文件),有时候也可能被病毒用于免杀.壳upx是一种保护程序。一般是EXE文件的一种外保护措施,主要用途 :
  1、让正规文件被保护起来,不容易被修改和破解。
  2、使文件压缩变小。
  3、保护杀毒软件安装程序,使之不受病毒侵害。
  4、木马,病毒的保护外壳,使之难以为攻破。 仅仅看一个壳upx路径 是不能确定什么的。要仔细看看他相对应的文件,如果是杀毒或者是自己已知的文件那就无伤大雅,要是其他疑似,就要认真对待了。

PeiD

PEiD(PE Identifier)是一款著名的查壳工具,其功能强大,几乎可以侦测出所有的壳,其数量已超过470 种PE 文档 的加壳类型和签名。主要模块有:
  任务查看模块:可以扫描并查看当前正在运行的所有任务和模块,并可终止其运行;
  多文件扫描模块:可同时扫描多个文档。选择“只显示PE文件”可以过滤非PE文档;选择“递归扫描”可扫描所有文档,包括子目录。
  Hex十六进制查看模块:可以以十六进制快速查看文档。

使用实验

软件安全-UPX加壳
软件安全-UPX加壳
软件安全-UPX加壳
可以看到探测壳显示为UPX。

上一篇:发布QT生成的程序,用Enigma.Virtual.Box打包成单文件,以及与UPX的冲突


下一篇:upx你会脱壳了吗?