-
upx
(一種可執行程序文件壓縮器)
鎖定
- 外文名
- the Ultimate Packer for eXecutables
- 縮 寫
- upx
- 屬 性
- 一款先進的可執行程序文件壓縮器
- 作 用
- 使文件壓縮變小
upx基本介紹
UPX 是一款先進的可執行程序文件壓縮器。壓縮過的可執行文件體積縮小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路徑 是不能確定什麼的。要仔細看看他相對應的文件,如果是殺毒或者是自己已知的文件那就無傷大雅,要是其他疑似,就要認真對待了。
有些軟件的安裝程序是加殼安裝的,屬正常現象。 建議查殺一下惡意程序、病毒。
upx技術原理
加殼:其實是利用特殊的算法,對EXE、DLL文件裏的資源進行壓縮。類似WINZIP 的效果,只不過這個壓縮之後的文件,可以獨立運行,解壓過程完全隱蔽,都在內存中完成。解壓原理,是加殼工具在文件頭里加了一段指令,告訴CPU,怎麼才能解壓自己。當加殼時,其實就是給可執行的文件加上個外衣。用户執行的只是這個外殼程序。當執行這個程序的時候這個殼就會把原來的程序在內存中解開,解開後,以後的就交給真正的程序。
upx應用平台
upx壓縮文件
用UPX壓縮過的可執行文件體積縮小50%-70% ,這樣減少了磁盤佔用空間、網絡上傳下載的時間和其它分佈以及存儲費用。 通過 UPX 壓縮過的程序和程序庫完全沒有功能損失和壓縮之前一樣可正常地運行,支持的大多數格式程序,沒有運行時間或內存的不利後果。
upx加殼脱殼
upx版權信息
Copyright (C) 1996-2007 Markus Franz Xaver Johannes OberhumerCopyright (C) 1996-2007 Laszlo MolnarCopyright (C) 2000-2007 John F. ReiserAll Rights Reserved.This program may be used freely, and you are welcome toredistribute it under certain conditions.This program is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See theUPX License Agreement for more details.
upx使用實例
程序 | 文件格式 | 文件名 | 原文件大小(bytes) | 壓縮後大小(bytes) | 壓縮用時(秒) |
---|---|---|---|---|---|
Netscape 4.06 | win32/pe | netscape.exe | 2,934,336 | 1,124,352 | 0.383 |
Descent 2 | watcom/le | descent2.exe | 1,448,873 | 652,832 | 0.451 |
MAME 0.36 | djgpp2/coff | mame.exe | 8,214,016 | 1,810,056 | 0.220 |
OneOhOne | dos/exe | 101.exe | 438,144 | 179,566 | 0.410 |
Emacs 20.2 | linux/386 | emacs-20.2 | 2,772,657 | 925,543 | 0.334 |
g++ 2.8.1 | atari/tos | cc1plus.ttp | 1,595,049 | 655,508 | 0.411 |
upx支持格式
以下是支持可執行文件格式列表
X | X | Linux ELF | Linux, AMD64 | |
X | X | Linux kernel | ||
X | X | Linux ELF | Linux, ARM | |
X | X | Linux kernel | ||
X | X | Windows CE executable or DLL | Windows CE, ARM | |
X | X | Linux ELF | Linux, ARM | |
X | X | Linux kernel | ||
X | X | Mac OS X executable | ||
X | X | DOS 16-bit .com file | ||
X | X | DOS 16-bit executable | FreeDOS homepage | |
X | X | DOS 16-bit .sys file | ||
X | X | BSD generic | ||
X | X | Mac OS X executable | Darwin, i386 | |
X | X | DOS 32-bit COFF | djgpp homepage | |
X | X | DOS 32-bit executable | TMT Pascal | |
X | X | DOS 32-bit linear executable | Open Watcom C/C++ | |
X | X | FreeBSD ELF | FreeBSD | |
X | X | Linux ELF | Linux, i386 | |
X | X | Linux generic | ||
X | X | Linux shell script | ||
X | - | Linux kernel | ||
X | X | Linux kernel | ||
X | - | Linux kernel | ||
X | X | NetBSD ELF | NetBSD | |
X | X | OpenBSD ELF | ||
X | X | Windows 32-bit executable or DLL | ||
X | X | Atari TOS/MiNT executable | FreeMiNT portal, m68k | |
X | X | Linux ELF | Linux, MIPS | |
X | X | Linux ELF | Linux, MIPS | |
X | X | PlayStation 1 | PlayStation, MIPS | |
X | X | Mac OS X executable | Darwin, PowerPC | |
X | X | Linux ELF | Linux, PowerPC | |
X | X | Linux kernel |