설치 / 사용기

기 타 [왕초보님께] 패커(실행압축) 와 프로텍터

2017.05.20 02:08

sTarTrak 조회:948 추천:2

밑에 왕초보님의 글을 정독(?)하다보니 갑자기 옛일이 떠올라 몇자 적어봅니다.

 

도스,윈도우98,xp시대에 ,Reverse Engineering에 빠져, 전우(?)들과 함께 크랙게시판과 한글화 작업,,, [oPEN rEVERSE fORUMS]을 운영하던시절,,,

 

매일 밤을 세워가며,지긋지긋하게 코드를 파헤치던 녀석들이 바로 패커와 프로텍터 프로그램이었죠,,,^^

 

그때 그시절에 비하면 지금은 거의 Reverse Engineering에 관련된 정보 찾기가 어려워 아쉬움(?)도 많고,,,,,,

.....................

 

과거 이야기는 중략하겠습니다...ㄷㄷㄷ( 돌이켜보면 젊음이 참, 부러워집니다,)

 

패킹과 프로텍팅에 대해 글을 쓰다보니 많은 시간이 소요될 것 같아,세상에 널려 있는 남의글을 잠시 빌려오겠습니다.

 

패커와 프로텍터의 차이점

 

패커

패커란 실행 파일 압축기를 말 한다. 정확한 명칭은 Run_Time 패커라고 한다. ‘실행 압축’ 이란 실행 파일에 실행 코드를 원본 형태로 두지 않고 압축을 한 것 이다. 그리고 압축해제 코드를 실행 파일에 같이 넣어 놓은 것 이다. 그래서 프로그램이 실행 될 때 먼저 압축해제 코드를 만나 원본 실행 코드 압축이 풀린 뒤 실행이 된다. 이러한 실행 압축을 만드는 것을 패킹이라고 한다

패커의 사용 목적은 다음과 같다.

 

  1. 실행 파일을 줄이고자 하는 목적
  2. PE 파일 내부의 코드와 소스를 감추기 위한 목적

 

 

프로텍터

프로텍터란 PE 파일(실행파일)을 리버싱으로부터 보호 하기 위한 프로그램 이다. 패커 처럼 실행 압축 할 뿐만 아니라 리버싱을 막기 위한 기법들이 추가 된다.

 

프로텍터의 사용 목적은 다음과 같다.

  1. 크래킹 방지
  2. 코드 및 리소스 방지

 

두 가지의 큰 차이점은 패커는 말 그대로 압축만을 할 뿐이고 프로텍터는 프로그램을 보호하기 위한 기법이 들어 간 것이다. 디버거를 종료 시킨다던지 불가능하게 한다 던지의 기법 등이 있다.

 

,,,,,,중략   참조:  https://lapislazull.tistory.com/81

 

패킹(실행 파일 압축)에 관한글 --위키백과

 

소프트웨어 개발자들이 실행 파일 압축을 사용하는 까닭은 많은데, 주로 소프트웨어의 기억 장치의 용량을 줄이는 것이 목적이다.

실행 압축 프로그램의 목적은 실행 코드를 압축하는 것이며 gzipzipBzip2와 같은 표준 데이터 압축 기능보다 더 나은 압축률을 보이고 있다.

CD-ROMDVD-ROM플로피 디스크와 같은 용량이 제한된 매체에 쓰이며, 인터넷의 경우 다운로드 시간을 줄이기 위해서 사용되기도 한다.

PE 포맷으로 되어 있는 실행 파일을 압축할 때의 한 가지 장점으로는 보안을 들 수 있다.

어떠한 프로그램 안의 데이터를 분석하는 프로그램을 사용하여 프로그래머가 짠 내용을 분석하지 못하게 막을 수 있다. 

한글 패치를 만들 때에도 이러한 프로그램이 이용되기도 한다.

압축된 실행 파일은 파일 시스템의 공간을 덜 차지하기 때문에 파일 시스템으로부터 데이터가 메모리에 전송되는 시간이 덜 걸린다.

한편, 실행 직후 데이터의 압축을 푸는 시간이 좀 걸릴 수 있다.

다만, 다양한 저장 매체의 속도는 평균적인 프로세서 속도를 따라잡지 못했기 때문에 저장 장치는 자주 병목 현상을 겪는다.

그러므로 압축된 실행 파일은 대부분의 시스템에서 더 빨리 실행될 것이다.

일부 대한민국 웹에서는 압축된 실행 파일을 실행할 때 비록 시스템 메모리를 더 잡아먹지만 속도가 빨라진 것을 바로 느낄 수 있다는 의견이 있던 반면, 그렇지 못하는 경우도 많다는 의견도 있었다. 현대의 데스크톱 컴퓨터에서 실행 파일이 비정상적으로 크지 않다면 눈치채기 쉽지 않기 때문에 실행 속도를 빠르게 하는 것이 실행 파일을 압축하는 주된 이유라고 볼 수는 없다.

