UPX
UPX| 초기 릴리즈 | 1998년 5월 26일, 전( |
|---|---|
| 안정된 릴리스 | 3.96 / 2020년 1월 , 전( |
| 저장소 | |
| 기입처 | C++, 어셈블리 |
| 운영 체제 | Microsoft Windows, Linux, macOS, DOS, Atari TOS |
| 플랫폼 | i386, MIPS, AMD64, ARM, PowerPC, m68k |
| 이용가능기간: | 영어 |
| 유형 | 실행 가능한 압축 |
| 면허증. | GPL(압축 실행 파일 제외),[1] 이진수 분포[2] 압축 알고리즘 전용 |
| 웹 사이트 | upx.github을 클릭합니다.이오 |
UPX(Ultimate Packer for Executables)는 다양한 운영 체제의 [3][4]다양한 파일 형식을 지원하는 오픈 소스 실행 파일 패키지입니다.
압축
UPX는 [5]UCL이라고 하는 데이터 압축 알고리즘을 사용합니다.이 알고리즘은 독자적인 NRV([2]Not Really Earrown)[6] 알고리즘의 일부를 오픈 소스로 구현한 것입니다.
UCL은 수백 바이트의 코드로 압축 해제기를 구현할 수 있을 정도로 단순하도록 설계되었습니다.UCL은 압축을 해제하기 위해 추가 메모리를 할당할 필요가 없습니다.즉, UPX로 채워진 실행 파일에는 보통 추가 메모리가 필요하지 않습니다.
UPX(2.90 베타 이후)는 대부분의 플랫폼에서 LZMA를 사용할 수 있지만 오래된 컴퓨터에서는 압축 해제 속도가 느리기 때문에 기본적으로 16비트에서는 사용할 수 없습니다(사용).--lzma강제로 켜야 합니다).
버전 3.91 이후 UPX는 Windows [7]플랫폼에서 64비트(x64) PE 파일도 지원합니다.이 기능은 현재 Experimental로 선언되어 있습니다.
감압
UPX는 압축 해제를 위한 두 가지 메커니즘을 지원합니다. 즉, 임플레이스 기술과 임시 파일에 대한 추출입니다.
실행 파일을 메모리로 압축 해제하는 임플레이스 기술은 지원되는 모든 플랫폼에서는 사용할 수 없습니다.메모리 효율이 뛰어나고 OS가 설정한 환경이 올바른 상태로 유지된다는 장점이 있습니다.
나머지는 임시 파일에 대한 압축을 사용합니다.이 절차에는 추가 오버헤드 및 기타 단점이 포함되지만 실행 파일 형식을 모두 압축할 수 있습니다.임시 파일 방식으로 압축을 풀면 다음과 같은 몇 가지 단점이 있습니다.
수정되지 않은 UPX 패킹은 바이러스 대책 소프트웨어 스캐너에 의해 검출되어 개봉되는 경우가 많습니다.또한 UPX에는 수정되지 않은 실행 파일을 압축 해제하는 기능이 내장되어 있습니다.
지원되는 형식
UPX는 다음 [8]형식을 지원합니다.
- 휴대용 실행 파일(PE, EXE 및 DLL 파일):
- DJGPP2에서 사용되는 COFF 실행 파일
- a.out 포맷, BSD i386(삭제 완료)
- 원시 8086/DOS 파일:[nb 1]
- Watcom/LE(DOS4G, PMODE/W, DOS32A 및 CauseWay에서 사용)
- TMT/adam (TMT Pascal 컴파일러에 의해 생성됨)
- 아타리/TOS
- Linux 커널, i386, x86-64 및 ARM
- Linux 실행 파일 및 링크 가능 포맷, i386, x86-64, ARM, PowerPC, MIPS
- PlayStation 1/EXE (MIPS R3000)
- Darwin Mach-O, ppc32, i386 및 x86-64
UPX는 현재 위에서 실행되는 CIL 코드를 포함하는 PE 파일을 지원하지 않습니다.NET 프레임워크
메모들
- ^ a b c DOS 타깃의 경우 UPX는 특별한 옵션을 지원합니다.
-8086임베디드 압축 해제기가 8088/8086 프로세서와 호환되도록 하기 위해 DOS를 실행하는 초기 PC에서도 압축 파일을 실행 및 압축 해제할 수 있습니다. - ^ DOS를 압축하는 기능.COM 형식의 파일을 사용하여 다른 바이너리 실행 파일을 압축할 수도 있습니다.일부 FreeDOS 및 EDR-DOS 커널 파일은 UPX 압축이 가능한 것으로 알려져 있습니다.
- ^ DOS를 압축하는 기능.COM 스타일의 파일은, 실행 불가능한 바이너리 데이터 파일을 압축하기 위해서도 사용할 수 있습니다.이러한 파일을 사용하는 드라이버/어플리케이션이 UPX 압축 파일을 검출해, 그 파일에 짜넣어진 압축 해제기로 점프하도록 확장되어 있는 경우입니다.FreeDOS는 이 기능을 에 이용하는 것으로 알려져 있습니다.CPX 파일, UPX 압축.CPI 글꼴파일
레퍼런스
- ^ "UPX License Agreement".
- ^ a b "The UPX Hacker's Guide". GitHub. 19 February 2022.
- ^ Marak, Victor (2015). Windows Malware Analysis Essentials. Packt Publishing. p. 188. ISBN 978-1-78528-151-8. Retrieved November 22, 2015.
Packers such as Ultimate Packer for Executables (UPX) are more of executable compressors as size reduction is the primary goal, not obfuscation, which can be a byproduct ...
- ^ Blunden, Bill (2013). The Rootkit Arsenal (Second ed.). Jones & Bartlett Learning. pp. 353–355. ISBN 978-1-4496-2636-5. Retrieved November 22, 2015.
One of the most prolific executable packers is UPX (the Ultimate Packer for executables). Not only does it handle dozens of different executable formats, but also its source code is available online.
- ^ Markus Oberhumer. "UCL data compression library". oberhumer.com.
- ^ Markus Oberhumer. "NRV Compression Library". Archived from the original on September 9, 2012.
- ^ UPX 뉴스
- ^ – Linux 일반 명령어 매뉴얼
- ^ "dos extender rtm32 - fileformat of the stub? \ VOGONS".