2. Reversing (리버싱)/2) 개념 정리 (10) 썸네일형 리스트형 [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 레지스터 값들을 모두.. [2020.04.07] 리버싱 개념정리 - PEid EPsection과 DLL, IAT정보 PEid로 EPsection을 확인해보면, .text로 된 부분이 있다. 이 부분에 대해 알아보도록 하자 먼저, 간단히 설명하자면 PE파일에서 섹션을 이루는 부분이 있는데 .text라는 것은 그중에 실행코드를 담고 있는 부분이다 위의 설명에서 보면, .text섹션은 IAT 정보를 담고 있는 부분이라고 한다. IAT 정보가 무엇인지 알아보기에 앞서, DLL파일부터 파악할 필요가 있다. 과거 16비트 DOS를 사용하던 시절에는 DLL개념이 없고 라이브러리만 존재했다. 예를 들어 printf()함수를 사용할 때 컴파일러가 이 함수의 바이너리 코드를 라이브러리에서 그대로 가져와서 바로 프로그램에 삽입하는 형태였는데, 그러나 32비트 윈도우 환경을 사용하는 경우에는 매우 많은 라이브러리를 사용해야 하므로 이러한 .. 이전 1 2 다음