실행 파일마다 압축 프로그램의 특성을 타는 경우가 있다. 이를테면, UPX로 압축한 실행 파일은 정상 동작하는 반면, ASPack로 압축한 실행 파일은 정상 동작하지 않는 경우가 있고 그 반대의 경우도 있다. 또 이러한 실행 파일 압축 프로그램은 라이브러리 파일도 압축할 수 있으며 이러한 라이브러리 파일도 특성을 탈 수 있다. 따라서 실행 압축을 하기 앞서 백업을 하는 것이 권장되며, 압축을 한 뒤에 적절한 테스트가 요구된다.

디스크의 실행 파일 이미지를 읽는 운영 체제에서(가상 메모리를 참조하라), 압축된 실행 파일은 이러한 작업의 효율성을 떨어트릴 수 있다. 압축 해제 작업은 메모리 블록을 할당하여 압축되지 않은 데이터를 유지한다. 사용 여부에 관계 없이, 함께 실행되고 있는 다른 응용 프로그램의 메모리 리소스를 차지하려 하면서, 실행 파일이 로드되는 한 계속 할당된다. 운영 체제가 스왑 파일을 사용한다면(보통 메모리 부족을 겪지 않기 위해 사용한다), 압축되지 않은 데이터는 단순히 사용하지 않는 데이터 블록을 버린 뒤 실행 파일 이미지로부터 다시 로드하지 않고 메모리의 남은 공간을 넓힌다. 보통 눈에 잘 띄지 않지만, 실행 파일이 동시에 한 번 이상 실행될 때 문제가 될 수 있다.(운영 체제는 이미 로드된 데이터 블록을 다시 사용할 수 없고, 데이터는 새로운 메모리 블록으로 압축이 풀어져야 하며, 사용하지 않는 경우 독립적으로 스웨핑 처리가 되어야 한다.)

또다른 단점으로는 정적 라이브러리 압축 해제 프로그램만 보이는 것처럼, 일부 유틸리티는 런타임 라이브러리 독립을 더 이상 확인하지 않는다는 것이다.

또한, 바이러스 검사 프로그램은 압축된 모든 실행 파일을 바이러스로 판단하는 경우가 있는데 압축 해제 부분이 바이러스에 대한 일부 문자열을 공유하기 때문이다. 요즘 나오는 대부분의 바이러스 검사 프로그램은 몇 가지 실행 압축 계층을 분석하여 내부에 있는 실제의 실행 파일을 검사할 수 있다.

실행 압축은 컴퓨터가 플로피 디스크, 용량이 적은 하드 드라이브가 쓰였을 시절에 많이 쓰였다. 컴퓨터가 같은 크기의 공간에 더 많은 소프트웨어를 담을 수 있게 해 주었고 압축 파일의 해제 과정이 필요 없다는 것이 장점이었다. 그러나 실행 압축은 컴퓨터의 기억 공간이 커짐에 따라 잘 쓰이지 않게 되었다.--( 이것은 진실이 아님..^^,,프로그램 개발자들이 모든 수단을 동원해서 실행파일에 패킹과 프로텍팅을 걸어놓아 크래커(?)들을 어렵게하는 진실 아시죠? 또한 언팩을 해야 한글화 작업도 가능하기 때문에 한글화를 위해 고생(?)하시는 분들껜 필수작업이겠죠)

 

잘 아시다시피,,,크래커들이 배포하는 키젠,패치 파일들은, 거의 패킹과 프로텍팅이 걸려 있어 바이러스 프로그램에 걸려듭니다,,,ㄷㄷㄷ

 

,,,,,,,,중략,,,,복사해오다 보니 글들이 산만한 점 양해바랍니다.

 

실행 압축 프로그램의 종류

엄청 많습니다..

도스용 실행 파일만 압축할 수 있는 프로그램:

  • apack
  • diet
  • lzexe – 마이크로컴퓨터에서 공식적으로 널리 쓰인 첫 실행 파일 압축 프로그램.
  • pklite
  • UPX
  • wwpack

ELF 파일을 압축할 수 있는 프로그램:

.......................

 

32비트가 대세이던 시절,,,필수 방문코스

 

https://www.exetools.com/compressors.htm

https://www.exetools.com/protectors.htm

https://forum.exetools.com/

https://tools.pediy.com/windows/packers.htm   : 중궈넘들 싸이트 ,,,중국게시판들이 가장 활발하게 운영(?)해 왔는데 이젠 거의 사멸의 과정을...

 

https://www.woodmann.com/fravia/projunpa.htm

https://www.woodmann.com/forum/activity.php?s=156903bb7f5553d400a81016a4bab9c3

