본문 바로가기

2. Reversing (리버싱)/2) 개념 정리

[2020.04.14] Reversing.kr | AutoHotkey1 개념 정리

http://reversing.kr의 AutoHotkey1,2 문제를 푸는 도중

UPX 패킹과 관련된 부분이 나와서 UPX 패킹에 대해 개념 정리를 해보기로 했다.

 

UPX 패킹?

패킹은 "실행 압축"이라고 표현할 수 있다.

실행 파일 내부에 있는 코드를 압축하여 평소에는 코드를 압축한 상태로 저장하고 있다가

파일을 실행하면 메모리에서 압축을 해제 시킨 후 파일을 실행시키는 기술이다.

 

PE, UPX 프로그램 패킹의 흐름

UPX 패킹 확인

Exeinfo PE 툴로 UPX 패킹이 됐는지 확인할 수 있다.

 

UPX 패킹

upx -o "생성될 패킹 파일 경로" "패킹에 사용할 파일 경로"

 

UPX 언패킹

upx -d "언패킹 할 파일"

 

UPX 패킹 파일 Ollydbg 분석

PUSHAD : CPU 레지스터 값들을 모두 스택에 넣는 명령어

 

POPAD: 반대로 스택에 넣은 값들을 모두 CPU 레지스터로 복귀시키는 명령어

참고 자료 :
 

UPX 패킹 / 언패킹 방법

패킹이란...? 패킹은 "실행 압축"이라고 표현할 수 있다. 실행 파일 내부에 있는 코드를 압축하여 평소에는 코드를 압축한 상태로 저장하고 있다가 파일을 실행하면 메모리에서 압축을 해제 시킨 후 파일을 실행시..

easy7.tistory.com

 

 

패커 분석 - UPX, PE 파일 구조

패커 분석  - UPX, PE 파일 구조 많은 패커들은 암호화된 코드를 복호화하고 초기 스택 주소로 되돌아 오는 특성을 가지고 있다(패커에서 만들었다기보다는 함수 호출 전 ESP 레지스터를

asecurity.dev

 

 

[안티디버깅] UPX packer 이해

실행압축 실행압축이란 실행가능 한 파일(PE파일)을 대상으로 파일 압축을 하지만, 파일 내에 압축해제 코드를 포함 하고 있어서 실행되는 순간 메모리에서 압축을 해제시킨 후 실행을 시키는 기술 압축해제 루틴..

lapislazull.tistory.com