https://www.woodmann.com/crackz/index.html

기타등등 ...거의 존재가 희미해져 갑니다..

 

--------------------------------------------------------------------------

패킹과 프로텍팅 분석프로그램 

https://exeinfo.atwebpages.com/

 

Exeinfo PE 는 A.S.L 이 만든 소프트웨어이며,  PEiD 와 같은 분석 툴이며, 실행 후 드래그&드롭 으로 간편하게 해당 프로그램이 어느 언어로 컴파일 되었는지, 또 패킹, 크립팅, 프로텍팅 여부와 어느 툴에 의해 패킹되었는지 볼 수 있다.

 

PEiD 도 유명한 편이지만 ExeInfo PE 가 PEiD 보다 볼 수 있는 정보가 많다.업그레이드가 최근까지 진행,,,

기타 많은 분석툴이 있지만 오늘은 여기까지...

---------------------------------------------------------------------------

https://x64dbg.com/#start   : 64비트용 디버거

============================================================================

 

변질(?)우려가 있는 파일작업할때 제가 가장 많이 사용하는 패커는 UPX입니다,,( 왜요? 공짜라서,,^^,,)

 

UPX Shell 3.4.2 - 실행 파일 압축 프로그램 UPX를 간편하게 사용하자

https://circlash.tistory.com/160    포터블버젼 포함

 

-----------------------------------------------------------------------------

 

짧은 시간에 글을 올리려다 보니, 여기저기 난장으로 빌려오는 바람에 부실한점 양해바랍니다.

 

조금이라도 도움이 되시길 바랄뿐,,,

 

 

 

첨부파일:  악성코드 분석을위한“실행압축”해제기법 pdf파일

마지막에 oPEN rEVERSE fORUMS 이 소개되어 미소를 지어봅니다.

 

 

 

 

번호 제목 글쓴이 조회 추천 등록일
[공지] 사용기/설치기 이용안내 gooddew - - -
4699 기 타| MDS님_x64뼈대_RS2_x64_10PE_x64_겸용(2017.7.30) [164] 첨임다 2068 16 07-25
4698 윈 도 우| HKBoot Final3.1의 W8x86L1PE에 Drivergenius에러 추가파일 [66] 선우 952 11 07-24
4697 윈 도 우| 집앞의_큰나무 님의 HKBoot Final3.1.iso 사용기 [95] John316 1230 10 07-24
4696 기 타| (효과 없습니다!) 읽기속성 파일은 렌셈웨어에 걸리지 않는... [28] 왕초보 1754 6 07-23
4695 윈 도 우| 왕초보님 감사합니다. 백업복원 마무리후기 [15] 서기다 1052 7 07-23
4694 윈 도 우| 첨임다님의 Win7x64_U_FSMG_All [52] 강치 1596 9 07-22
4693 기 타| 서기다님 Snapshot 버전 2개입니다... [26] 왕초보 1899 15 07-21
4692 윈 도 우| 컴맹 동생 주려고 만들어봤습니다. [52] 서기다 2674 15 07-21
4691 기 타| RaiDrive를 활용하여 고객정보를 백업하여 보았습니다... [10] 왕초보 1120 4 07-21
4690 윈 도 우| 갑파니님 Win10 RS2 Pro All 제거 업데이트 문제로 수정하... [11] CrazyHoONi 659 3 07-20
4689 윈 도 우| 순간복구&배치파일 질문에대한 후기입니다. [21] 김딘이 896 3 07-20
4688 기 타| RS2_15063_483_x86_x64_10PE_x64_10586_164겸용(2017.7.20) [99] 첨임다 2924 14 07-20
4687 보안 / 해킹| ESET NOD32 Antivirus 초스피드 사용기 [5] 이세라 1372 2 07-19
4686 윈 도 우| 뽜이론 님의 복구iso FUZZ Rescue 부팅 체험기 [36] 선우 803 11 07-19
4685 윈 도 우| 윈도7 에 usb3.0과 NVMe 드라이버 통합하기 - RSImageX 사용 [20] suk 3054 14 07-18
4684 모 바 일| pooq - 실시간 공중파 TV 무료 시청앱 [9] asklee 3106 3 07-18
4683 기 타| [종료] BOX 클라우드에 이메일로 고객정보를 백업하여 보았... [3] 왕초보 677 2 07-16
4682 기 타| FTP(유료),이메일(무료)로 업로드 가능한 BOX 클라우드가 ... [5] 왕초보 1479 6 07-15
4681 기 타| 구글드라이브에 cmd 명령으로 고객정보를 백업하여 보았습... [6] 왕초보 1165 4 07-14
4680 윈 도 우| Win10PE_RS2_x64_Admin 체험기? 사용기? [12] sikey 1583 5 07-14
XE1.11.6 Layout1.4.8